Method: Bitcoin::ScriptWitness.parse_from_payload

Defined in:
lib/bitcoin/script_witness.rb

.parse_from_payload(payload) ⇒ Object



12
13
14
15
16
17
18
19
20
# File 'lib/bitcoin/script_witness.rb', line 12

def self.parse_from_payload(payload)
  buf = payload.is_a?(StringIO) ? payload : StringIO.new(payload)
  return self.new if buf.eof?
  size = Bitcoin.unpack_var_int_from_io(buf)
  stack = size.times.map do
    buf.read(Bitcoin.unpack_var_int_from_io(buf))
  end
  self.new(stack)
end