Chapter 4

  1.  class​ Lax < Enumerator
     # previously defined methods go here
     
     def​ select(&block)
      Lax.new(self) ​do​ |yielder, val|
      yielder << val ​if​ block.call(val)
     end
     end
     
     end
  2. This one is slightly more challenging, but resembles Lax#take:

     class​ Lax < Enumerator
     
     # previously defined methods go here
     
     def​ drop(n)
      dropped = 0
      Lax.new(self) ​do​ |yielder, val|
     if​ dropped < n
      dropped += 1
     else
      yielder << val
     end
     end
     end
     
     end
..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
3.139.97.202