Class: Stream::WrappedStream
- Inherits:
-
BasicStream
- Object
- BasicStream
- Stream::WrappedStream
- Defined in:
- lib/stream.rb
Overview
Class WrappedStream is the abstract superclass for stream classes that wrap another stream. The basic methods are simple delegated to the wrapped stream. Thus creating a WrappedStream on a CollectionStream would yield an equivalent stream:
arrayStream = [1,2,3].create_stream
arrayStream.to_a => [1,2,3]
Stream::WrappedStream.new(arrayStream).to_a => [1,2,3]
Direct Known Subclasses
ConcatenatedStream, FilteredStream, MappedStream, ReversedStream
Instance Attribute Summary collapse
-
#wrapped_stream ⇒ Object
readonly
Returns the value of attribute wrapped_stream.
Instance Method Summary collapse
- #at_beginning? ⇒ Boolean
- #at_end? ⇒ Boolean
- #basic_backward ⇒ Object
- #basic_forward ⇒ Object
-
#initialize(other_stream) ⇒ WrappedStream
constructor
Create a new WrappedStream wrapping the Stream other_stream.
- #set_to_begin ⇒ Object
- #set_to_end ⇒ Object
-
#unwrapped ⇒ Object
Returns the wrapped stream unwrapped.
Methods included from Stream
#+, #backward, #collect, #concatenate, #concatenate_collected, #create_stream, #current, #current_edge, #each, #empty?, #filtered, #first, #forward, #last, #modify, #move_backward_until, #move_forward_until, #peek, #remove_first, #remove_last, #reverse
Methods included from Enumerable
Constructor Details
#initialize(other_stream) ⇒ WrappedStream
Create a new WrappedStream wrapping the Stream other_stream.
304 305 306 |
# File 'lib/stream.rb', line 304 def initialize(other_stream) @wrapped_stream = other_stream end |
Instance Attribute Details
#wrapped_stream ⇒ Object (readonly)
Returns the value of attribute wrapped_stream.
301 302 303 |
# File 'lib/stream.rb', line 301 def wrapped_stream @wrapped_stream end |
Instance Method Details
#at_beginning? ⇒ Boolean
308 309 310 |
# File 'lib/stream.rb', line 308 def at_beginning? @wrapped_stream.at_beginning? end |
#at_end? ⇒ Boolean
312 313 314 |
# File 'lib/stream.rb', line 312 def at_end? @wrapped_stream.at_end? end |
#basic_backward ⇒ Object
333 334 335 |
# File 'lib/stream.rb', line 333 def basic_backward @wrapped_stream.basic_backward end |
#basic_forward ⇒ Object
329 330 331 |
# File 'lib/stream.rb', line 329 def basic_forward @wrapped_stream.basic_forward end |
#set_to_begin ⇒ Object
320 321 322 |
# File 'lib/stream.rb', line 320 def set_to_begin @wrapped_stream.set_to_begin end |
#set_to_end ⇒ Object
316 317 318 |
# File 'lib/stream.rb', line 316 def set_to_end @wrapped_stream.set_to_end end |
#unwrapped ⇒ Object
Returns the wrapped stream unwrapped.
325 326 327 |
# File 'lib/stream.rb', line 325 def unwrapped @wrapped_stream.unwrapped end |