我的理解是,必须生成一个隐式附加到方法的块;它不能被调用。所以我试图理解为什么会这样:
def execute_code
proc.call
end
execute_code { "Why does this work?" } # => "Why does this work?"
Run Code Online (Sandbox Code Playgroud)
将块附加到此代码会成功执行。
任何见解?我没有发现任何文档暗示隐式块会自动转换为 proc 对象并分配给变量proc。
红宝石 2.5.3