Linux heracles.o2switch.net 4.18.0-553.62.1.lve.el8.x86_64 #1 SMP Mon Jul 21 17:50:35 UTC 2025 x86_64
/
opt
/
alt
/
ruby27
/
share
/
ri
/
system
/
Enumerator
/
//opt/alt/ruby27/share/ri/system/Enumerator/new-c.ri
U:RDoc::AnyMethod[iI"new:ETI"Enumerator::new;TT:privateo:RDoc::Markup::Document:@parts[o:RDoc::Markup::Paragraph; [I">Creates a new Enumerator object, which can be used as an ;TI"Enumerable.;To:RDoc::Markup::BlankLine o; ; [I"DIn the first form, iteration is defined by the given block, in ;TI"Hwhich a "yielder" object, given as block parameter, can be used to ;TI"Nyield a value by calling the +yield+ method (aliased as <code><<</code>):;T@o:RDoc::Markup::Verbatim; [I"!fib = Enumerator.new do |y| ;TI" a = b = 1 ;TI" loop do ;TI" y << a ;TI" a, b = b, a + b ;TI" end ;TI" end ;TI" ;TI":fib.take(10) # => [1, 1, 2, 3, 5, 8, 13, 21, 34, 55] ;T:@format0o; ; [I"MThe optional parameter can be used to specify how to calculate the size ;TI"Jin a lazy fashion (see Enumerator#size). It can either be a value or ;TI"a callable object.;T@o; ; [I"MIn the deprecated second form, a generated Enumerator iterates over the ;TI"Igiven object using the given method with the given arguments passed.;T@o; ; [I"MUse of this form is discouraged. Use Object#enum_for or Object#to_enum ;TI" instead.;T@o;; [ I"3e = Enumerator.new(ObjectSpace, :each_object) ;TI"0 #-> ObjectSpace.enum_for(:each_object) ;TI" ;TI"Ce.select { |obj| obj.is_a?(Class) } # => array of all classes;T; 0: @fileI"enumerator.c;T:0@omit_headings_from_table_of_contents_below0I"]Enumerator.new(size = nil) { |yielder| ... } Enumerator.new(obj, method = :each, *args) ;T0[ I"(*args);T@3FI"Enumerator;TcRDoc::NormalClass00