4 "github.com/vapor/protocol/bc"
18 // SpendInput satisfies the TypedInput interface and represents a spend transaction.
19 type SpendInput struct {
20 SpendCommitmentSuffix []byte // The unconsumed suffix of the output commitment
21 Arguments [][]byte // Witness
25 // NewSpendInput create a new SpendInput struct.
26 func NewSpendInput(arguments [][]byte, sourceID bc.Hash, assetID bc.AssetID, amount, sourcePos uint64, controlProgram []byte) *TxInput {
27 sc := SpendCommitment{
28 AssetAmount: bc.AssetAmount{
33 SourcePosition: sourcePos,
35 ControlProgram: controlProgram,
39 TypedInput: &SpendInput{
46 // InputType is the interface function for return the input type.
47 func (si *SpendInput) InputType() uint8 { return SpendInputType }