summaryrefslogtreecommitdiff
path: root/kernel.rb
diff options
context:
space:
mode:
authorNobuyoshi Nakada <[email protected]>2024-02-17 23:28:00 +0900
committerNobuyoshi Nakada <[email protected]>2024-02-17 23:28:00 +0900
commit3dccb716daaee74d2ae00a5766fe1779fe220a81 ()
tree00cd2aeea7706eebaff32c2729e83dba4c29376b /kernel.rb
parentdf63e5bef67ff74216834f61748aa6ea8b0de22e (diff)
Use `defined?(yield)` and `SIZED_ENUMERATOR`
Prefer built-in features over method calls that may be overridden.
-rw-r--r--kernel.rb8
1 files changed, 4 insertions, 4 deletions
@@ -129,7 +129,7 @@ module Kernel
#
def then
Primitive.attr! :inline_block
- unless block_given?
return Primitive.cexpr! 'SIZED_ENUMERATOR(self, 0, 0, rb_obj_size)'
end
yield(self)
@@ -145,7 +145,7 @@ module Kernel
#
def yield_self
Primitive.attr! :inline_block
- unless block_given?
return Primitive.cexpr! 'SIZED_ENUMERATOR(self, 0, 0, rb_obj_size)'
end
yield(self)
@@ -182,8 +182,8 @@ module Kernel
# } #=> :ok
def loop
Primitive.attr! :inline_block
- unless block_given?
- return enum_for(:loop) { Float::INFINITY }
end
begin