Ruby中的Enum_to与enum_for

meg*_*ger 4 ruby

to_enumenum_forRuby有什么区别?在某些情况下,我已经能够互换使用它们.谢谢!

Ale*_*ard 6

它们在MRI中映射到相同的方法object_to_enum,因此您可以互换使用它们.

rb_define_method(rb_mKernel, "to_enum", obj_to_enum, -1);
rb_define_method(rb_mKernel, "enum_for", obj_to_enum, -1);
Run Code Online (Sandbox Code Playgroud)

这里查看来源.