class SMF::Sequence::WS::PO

Public Class Methods

new() click to toggle source

def initialize() @str = '' end

# File lib/smf/io.rb, line 295
def initialize() @arr = [] end
s2u(s, w) click to toggle source
# File lib/smf/io.rb, line 292
def self.s2u(s, w) s += 2**w if s < 0; s end

Public Instance Methods

putc(c) click to toggle source
# File lib/smf/io.rb, line 303
def putc(c) @arr << c.chr end
puti(n, u) click to toggle source
# File lib/smf/io.rb, line 334
def puti(n, u)
  n.times do |i|
    putc((u >> (n - i - 1) * 8) & 0xff)
  end
end
puti16(u) click to toggle source
# File lib/smf/io.rb, line 340
def puti16(u) puti(2, u) end
puti24(u) click to toggle source
# File lib/smf/io.rb, line 341
def puti24(u) puti(3, u) end
puti32(u) click to toggle source
# File lib/smf/io.rb, line 342
def puti32(u) puti(4, u) end
putl(v) click to toggle source
# File lib/smf/io.rb, line 305
def putl(v)
  s = ''
  begin
    s << (v & 0x7f | 0x80)
    v >>= 7
  end until v.zero?
  s[0] &= 0x7f
  s.reverse!
  puts(s)
end
puts(s) click to toggle source
# File lib/smf/io.rb, line 302
def puts(s) @arr << s     end
to_s() click to toggle source

def to_s() @str.dup end

# File lib/smf/io.rb, line 345
def to_s() @arr.join end