5

Enumerator::Lazy オブジェクトがあります

a = [1,2,3].lazy.map {} #=> <Enumerator::Lazy: #<Enumerator::Lazy: [1, 2, 3]>:map>
a.size #=> 3
a.clone.size #=> nil

誰かがそのような行動の正しい説明を持っていますか? 列挙子のサイズをsize返すか、遅延計算できない場合は nil を返します。オブジェクトを複製すると、それが返されます

a.clone #=> <Enumerator::Lazy:<Enumerator::Generator:0x00007fdaa80218d8>:each>
4

1 に答える 1