module Tapyrus::Message::HeadersParser
Common message parser which handle multiple block headers as a payload.
Public Instance Methods
parse_from_payload(payload)
click to toggle source
# File lib/tapyrus/message/headers_parser.rb, line 5 def parse_from_payload(payload) ver, payload = payload.unpack('Va*') size, payload = Tapyrus.unpack_var_int(payload) hashes = [] buf = StringIO.new(payload) size.times { hashes << buf.read(32).bth } new(ver, hashes, buf.read(32).bth) end
to_payload()
click to toggle source
# File lib/tapyrus/message/headers_parser.rb, line 14 def to_payload [version].pack('V') << Tapyrus.pack_var_int(hashes.length) << hashes.map { |h| h.htb }.join << stop_hash.htb end