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.
529 530 531 |
# File 'lib/bitcoin/builder.rb', line 529 def initialize @txout = P::TxOut.new(0) end |
Instance Attribute Details
#txout ⇒ Object (readonly)
Returns the value of attribute txout.
527 528 529 |
# File 'lib/bitcoin/builder.rb', line 527 def txout @txout end |
Instance Method Details
#script {|c| ... } ⇒ Object
Add a script to the output (see ScriptBuilder).
546 547 548 549 550 551 |
# File 'lib/bitcoin/builder.rb', line 546 def script c = ScriptBuilder.new yield c @txout.pk_script = c.script @txout.redeem_script = c.redeem_script end |
#to(recipient, type = :address) ⇒ Object
Set recipient address and script type (defaults to :address).
539 540 541 542 543 |
# File 'lib/bitcoin/builder.rb', line 539 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”)
534 535 536 |
# File 'lib/bitcoin/builder.rb', line 534 def value(value) @txout.value = value end |