私はコードをもっている
class A < BasicObject
def initialize var1, *args, &block
if var1 == :lambda
@var1 = lambda &block
end
end
end
a = A.new :lambda, 123 do |var|
puts "ha ha ha"
end
なぜエラーが発生するのですか?
undefined method `lambda' for #<A:0x00000001687968> (NoMethodError)
これとは異なり(それはそれを引き起こしません)
class A
def initialize var1, *args, &block
if var1 == :lambda
@var1 = lambda &block
end
end
end