Replaced legacy `*.orly` module imports with `next.orly.dev/pkg` paths across the codebase for consistency. Removed legacy `go.mod` files from sub-packages, consolidating dependency management. Added Dockerfiles and configurations for benchmarking environments.
44 lines
1.0 KiB
Go
44 lines
1.0 KiB
Go
package wire
|
|
|
|
import (
|
|
"next.orly.dev/pkg/crypto/ec/chainhash"
|
|
)
|
|
|
|
// OutPoint defines a bitcoin data type that is used to track previous
|
|
// transaction outputs.
|
|
type OutPoint struct {
|
|
Hash chainhash.Hash
|
|
Index uint32
|
|
}
|
|
|
|
// TxWitness defines the witness for a TxIn. A witness is to be interpreted as
|
|
// a slice of byte slices, or a stack with one or many elements.
|
|
type TxWitness [][]byte
|
|
|
|
// TxIn defines a bitcoin transaction input.
|
|
type TxIn struct {
|
|
PreviousOutPoint OutPoint
|
|
SignatureScript []byte
|
|
Witness TxWitness
|
|
Sequence uint32
|
|
}
|
|
|
|
// TxOut defines a bitcoin transaction output.
|
|
type TxOut struct {
|
|
Value int64
|
|
PkScript []byte
|
|
}
|
|
|
|
// MsgTx implements the Message interface and represents a bitcoin tx message.
|
|
// It is used to deliver transaction information in response to a getdata
|
|
// message (MsgGetData) for a given transaction.
|
|
//
|
|
// Use the AddTxIn and AddTxOut functions to build up the list of transaction
|
|
// inputs and outputs.
|
|
type MsgTx struct {
|
|
Version int32
|
|
TxIn []*TxIn
|
|
TxOut []*TxOut
|
|
LockTime uint32
|
|
}
|