class PostgresPR::Parse
Public Class Methods
new(query, stmt_name="", parameter_oids=[])
click to toggle source
# File lib/postgres-pr/message.rb, line 389 def initialize(query, stmt_name="", parameter_oids=[]) @query, @stmt_name, @parameter_oids = query, stmt_name, parameter_oids end
Public Instance Methods
dump()
click to toggle source
Calls superclass method
PostgresPR::Message::dump
# File lib/postgres-pr/message.rb, line 393 def dump sz = @stmt_name.size + 1 + @query.size + 1 + 2 + (4 * @parameter_oids.size) super(sz) do |buffer| buffer.write_cstring(@stmt_name) buffer.write_cstring(@query) buffer.write_int16_network(@parameter_oids.size) @parameter_oids.each {|oid| buffer.write_int32_network(oid) } end end
parse(buffer)
click to toggle source
Calls superclass method
PostgresPR::Message#parse
# File lib/postgres-pr/message.rb, line 403 def parse(buffer) super do @stmt_name = buffer.read_cstring @query = buffer.read_cstring n_oids = buffer.read_int16_network @parameter_oids = (1..n_oids).collect { # TODO: zero means unspecified. map to nil? buffer.read_int32_network } end end