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.
445 446 447 |
# File 'lib/bitcoin/builder.rb', line 445 def initialize @txout = P::TxOut.new(0) end |
Instance Attribute Details
#txout ⇒ Object (readonly)
Returns the value of attribute txout.
443 444 445 |
# File 'lib/bitcoin/builder.rb', line 443 def txout @txout end |
Instance Method Details
#script {|c| ... } ⇒ Object
Add a script to the output (see ScriptBuilder).
460 461 462 463 464 |
# File 'lib/bitcoin/builder.rb', line 460 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).
455 456 457 |
# File 'lib/bitcoin/builder.rb', line 455 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”)
450 451 452 |
# File 'lib/bitcoin/builder.rb', line 450 def value value @txout.value = value end |