class PostgresPR::DataRow

Public Instance Methods

dump() click to toggle source
Calls superclass method PostgresPR::Message::dump
# File lib/postgres-pr/message.rb, line 282
def dump
  sz = @columns.inject(2) {|sum, col| sum + 4 + (col ? col.size : 0)}
  super(sz) do |buffer|
    buffer.write_int16_network(@columns.size)
    @columns.each {|col|
      buffer.write_int32_network(col ? col.size : -1)
      buffer.write(col) if col
    }
  end
end
parse(buffer) click to toggle source
Calls superclass method PostgresPR::Message#parse
# File lib/postgres-pr/message.rb, line 293
def parse(buffer)
  super do
    n_cols = buffer.read_int16_network
    @columns = (1..n_cols).collect {
      len = buffer.read_int32_network 
      if len == -1
        nil
      else
        buffer.read(len)
      end
    }
  end
end