Method: BinData::IO::Write#initialize

Defined in:
lib/bindata/io.rb

#initialize(io) ⇒ Write

Returns a new instance of Write.



184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
# File 'lib/bindata/io.rb', line 184

def initialize(io)
  if self.class === io
    raise ArgumentError, "io must not be a #{self.class}"
  end

  # wrap strings in a StringIO
  if io.respond_to?(:to_str)
    io = BinData::IO.create_string_io(io.to_str)
  end

  @io = RawIO.new(io)

  @wnbits  = 0
  @wval    = 0
  @wendian = nil
end