Class: Bitcoin::Builder::TxOutBuilder
- Inherits:
-
Object
- Object
- Bitcoin::Builder::TxOutBuilder
- Defined in:
- lib/bitcoin/builder.rb
Overview
Create a Bitcoin::Protocol::TxOut used by TxBuilder#output.
t.output 12345, address
t.output 12345, p2sh_address, :script_hash
t.output {|o| o.value 12345; o.to address }
t.output do |o|
o.value 12345
o.script {|s| s.recipient address }
end
t.output {|o| o.to "deadbeef", :op_return }
Instance Attribute Summary collapse
-
#txout ⇒ Object
readonly
Returns the value of attribute txout.
Instance Method Summary collapse
-
#initialize ⇒ TxOutBuilder
constructor
A new instance of TxOutBuilder.
-
#script {|c| ... } ⇒ Object
Add a script to the output (see ScriptBuilder).
-
#to(recipient, type = :address) ⇒ Object
Set recipient address and script type (defaults to :address).
-
#value(value) ⇒ Object
Set output value (in base units / “satoshis”).
Constructor Details
#initialize ⇒ TxOutBuilder
Returns a new instance of TxOutBuilder.
470 471 472 |
# File 'lib/bitcoin/builder.rb', line 470 def initialize @txout = P::TxOut.new(0) end |
Instance Attribute Details
#txout ⇒ Object (readonly)
Returns the value of attribute txout.
468 469 470 |
# File 'lib/bitcoin/builder.rb', line 468 def txout @txout end |
Instance Method Details
#script {|c| ... } ⇒ Object
Add a script to the output (see ScriptBuilder).
485 486 487 488 489 |
# File 'lib/bitcoin/builder.rb', line 485 def script &block c = ScriptBuilder.new yield c @txout.pk_script, @txout.redeem_script = c.script, c.redeem_script end |
#to(recipient, type = :address) ⇒ Object
Set recipient address and script type (defaults to :address).
480 481 482 |
# File 'lib/bitcoin/builder.rb', line 480 def to recipient, type = :address @txout.pk_script, @txout.redeem_script = *Bitcoin::Script.send("to_#{type}_script", *recipient) end |
#value(value) ⇒ Object
Set output value (in base units / “satoshis”)
475 476 477 |
# File 'lib/bitcoin/builder.rb', line 475 def value value @txout.value = value end |