package transaction
- Alphabetic
- Public
- Protected
Type Members
- case class BaseTransaction(version: Int32, inputs: Vector[TransactionInput], outputs: Vector[TransactionOutput], lockTime: UInt32) extends NonWitnessTransaction with Product with Serializable
- sealed abstract class CoinbaseInput extends TransactionInput
This represents a coinbase input - these always have a EmptyTransactionOutPoint and arbitrary data inside the script signature
- case class EmptyWitness(witnesses: Vector[EmptyScriptWitness.type]) extends TransactionWitness with Product with Serializable
Each input (even if it does not spend a segwit output) needs to have a witness associated with it in a WitnessTransaction.
Each input (even if it does not spend a segwit output) needs to have a witness associated with it in a WitnessTransaction. This helper case class is used to "fill in" EmptyScriptWitness for the inputs that do not spend a WitnessScriptPubKeyV0
- See also
https://github.com/bitcoin/bips/blob/master/bip-0141.mediawiki#specification
- sealed abstract class NonWitnessTransaction extends Transaction
- case class OutputReference(outPoint: TransactionOutPoint, output: TransactionOutput) extends NetworkElement with Product with Serializable
Represents a generic on-chain output
- case class OutputWithIndex(output: TransactionOutput, index: Int) extends Product with Serializable
- sealed abstract class Transaction extends NetworkElement
Created by chris on 7/14/15.
- trait TransactionConstants extends AnyRef
Created by chris on 2/12/16.
- sealed trait TransactionFactoryHelper extends AnyRef
Created by chris on 2/21/16.
- sealed abstract class TransactionInput extends NetworkElement
Created by chris on 12/26/15.
Created by chris on 12/26/15. Algebraic data type that represents a transaction input
- case class TransactionOutPoint(txId: DoubleSha256Digest, vout: UInt32) extends NetworkElement with Product with Serializable
- txId
The transaction id for the crediting transaction for this input
- vout
The output index in the parent transaction for the output we are spending
- case class TransactionOutput(value: CurrencyUnit, scriptPubKey: ScriptPubKey) extends NetworkElement with Product with Serializable
- sealed abstract class TransactionWitness extends SeqWrapper[ScriptWitness] with NetworkElement
Created by chris on 11/21/16.
Created by chris on 11/21/16. The witness data for ScriptSignature in this transaction https://github.com/bitcoin/bitcoin/blob/b4e4ba475a5679e09f279aaf2a83dcf93c632bdb/src/primitives/transaction.h#L232-L268
- case class UpdateTransactionInputs(inputs: Seq[TransactionInput]) extends TransactionFactoryHelper with Product with Serializable
- case class UpdateTransactionOutputs(outputs: Seq[TransactionOutput]) extends TransactionFactoryHelper with Product with Serializable
- case class WitnessTransaction(version: Int32, inputs: Vector[TransactionInput], outputs: Vector[TransactionOutput], lockTime: UInt32, witness: TransactionWitness) extends Transaction with Product with Serializable
Value Members
- object BaseTransaction extends Factory[BaseTransaction] with Serializable
- object CoinbaseInput
- object EmptyOutputReference extends OutputReference
- case object EmptyTransaction extends NonWitnessTransaction with Product with Serializable
- case object EmptyTransactionInput extends TransactionInput with Product with Serializable
- object EmptyTransactionOutPoint extends TransactionOutPoint
UInt32s cannot hold negative numbers, but sometimes the Bitcoin Protocol requires the vout to be -1, which is serialized as
0xFFFFFFFF
.UInt32s cannot hold negative numbers, but sometimes the Bitcoin Protocol requires the vout to be -1, which is serialized as
0xFFFFFFFF
.- See also
http://stackoverflow.com/questions/2711522/what-happens-if-i-assign-a-negative-value-to-an-unsigned-variable
- object EmptyTransactionOutput extends TransactionOutput
- object EmptyWitness extends Serializable
- object InputUtil
- object OutputReference extends Factory[OutputReference] with Serializable
- object Transaction extends Factory[Transaction]
- object TransactionConstants extends TransactionConstants
- object TransactionInput extends Factory[TransactionInput]
- object TransactionOutPoint extends Factory[TransactionOutPoint] with StringFactory[TransactionOutPoint] with Serializable
- object TransactionOutput extends Factory[TransactionOutput] with Serializable
- object TransactionWitness
- object TxUtil
- object WitnessTransaction extends Factory[WitnessTransaction] with Serializable