/(?<foo>foo)/ =~ bar ^^^^^^^^^^^^^^^^^^^^
class << self; end ^^^^^^^^^^^^^^^^^^
foo.bar, = 1 ^^^^^^^
If a class variable is written within a method definition, it has a different type than everywhere else.
/(?<foo>foo)/ =~ bar ^^^^^^^^^^^^^^^^^^^^
class << self; end ^^^^^^^^^^^^^^^^^^
Same as Enumerator#with_index(0)
, i.e. there is no starting offset.
If no block is given, a new Enumerator
is returned that includes the index.
Iterates the given block for each element with an arbitrary object, obj
, and returns obj
If no block is given, returns a new Enumerator
.
to_three = Enumerator.new do |y| 3.times do |x| y << x end end to_three_with_string = to_three.with_object("foo") to_three_with_string.each do |x,string| puts "#{string}: #{x}" end # => foo: 0 # => foo: 1 # => foo: 2