ledger

package
v0.88.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jun 12, 2024 License: Apache-2.0 Imports: 18 Imported by: 11

Documentation

Index

Constants

View Source
const (
	AddressHeaderTypeMask    = 0xF0
	AddressHeaderNetworkMask = 0x0F
	AddressHashSize          = 28

	AddressNetworkTestnet = 0
	AddressNetworkMainnet = 1

	AddressTypeKeyKey        = 0b0000
	AddressTypeScriptKey     = 0b0001
	AddressTypeKeyScript     = 0b0010
	AddressTypeScriptScript  = 0b0011
	AddressTypeKeyPointer    = 0b0100
	AddressTypeScriptPointer = 0b0101
	AddressTypeKeyNone       = 0b0110
	AddressTypeScriptNone    = 0b0111
	AddressTypeByron         = 0b1000
	AddressTypeNoneKey       = 0b1110
	AddressTypeNoneScript    = 0b1111
)
View Source
const (
	EraIdAllegra = 2

	BlockTypeAllegra = 3

	BlockHeaderTypeAllegra = 2

	TxTypeAllegra = 2
)
View Source
const (
	EraIdAlonzo = 4

	BlockTypeAlonzo = 5

	BlockHeaderTypeAlonzo = 4

	TxTypeAlonzo = 4
)
View Source
const (
	EraIdBabbage = 5

	BlockTypeBabbage = 6

	BlockHeaderTypeBabbage = 5

	TxTypeBabbage = 5
)
View Source
const (
	DatumOptionTypeHash = 0
	DatumOptionTypeData = 1
)
View Source
const (
	EraIdByron = 0

	BlockTypeByronEbb  = 0
	BlockTypeByronMain = 1

	BlockHeaderTypeByron = 0

	TxTypeByron = 0

	ByronSlotsPerEpoch = 21600
)
View Source
const (
	CertificateTypeStakeRegistration               = 0
	CertificateTypeStakeDeregistration             = 1
	CertificateTypeStakeDelegation                 = 2
	CertificateTypePoolRegistration                = 3
	CertificateTypePoolRetirement                  = 4
	CertificateTypeGenesisKeyDelegation            = 5
	CertificateTypeMoveInstantaneousRewards        = 6
	CertificateTypeRegistration                    = 7
	CertificateTypeDeregistration                  = 8
	CertificateTypeVoteDelegation                  = 9
	CertificateTypeStakeVoteDelegation             = 10
	CertificateTypeStakeRegistrationDelegation     = 11
	CertificateTypeVoteRegistrationDelegation      = 12
	CertificateTypeStakeVoteRegistrationDelegation = 13
	CertificateTypeAuthCommitteeHot                = 14
	CertificateTypeResignCommitteeCold             = 15
	CertificateTypeRegistrationDrep                = 16
	CertificateTypeDeregistrationDrep              = 17
	CertificateTypeUpdateDrep                      = 18
)
View Source
const (
	DrepTypeAddrKeyHash  = 0
	DrepTypeScriptHash   = 1
	DrepTypeAbstain      = 2
	DrepTypeNoConfidence = 3
)
View Source
const (
	PoolRelayTypeSingleHostAddress = 0
	PoolRelayTypeSingleHostName    = 1
	PoolRelayTypeMultiHostName     = 2
)
View Source
const (
	EraIdConway = 6

	BlockTypeConway = 7

	BlockHeaderTypeConway = 6

	TxTypeConway = 6
)
View Source
const (
	VoterTypeConstitutionalCommitteeHotKeyHash    uint8 = 0
	VoterTypeConstitutionalCommitteeHotScriptHash uint8 = 1
	VoterTypeDRepKeyHash                          uint8 = 2
	VoterTypeDRepScriptHash                       uint8 = 3
	VoterTypeStakingPoolKeyHash                   uint8 = 4
)
View Source
const (
	GovVoteNo      uint8 = 0
	GovVoteYes     uint8 = 1
	GovVoteAbstain uint8 = 2
)
View Source
const (
	GovActionTypeParameterChange    = 0
	GovActionTypeHardForkInitiation = 1
	GovActionTypeTreasuryWithdrawal = 2
	GovActionTypeNoConfidence       = 3
	GovActionTypeUpdateCommittee    = 4
	GovActionTypeNewConstitution    = 5
	GovActionTypeInfo               = 6
)
View Source
const (
	StakeCredentialTypeAddrKeyHash = 0
	StakeCredentialTypeScriptHash  = 1
)
View Source
const (
	ApplyTxErrorUtxowFailure = 0

	UTXOWFailureUtxoFailure = 2

	UtxoFailureFromAlonzo = 1

	UtxoFailureBadInputsUtxo               = 0
	UtxoFailureOutsideValidityIntervalUtxo = 1
	UtxoFailureMaxTxSizeUtxo               = 2
	UtxoFailureInputSetEmpty               = 3
	UtxoFailureFeeTooSmallUtxo             = 4
	UtxoFailureValueNotConservedUtxo       = 5
	UtxoFailureOutputTooSmallUtxo          = 6
	UtxoFailureUtxosFailure                = 7
	UtxoFailureWrongNetwork                = 8
	UtxoFailureWrongNetworkWithdrawal      = 9
	UtxoFailureOutputBootAddrAttrsTooBig   = 10
	UtxoFailureTriesToForgeAda             = 11
	UtxoFailureOutputTooBigUtxo            = 12
	UtxoFailureInsufficientCollateral      = 13
	UtxoFailureScriptsNotPaidUtxo          = 14
	UtxoFailureExUnitsTooBigUtxo           = 15
	UtxoFailureCollateralContainsNonAda    = 16
	UtxoFailureWrongNetworkInTxBody        = 17
	UtxoFailureOutsideForecast             = 18
	UtxoFailureTooManyCollateralInputs     = 19
	UtxoFailureNoCollateralInputs          = 20
)
View Source
const (
	EraIdMary = 3

	BlockTypeMary = 4

	BlockHeaderTypeMary = 3

	TxTypeMary = 3
)
View Source
const (
	EraIdShelley = 1

	BlockTypeShelley = 2

	BlockHeaderTypeShelley = 1

	TxTypeShelley = 1
)
View Source
const (
	NonceType0 = 0
	NonceType1 = 1
)
View Source
const (
	LOVELACE_TOKEN              = "lovelace"
	BLOCK_BODY_HASH_ZERO_TX_HEX = "29571d16f081709b3c48651860077bebf9340abb3fc7133443c54f1f5a5edcf1"
)
View Source
const (
	SIGMA_SIZE      = 64
	PUBLIC_KEY_SIZE = 32
	Sum0KesSig_SIZE = 64
)
View Source
const (
	VRF_SUITE = 0x04 // ECVRF-ED25519-SHA512-Elligator2
)

Variables

View Source
var BlockHeaderToBlockTypeMap = map[uint]uint{
	BlockHeaderTypeShelley: BlockTypeShelley,
	BlockHeaderTypeAllegra: BlockTypeAllegra,
	BlockHeaderTypeMary:    BlockTypeMary,
	BlockHeaderTypeAlonzo:  BlockTypeAlonzo,
	BlockHeaderTypeBabbage: BlockTypeBabbage,
	BlockHeaderTypeConway:  BlockTypeConway,
}

BlockHeaderToBlockTypeMap is a mapping of NtN chainsync block header types (era ID) to NtC block types

View Source
var BlockToBlockHeaderTypeMap = map[uint]uint{
	BlockTypeShelley: BlockHeaderTypeShelley,
	BlockTypeAllegra: BlockHeaderTypeAllegra,
	BlockTypeMary:    BlockHeaderTypeMary,
	BlockTypeAlonzo:  BlockHeaderTypeAlonzo,
	BlockTypeBabbage: BlockHeaderTypeBabbage,
	BlockTypeConway:  BlockHeaderTypeConway,
}

BlockToBlockHeaderTypeMap is a mapping of NtC chainsync block types to NtN block header types (era ID)

View Source
var EraInvalid = Era{
	Id:   0,
	Name: "invalid",
}

Functions

func CalculateBlockBodyHash added in v0.84.0

func CalculateBlockBodyHash(txsRaw [][]string) ([]byte, error)

func DetermineBlockType added in v0.67.0

func DetermineBlockType(data []byte) (uint, error)

func DetermineTransactionType added in v0.55.0

func DetermineTransactionType(data []byte) (uint, error)

func ExtractBlockData added in v0.84.0

func ExtractBlockData(
	bodyHex string,
) ([]UTXOOutput, []RegisCert, []DeRegisCert, error)

func GetBlockOutput added in v0.84.0

func GetBlockOutput(
	txBodies []BabbageTransactionBody,
) ([]UTXOOutput, []RegisCert, []DeRegisCert, error)

func GetListRegisCertPoolId added in v0.84.0

func GetListRegisCertPoolId(regisCerts []RegisCert) []string

func GetListUnregisCertPoolId added in v0.84.0

func GetListUnregisCertPoolId(deRegisCerts []DeRegisCert) []string

func HashPair added in v0.84.0

func MkInputVrf added in v0.84.0

func MkInputVrf(slot int64, eta0 []byte) []byte

func NewEraMismatchErrorFromCbor

func NewEraMismatchErrorFromCbor(cborData []byte) (error, error)

func NewGenericErrorFromCbor

func NewGenericErrorFromCbor(cborData []byte) (error, error)

func NewShelleyTxValidationErrorFromCbor

func NewShelleyTxValidationErrorFromCbor(cborData []byte) (error, error)

func NewTxSubmitErrorFromCbor

func NewTxSubmitErrorFromCbor(cborData []byte) (error, error)

Helper function to try to parse CBOR as various error types

func VerifyBlock added in v0.84.0

func VerifyBlock(block BlockHexCbor) (error, bool, string, uint64, uint64)

func VerifyBlockBody added in v0.84.0

func VerifyBlockBody(data string, blockBodyHash string) (bool, error)

func VerifyKes added in v0.84.0

func VerifyKes(
	header *BabbageBlockHeader,
	slotsPerKesPeriod uint64,
) (bool, error)

TODO: make this work on anything from Shelley onward

func VrfVerifyAndHash added in v0.84.0

func VrfVerifyAndHash(
	publicKey []byte,
	proof []byte,
	msg []byte,
) ([]byte, error)

Types

type AddrKeyHash added in v0.84.0

type AddrKeyHash Blake2b224

type Address added in v0.43.0

type Address struct {
	// contains filtered or unexported fields
}

func NewAddress added in v0.45.0

func NewAddress(addr string) (Address, error)

NewAddress returns an Address based on the provided bech32 address string

func NewAddressFromParts added in v0.50.0

func NewAddressFromParts(
	addrType uint8,
	networkId uint8,
	paymentAddr []byte,
	stakingAddr []byte,
) (Address, error)

NewAddressFromParts returns an Address based on the individual parts of the address that are provided

func (Address) Bytes added in v0.43.0

func (a Address) Bytes() []byte

Bytes returns the underlying bytes for the address

func (*Address) MarshalCBOR added in v0.43.0

func (a *Address) MarshalCBOR() ([]byte, error)

func (Address) MarshalJSON added in v0.44.0

func (a Address) MarshalJSON() ([]byte, error)

func (Address) PaymentAddress added in v0.68.0

func (a Address) PaymentAddress() *Address

PaymentAddress returns a new Address with only the payment address portion. This will return nil for anything other than payment and script addresses

func (*Address) PaymentKeyHash added in v0.87.0

func (a *Address) PaymentKeyHash() Blake2b224

PaymentKeyHash returns a new Blake2b224 hash of the payment key

func (Address) StakeAddress added in v0.45.0

func (a Address) StakeAddress() *Address

StakeAddress returns a new Address with only the stake key portion. This will return nil if the address is not a payment/staking key pair

func (*Address) StakeKeyHash added in v0.87.0

func (a *Address) StakeKeyHash() Blake2b224

StakeKeyHash returns a new Blake2b224 hash of the stake key

func (Address) String added in v0.43.0

func (a Address) String() string

String returns the bech32-encoded version of the address

func (*Address) UnmarshalCBOR added in v0.43.0

func (a *Address) UnmarshalCBOR(data []byte) error

type AllegraBlock

type AllegraBlock struct {
	cbor.StructAsArray
	cbor.DecodeStoreCbor
	Header                 *AllegraBlockHeader
	TransactionBodies      []AllegraTransactionBody
	TransactionWitnessSets []ShelleyTransactionWitnessSet
	TransactionMetadataSet map[uint]*cbor.LazyValue
}

func NewAllegraBlockFromCbor

func NewAllegraBlockFromCbor(data []byte) (*AllegraBlock, error)

func (*AllegraBlock) BlockBodySize added in v0.57.0

func (b *AllegraBlock) BlockBodySize() uint64

func (*AllegraBlock) BlockNumber

func (b *AllegraBlock) BlockNumber() uint64

func (*AllegraBlock) Era

func (b *AllegraBlock) Era() Era

func (*AllegraBlock) Hash

func (b *AllegraBlock) Hash() string

func (*AllegraBlock) IssuerVkey added in v0.57.0

func (b *AllegraBlock) IssuerVkey() IssuerVkey

func (*AllegraBlock) SlotNumber

func (b *AllegraBlock) SlotNumber() uint64

func (*AllegraBlock) Transactions

func (b *AllegraBlock) Transactions() []Transaction

func (*AllegraBlock) UnmarshalCBOR

func (b *AllegraBlock) UnmarshalCBOR(cborData []byte) error

func (*AllegraBlock) Utxorpc added in v0.72.0

func (b *AllegraBlock) Utxorpc() *utxorpc.Block

type AllegraBlockHeader

type AllegraBlockHeader struct {
	ShelleyBlockHeader
}

func (*AllegraBlockHeader) Era

func (h *AllegraBlockHeader) Era() Era

type AllegraProtocolParameterUpdate added in v0.79.0

type AllegraProtocolParameterUpdate struct {
	ShelleyProtocolParameterUpdate
}

type AllegraProtocolParameters added in v0.79.0

type AllegraProtocolParameters struct {
	ShelleyProtocolParameters
}

type AllegraTransaction

type AllegraTransaction struct {
	cbor.StructAsArray
	cbor.DecodeStoreCbor
	Body       AllegraTransactionBody
	WitnessSet ShelleyTransactionWitnessSet
	TxMetadata *cbor.LazyValue
}

func NewAllegraTransactionFromCbor

func NewAllegraTransactionFromCbor(data []byte) (*AllegraTransaction, error)

func (AllegraTransaction) AssetMint added in v0.85.0

func (AllegraTransaction) AuxDataHash added in v0.85.0

func (t AllegraTransaction) AuxDataHash() *Blake2b256

func (*AllegraTransaction) Cbor added in v0.56.0

func (t *AllegraTransaction) Cbor() []byte

func (AllegraTransaction) Certificates added in v0.84.0

func (t AllegraTransaction) Certificates() []Certificate

func (AllegraTransaction) Collateral added in v0.82.0

func (t AllegraTransaction) Collateral() []TransactionInput

func (AllegraTransaction) CollateralReturn added in v0.82.0

func (t AllegraTransaction) CollateralReturn() TransactionOutput

func (AllegraTransaction) Consumed added in v0.82.0

func (t AllegraTransaction) Consumed() []TransactionInput

func (AllegraTransaction) CurrentTreasuryValue added in v0.86.0

func (t AllegraTransaction) CurrentTreasuryValue() int64

func (AllegraTransaction) Donation added in v0.86.0

func (t AllegraTransaction) Donation() uint64

func (AllegraTransaction) Fee added in v0.57.0

func (t AllegraTransaction) Fee() uint64

func (AllegraTransaction) Hash added in v0.46.0

func (t AllegraTransaction) Hash() string

func (AllegraTransaction) Inputs added in v0.46.0

func (t AllegraTransaction) Inputs() []TransactionInput

func (AllegraTransaction) IsValid added in v0.74.0

func (t AllegraTransaction) IsValid() bool

func (AllegraTransaction) Metadata

func (t AllegraTransaction) Metadata() *cbor.LazyValue

func (AllegraTransaction) Outputs added in v0.46.0

func (t AllegraTransaction) Outputs() []TransactionOutput

func (AllegraTransaction) Produced added in v0.82.0

func (t AllegraTransaction) Produced() []TransactionOutput

func (AllegraTransaction) ProposalProcedures added in v0.85.0

func (t AllegraTransaction) ProposalProcedures() []ProposalProcedure

func (*AllegraTransaction) ProtocolParametersUpdate added in v0.81.0

func (t *AllegraTransaction) ProtocolParametersUpdate() map[Blake2b224]any

func (AllegraTransaction) ReferenceInputs added in v0.76.0

func (t AllegraTransaction) ReferenceInputs() []TransactionInput

func (AllegraTransaction) RequiredSigners added in v0.85.0

func (t AllegraTransaction) RequiredSigners() []Blake2b224

func (AllegraTransaction) ScriptDataHash added in v0.85.0

func (t AllegraTransaction) ScriptDataHash() *Blake2b256

func (AllegraTransaction) TTL added in v0.57.0

func (t AllegraTransaction) TTL() uint64

func (AllegraTransaction) TotalCollateral added in v0.85.0

func (t AllegraTransaction) TotalCollateral() uint64

func (AllegraTransaction) Utxorpc added in v0.72.0

func (t AllegraTransaction) Utxorpc() *utxorpc.Tx

func (AllegraTransaction) ValidityIntervalStart added in v0.85.0

func (t AllegraTransaction) ValidityIntervalStart() uint64

func (AllegraTransaction) VotingProcedures added in v0.85.0

func (t AllegraTransaction) VotingProcedures() VotingProcedures

func (AllegraTransaction) Withdrawals added in v0.85.0

func (t AllegraTransaction) Withdrawals() map[*Address]uint64

type AllegraTransactionBody

type AllegraTransactionBody struct {
	ShelleyTransactionBody
	Update struct {
		cbor.StructAsArray
		ProtocolParamUpdates map[Blake2b224]AllegraProtocolParameterUpdate
		Epoch                uint64
	} `cbor:"6,keyasint,omitempty"`
	TxValidityIntervalStart uint64 `cbor:"8,keyasint,omitempty"`
}

func NewAllegraTransactionBodyFromCbor

func NewAllegraTransactionBodyFromCbor(
	data []byte,
) (*AllegraTransactionBody, error)

func (*AllegraTransactionBody) UnmarshalCBOR

func (b *AllegraTransactionBody) UnmarshalCBOR(cborData []byte) error

func (*AllegraTransactionBody) ValidityIntervalStart

func (b *AllegraTransactionBody) ValidityIntervalStart() uint64

type AlonzoBlock

type AlonzoBlock struct {
	cbor.StructAsArray
	cbor.DecodeStoreCbor
	Header                 *AlonzoBlockHeader
	TransactionBodies      []AlonzoTransactionBody
	TransactionWitnessSets []AlonzoTransactionWitnessSet
	TransactionMetadataSet map[uint]*cbor.LazyValue
	InvalidTransactions    []uint
}

func NewAlonzoBlockFromCbor

func NewAlonzoBlockFromCbor(data []byte) (*AlonzoBlock, error)

func (*AlonzoBlock) BlockBodySize added in v0.57.0

func (b *AlonzoBlock) BlockBodySize() uint64

func (*AlonzoBlock) BlockNumber

func (b *AlonzoBlock) BlockNumber() uint64

func (*AlonzoBlock) Era

func (b *AlonzoBlock) Era() Era

func (*AlonzoBlock) Hash

func (b *AlonzoBlock) Hash() string

func (*AlonzoBlock) IssuerVkey added in v0.57.0

func (b *AlonzoBlock) IssuerVkey() IssuerVkey

func (*AlonzoBlock) SlotNumber

func (b *AlonzoBlock) SlotNumber() uint64

func (*AlonzoBlock) Transactions

func (b *AlonzoBlock) Transactions() []Transaction

func (*AlonzoBlock) UnmarshalCBOR

func (b *AlonzoBlock) UnmarshalCBOR(cborData []byte) error

func (*AlonzoBlock) Utxorpc added in v0.72.0

func (b *AlonzoBlock) Utxorpc() *utxorpc.Block

type AlonzoBlockHeader

type AlonzoBlockHeader struct {
	ShelleyBlockHeader
}

func (*AlonzoBlockHeader) Era

func (h *AlonzoBlockHeader) Era() Era

type AlonzoProtocolParameterUpdate added in v0.80.0

type AlonzoProtocolParameterUpdate struct {
	MaryProtocolParameterUpdate
	MinPoolCost          uint            `cbor:"16,keyasint"`
	AdaPerUtxoByte       uint            `cbor:"17,keyasint"`
	CostModels           map[uint][]uint `cbor:"18,keyasint"`
	ExecutionCosts       *ExUnitPrice    `cbor:"19,keyasint"`
	MaxTxExUnits         *ExUnit         `cbor:"20,keyasint"`
	MaxBlockExUnits      *ExUnit         `cbor:"21,keyasint"`
	MaxValueSize         uint            `cbor:"22,keyasint"`
	CollateralPercentage uint            `cbor:"23,keyasint"`
	MaxCollateralInputs  uint            `cbor:"24,keyasint"`
}

type AlonzoProtocolParameters added in v0.80.0

type AlonzoProtocolParameters struct {
	MaryProtocolParameters
	MinPoolCost          uint
	AdaPerUtxoByte       uint
	CostModels           uint
	ExecutionCosts       uint
	MaxTxExUnits         uint
	MaxBlockExUnits      uint
	MaxValueSize         uint
	CollateralPercentage uint
	MaxCollateralInputs  uint
}

type AlonzoTransaction

type AlonzoTransaction struct {
	cbor.StructAsArray
	cbor.DecodeStoreCbor
	Body       AlonzoTransactionBody
	WitnessSet AlonzoTransactionWitnessSet
	IsTxValid  bool
	TxMetadata *cbor.LazyValue
}

func NewAlonzoTransactionFromCbor

func NewAlonzoTransactionFromCbor(data []byte) (*AlonzoTransaction, error)

func (AlonzoTransaction) AssetMint added in v0.85.0

func (AlonzoTransaction) AuxDataHash added in v0.85.0

func (t AlonzoTransaction) AuxDataHash() *Blake2b256

func (*AlonzoTransaction) Cbor added in v0.56.0

func (t *AlonzoTransaction) Cbor() []byte

func (AlonzoTransaction) Certificates added in v0.84.0

func (t AlonzoTransaction) Certificates() []Certificate

func (AlonzoTransaction) Collateral added in v0.82.0

func (t AlonzoTransaction) Collateral() []TransactionInput

func (AlonzoTransaction) CollateralReturn added in v0.82.0

func (t AlonzoTransaction) CollateralReturn() TransactionOutput

func (AlonzoTransaction) Consumed added in v0.82.0

func (t AlonzoTransaction) Consumed() []TransactionInput

func (AlonzoTransaction) CurrentTreasuryValue added in v0.86.0

func (t AlonzoTransaction) CurrentTreasuryValue() int64

func (AlonzoTransaction) Donation added in v0.86.0

func (t AlonzoTransaction) Donation() uint64

func (AlonzoTransaction) Fee added in v0.57.0

func (t AlonzoTransaction) Fee() uint64

func (AlonzoTransaction) Hash added in v0.46.0

func (t AlonzoTransaction) Hash() string

func (AlonzoTransaction) Inputs added in v0.46.0

func (t AlonzoTransaction) Inputs() []TransactionInput

func (AlonzoTransaction) IsValid

func (t AlonzoTransaction) IsValid() bool

func (AlonzoTransaction) Metadata

func (t AlonzoTransaction) Metadata() *cbor.LazyValue

func (AlonzoTransaction) Outputs added in v0.46.0

func (t AlonzoTransaction) Outputs() []TransactionOutput

func (AlonzoTransaction) Produced added in v0.82.0

func (t AlonzoTransaction) Produced() []TransactionOutput

func (AlonzoTransaction) ProposalProcedures added in v0.85.0

func (t AlonzoTransaction) ProposalProcedures() []ProposalProcedure

func (*AlonzoTransaction) ProtocolParametersUpdate added in v0.81.0

func (t *AlonzoTransaction) ProtocolParametersUpdate() map[Blake2b224]any

func (AlonzoTransaction) ReferenceInputs added in v0.76.0

func (t AlonzoTransaction) ReferenceInputs() []TransactionInput

func (AlonzoTransaction) RequiredSigners added in v0.85.0

func (t AlonzoTransaction) RequiredSigners() []Blake2b224

func (AlonzoTransaction) ScriptDataHash added in v0.85.0

func (t AlonzoTransaction) ScriptDataHash() *Blake2b256

func (AlonzoTransaction) TTL added in v0.57.0

func (t AlonzoTransaction) TTL() uint64

func (AlonzoTransaction) TotalCollateral added in v0.85.0

func (t AlonzoTransaction) TotalCollateral() uint64

func (*AlonzoTransaction) Utxorpc added in v0.72.0

func (t *AlonzoTransaction) Utxorpc() *utxorpc.Tx

func (AlonzoTransaction) ValidityIntervalStart added in v0.85.0

func (t AlonzoTransaction) ValidityIntervalStart() uint64

func (AlonzoTransaction) VotingProcedures added in v0.85.0

func (t AlonzoTransaction) VotingProcedures() VotingProcedures

func (AlonzoTransaction) Withdrawals added in v0.85.0

func (t AlonzoTransaction) Withdrawals() map[*Address]uint64

type AlonzoTransactionBody

type AlonzoTransactionBody struct {
	MaryTransactionBody
	TxOutputs []AlonzoTransactionOutput `cbor:"1,keyasint,omitempty"`
	Update    struct {
		cbor.StructAsArray
		ProtocolParamUpdates map[Blake2b224]AlonzoProtocolParameterUpdate
		Epoch                uint64
	} `cbor:"6,keyasint,omitempty"`
	TxScriptDataHash  *Blake2b256               `cbor:"11,keyasint,omitempty"`
	TxCollateral      []ShelleyTransactionInput `cbor:"13,keyasint,omitempty"`
	TxRequiredSigners []Blake2b224              `cbor:"14,keyasint,omitempty"`
	NetworkId         uint8                     `cbor:"15,keyasint,omitempty"`
}

func NewAlonzoTransactionBodyFromCbor

func NewAlonzoTransactionBodyFromCbor(
	data []byte,
) (*AlonzoTransactionBody, error)

func (*AlonzoTransactionBody) Collateral

func (b *AlonzoTransactionBody) Collateral() []TransactionInput

func (*AlonzoTransactionBody) Outputs

func (*AlonzoTransactionBody) RequiredSigners

func (b *AlonzoTransactionBody) RequiredSigners() []Blake2b224

func (*AlonzoTransactionBody) ScriptDataHash

func (b *AlonzoTransactionBody) ScriptDataHash() *Blake2b256

func (*AlonzoTransactionBody) UnmarshalCBOR

func (b *AlonzoTransactionBody) UnmarshalCBOR(cborData []byte) error

type AlonzoTransactionOutput

type AlonzoTransactionOutput struct {
	cbor.StructAsArray
	cbor.DecodeStoreCbor
	OutputAddress     Address
	OutputAmount      MaryTransactionOutputValue
	TxOutputDatumHash *Blake2b256
	// contains filtered or unexported fields
}

func NewAlonzoTransactionOutputFromCbor added in v0.69.0

func NewAlonzoTransactionOutputFromCbor(
	data []byte,
) (*AlonzoTransactionOutput, error)

func (AlonzoTransactionOutput) Address

func (o AlonzoTransactionOutput) Address() Address

func (AlonzoTransactionOutput) Amount

func (o AlonzoTransactionOutput) Amount() uint64

func (AlonzoTransactionOutput) Assets added in v0.43.0

func (AlonzoTransactionOutput) Datum added in v0.46.0

func (AlonzoTransactionOutput) DatumHash

func (o AlonzoTransactionOutput) DatumHash() *Blake2b256

func (*AlonzoTransactionOutput) MarshalCBOR added in v0.88.0

func (o *AlonzoTransactionOutput) MarshalCBOR() ([]byte, error)

func (AlonzoTransactionOutput) MarshalJSON added in v0.44.0

func (o AlonzoTransactionOutput) MarshalJSON() ([]byte, error)

func (*AlonzoTransactionOutput) UnmarshalCBOR

func (o *AlonzoTransactionOutput) UnmarshalCBOR(cborData []byte) error

func (AlonzoTransactionOutput) Utxorpc added in v0.72.0

type AlonzoTransactionWitnessSet

type AlonzoTransactionWitnessSet struct {
	ShelleyTransactionWitnessSet
	PlutusScripts []cbor.RawMessage `cbor:"3,keyasint,omitempty"`
	PlutusData    []cbor.RawMessage `cbor:"4,keyasint,omitempty"`
	Redeemers     []cbor.RawMessage `cbor:"5,keyasint,omitempty"`
}

func (*AlonzoTransactionWitnessSet) UnmarshalCBOR added in v0.56.0

func (t *AlonzoTransactionWitnessSet) UnmarshalCBOR(cborData []byte) error

type ApplyTxError

type ApplyTxError struct {
	cbor.StructAsArray
	Failures []error
}

func (*ApplyTxError) Error

func (e *ApplyTxError) Error() string

func (*ApplyTxError) UnmarshalCBOR

func (e *ApplyTxError) UnmarshalCBOR(data []byte) error

type AssetFingerprint added in v0.44.0

type AssetFingerprint struct {
	// contains filtered or unexported fields
}

func NewAssetFingerprint added in v0.44.0

func NewAssetFingerprint(policyId []byte, assetName []byte) AssetFingerprint

func (AssetFingerprint) Hash added in v0.44.0

func (a AssetFingerprint) Hash() Blake2b160

func (AssetFingerprint) String added in v0.44.0

func (a AssetFingerprint) String() string

type AuthCommitteeHotCertificate added in v0.86.0

type AuthCommitteeHotCertificate struct {
	cbor.StructAsArray
	cbor.DecodeStoreCbor
	CertType       uint
	ColdCredential StakeCredential
	HostCredential StakeCredential
}

func (*AuthCommitteeHotCertificate) UnmarshalCBOR added in v0.86.0

func (c *AuthCommitteeHotCertificate) UnmarshalCBOR(
	cborData []byte,
) error

func (*AuthCommitteeHotCertificate) Utxorpc added in v0.86.0

type BabbageBlock

type BabbageBlock struct {
	cbor.StructAsArray
	cbor.DecodeStoreCbor
	Header                 *BabbageBlockHeader
	TransactionBodies      []BabbageTransactionBody
	TransactionWitnessSets []BabbageTransactionWitnessSet
	TransactionMetadataSet map[uint]*cbor.LazyValue
	InvalidTransactions    []uint
}

func NewBabbageBlockFromCbor

func NewBabbageBlockFromCbor(data []byte) (*BabbageBlock, error)

func (*BabbageBlock) BlockBodySize added in v0.57.0

func (b *BabbageBlock) BlockBodySize() uint64

func (*BabbageBlock) BlockNumber

func (b *BabbageBlock) BlockNumber() uint64

func (*BabbageBlock) Era

func (b *BabbageBlock) Era() Era

func (*BabbageBlock) Hash

func (b *BabbageBlock) Hash() string

func (*BabbageBlock) IssuerVkey added in v0.57.0

func (b *BabbageBlock) IssuerVkey() IssuerVkey

func (*BabbageBlock) SlotNumber

func (b *BabbageBlock) SlotNumber() uint64

func (*BabbageBlock) Transactions

func (b *BabbageBlock) Transactions() []Transaction

func (*BabbageBlock) UnmarshalCBOR

func (b *BabbageBlock) UnmarshalCBOR(cborData []byte) error

func (*BabbageBlock) Utxorpc added in v0.72.0

func (b *BabbageBlock) Utxorpc() *utxorpc.Block

type BabbageBlockHeader

type BabbageBlockHeader struct {
	cbor.StructAsArray
	cbor.DecodeStoreCbor

	Body struct {
		cbor.StructAsArray
		BlockNumber   uint64
		Slot          uint64
		PrevHash      Blake2b256
		IssuerVkey    IssuerVkey
		VrfKey        []byte
		VrfResult     interface{}
		BlockBodySize uint64
		BlockBodyHash Blake2b256
		OpCert        struct {
			cbor.StructAsArray
			HotVkey        []byte
			SequenceNumber uint32
			KesPeriod      uint32
			Signature      []byte
		}
		ProtoVersion struct {
			cbor.StructAsArray
			Major uint64
			Minor uint64
		}
	}
	Signature interface{}
	// contains filtered or unexported fields
}

func NewBabbageBlockHeaderFromCbor

func NewBabbageBlockHeaderFromCbor(data []byte) (*BabbageBlockHeader, error)

func (*BabbageBlockHeader) BlockBodySize added in v0.57.0

func (h *BabbageBlockHeader) BlockBodySize() uint64

func (*BabbageBlockHeader) BlockNumber

func (h *BabbageBlockHeader) BlockNumber() uint64

func (*BabbageBlockHeader) Era

func (h *BabbageBlockHeader) Era() Era

func (*BabbageBlockHeader) Hash

func (h *BabbageBlockHeader) Hash() string

func (*BabbageBlockHeader) IssuerVkey added in v0.57.0

func (h *BabbageBlockHeader) IssuerVkey() IssuerVkey

func (*BabbageBlockHeader) SlotNumber

func (h *BabbageBlockHeader) SlotNumber() uint64

func (*BabbageBlockHeader) UnmarshalCBOR

func (h *BabbageBlockHeader) UnmarshalCBOR(cborData []byte) error

type BabbageProtocolParameterUpdate added in v0.77.0

type BabbageProtocolParameterUpdate struct {
	MinFeeA            uint      `cbor:"0,keyasint"`
	MinFeeB            uint      `cbor:"1,keyasint"`
	MaxBlockBodySize   uint      `cbor:"2,keyasint"`
	MaxTxSize          uint      `cbor:"3,keyasint"`
	MaxBlockHeaderSize uint      `cbor:"4,keyasint"`
	KeyDeposit         uint      `cbor:"5,keyasint"`
	PoolDeposit        uint      `cbor:"6,keyasint"`
	MaxEpoch           uint      `cbor:"7,keyasint"`
	NOpt               uint      `cbor:"8,keyasint"`
	A0                 *cbor.Rat `cbor:"9,keyasint"`
	Rho                *cbor.Rat `cbor:"10,keyasint"`
	Tau                *cbor.Rat `cbor:"11,keyasint"`
	ProtocolVersion    struct {
		cbor.StructAsArray
		Major uint
		Minor uint
	} `cbor:"14,keyasint"`
	MinPoolCost            uint           `cbor:"16,keyasint"`
	AdaPerUtxoByte         uint           `cbor:"17,keyasint"`
	CostModels             map[uint][]int `cbor:"18,keyasint"`
	ExecutionUnitPrices    []*cbor.Rat    `cbor:"19,keyasint"`
	MaxTxExecutionUnits    []uint         `cbor:"20,keyasint"`
	MaxBlockExecutionUnits []uint         `cbor:"21,keyasint"`
	MaxValueSize           uint           `cbor:"22,keyasint"`
	CollateralPercentage   uint           `cbor:"23,keyasint"`
	MaxCollateralInputs    uint           `cbor:"24,keyasint"`
}

type BabbageProtocolParameters added in v0.77.0

type BabbageProtocolParameters struct {
	cbor.StructAsArray
	MinFeeA                uint
	MinFeeB                uint
	MaxBlockBodySize       uint
	MaxTxSize              uint
	MaxBlockHeaderSize     uint
	KeyDeposit             uint
	PoolDeposit            uint
	MaxEpoch               uint
	NOpt                   uint
	A0                     *cbor.Rat
	Rho                    *cbor.Rat
	Tau                    *cbor.Rat
	ProtocolMajor          uint
	ProtocolMinor          uint
	MinPoolCost            uint
	AdaPerUtxoByte         uint
	CostModels             map[uint][]int
	ExecutionUnitPrices    []*cbor.Rat // [priceMemory priceSteps]
	MaxTxExecutionUnits    []uint
	MaxBlockExecutionUnits []uint
	MaxValueSize           uint
	CollateralPercentage   uint
	MaxCollateralInputs    uint
}

BabbageProtocolParameters represents the current Babbage protocol parameters as seen in local-state-query

type BabbageTransaction

type BabbageTransaction struct {
	cbor.StructAsArray
	cbor.DecodeStoreCbor
	Body       BabbageTransactionBody
	WitnessSet BabbageTransactionWitnessSet
	IsTxValid  bool
	TxMetadata *cbor.LazyValue
}

func NewBabbageTransactionFromCbor

func NewBabbageTransactionFromCbor(data []byte) (*BabbageTransaction, error)

func (BabbageTransaction) AssetMint added in v0.85.0

func (BabbageTransaction) AuxDataHash added in v0.85.0

func (t BabbageTransaction) AuxDataHash() *Blake2b256

func (*BabbageTransaction) Cbor added in v0.56.0

func (t *BabbageTransaction) Cbor() []byte

func (BabbageTransaction) Certificates added in v0.84.0

func (t BabbageTransaction) Certificates() []Certificate

func (BabbageTransaction) Collateral added in v0.82.0

func (t BabbageTransaction) Collateral() []TransactionInput

func (BabbageTransaction) CollateralReturn added in v0.82.0

func (t BabbageTransaction) CollateralReturn() TransactionOutput

func (BabbageTransaction) Consumed added in v0.82.0

func (t BabbageTransaction) Consumed() []TransactionInput

func (BabbageTransaction) CurrentTreasuryValue added in v0.86.0

func (t BabbageTransaction) CurrentTreasuryValue() int64

func (BabbageTransaction) Donation added in v0.86.0

func (t BabbageTransaction) Donation() uint64

func (BabbageTransaction) Fee added in v0.57.0

func (t BabbageTransaction) Fee() uint64

func (BabbageTransaction) Hash added in v0.46.0

func (t BabbageTransaction) Hash() string

func (BabbageTransaction) Inputs added in v0.46.0

func (t BabbageTransaction) Inputs() []TransactionInput

func (BabbageTransaction) IsValid

func (t BabbageTransaction) IsValid() bool

func (BabbageTransaction) Metadata

func (t BabbageTransaction) Metadata() *cbor.LazyValue

func (BabbageTransaction) Outputs added in v0.46.0

func (t BabbageTransaction) Outputs() []TransactionOutput

func (BabbageTransaction) Produced added in v0.82.0

func (t BabbageTransaction) Produced() []TransactionOutput

func (BabbageTransaction) ProposalProcedures added in v0.85.0

func (t BabbageTransaction) ProposalProcedures() []ProposalProcedure

func (*BabbageTransaction) ProtocolParametersUpdate added in v0.81.0

func (t *BabbageTransaction) ProtocolParametersUpdate() map[Blake2b224]any

func (BabbageTransaction) ReferenceInputs added in v0.76.0

func (t BabbageTransaction) ReferenceInputs() []TransactionInput

func (BabbageTransaction) RequiredSigners added in v0.85.0

func (t BabbageTransaction) RequiredSigners() []Blake2b224

func (BabbageTransaction) ScriptDataHash added in v0.85.0

func (t BabbageTransaction) ScriptDataHash() *Blake2b256

func (BabbageTransaction) TTL added in v0.57.0

func (t BabbageTransaction) TTL() uint64

func (BabbageTransaction) TotalCollateral added in v0.85.0

func (t BabbageTransaction) TotalCollateral() uint64

func (*BabbageTransaction) Utxorpc added in v0.72.0

func (t *BabbageTransaction) Utxorpc() *utxorpc.Tx

func (BabbageTransaction) ValidityIntervalStart added in v0.85.0

func (t BabbageTransaction) ValidityIntervalStart() uint64

func (BabbageTransaction) VotingProcedures added in v0.85.0

func (t BabbageTransaction) VotingProcedures() VotingProcedures

func (BabbageTransaction) Withdrawals added in v0.85.0

func (t BabbageTransaction) Withdrawals() map[*Address]uint64

type BabbageTransactionBody

type BabbageTransactionBody struct {
	AlonzoTransactionBody
	TxOutputs []BabbageTransactionOutput `cbor:"1,keyasint,omitempty"`
	Update    struct {
		cbor.StructAsArray
		ProtocolParamUpdates map[Blake2b224]BabbageProtocolParameterUpdate
		Epoch                uint64
	} `cbor:"6,keyasint,omitempty"`
	TxCollateralReturn *BabbageTransactionOutput `cbor:"16,keyasint,omitempty"`
	TxTotalCollateral  uint64                    `cbor:"17,keyasint,omitempty"`
	TxReferenceInputs  []ShelleyTransactionInput `cbor:"18,keyasint,omitempty"`
}

func GetTxBodies added in v0.84.0

func GetTxBodies(txsRaw [][]string) ([]BabbageTransactionBody, error)

func NewBabbageTransactionBodyFromCbor

func NewBabbageTransactionBodyFromCbor(
	data []byte,
) (*BabbageTransactionBody, error)

func (*BabbageTransactionBody) CollateralReturn

func (b *BabbageTransactionBody) CollateralReturn() TransactionOutput

func (*BabbageTransactionBody) Outputs

func (*BabbageTransactionBody) ReferenceInputs

func (b *BabbageTransactionBody) ReferenceInputs() []TransactionInput

func (*BabbageTransactionBody) TotalCollateral

func (b *BabbageTransactionBody) TotalCollateral() uint64

func (*BabbageTransactionBody) UnmarshalCBOR

func (b *BabbageTransactionBody) UnmarshalCBOR(cborData []byte) error

func (*BabbageTransactionBody) Utxorpc added in v0.78.0

func (b *BabbageTransactionBody) Utxorpc() *utxorpc.Tx

type BabbageTransactionOutput

type BabbageTransactionOutput struct {
	cbor.DecodeStoreCbor
	OutputAddress Address                              `cbor:"0,keyasint,omitempty"`
	OutputAmount  MaryTransactionOutputValue           `cbor:"1,keyasint,omitempty"`
	DatumOption   *BabbageTransactionOutputDatumOption `cbor:"2,keyasint,omitempty"`
	ScriptRef     *cbor.Tag                            `cbor:"3,keyasint,omitempty"`
	// contains filtered or unexported fields
}

func NewBabbageTransactionOutputFromCbor added in v0.69.0

func NewBabbageTransactionOutputFromCbor(
	data []byte,
) (*BabbageTransactionOutput, error)

func (BabbageTransactionOutput) Address

func (o BabbageTransactionOutput) Address() Address

func (BabbageTransactionOutput) Amount

func (o BabbageTransactionOutput) Amount() uint64

func (BabbageTransactionOutput) Assets added in v0.43.0

func (BabbageTransactionOutput) Datum added in v0.46.0

func (BabbageTransactionOutput) DatumHash added in v0.46.0

func (o BabbageTransactionOutput) DatumHash() *Blake2b256

func (*BabbageTransactionOutput) MarshalCBOR added in v0.88.0

func (o *BabbageTransactionOutput) MarshalCBOR() ([]byte, error)

func (BabbageTransactionOutput) MarshalJSON added in v0.44.0

func (o BabbageTransactionOutput) MarshalJSON() ([]byte, error)

func (*BabbageTransactionOutput) UnmarshalCBOR

func (o *BabbageTransactionOutput) UnmarshalCBOR(cborData []byte) error

func (BabbageTransactionOutput) Utxorpc added in v0.72.0

type BabbageTransactionOutputDatumOption added in v0.46.0

type BabbageTransactionOutputDatumOption struct {
	// contains filtered or unexported fields
}

func (*BabbageTransactionOutputDatumOption) MarshalCBOR added in v0.46.0

func (d *BabbageTransactionOutputDatumOption) MarshalCBOR() ([]byte, error)

func (*BabbageTransactionOutputDatumOption) UnmarshalCBOR added in v0.46.0

func (d *BabbageTransactionOutputDatumOption) UnmarshalCBOR(data []byte) error

type BabbageTransactionWitnessSet

type BabbageTransactionWitnessSet struct {
	AlonzoTransactionWitnessSet
	PlutusV2Scripts []cbor.RawMessage `cbor:"6,keyasint,omitempty"`
}

func (*BabbageTransactionWitnessSet) UnmarshalCBOR added in v0.56.0

func (t *BabbageTransactionWitnessSet) UnmarshalCBOR(cborData []byte) error

type BadInputsUtxo

type BadInputsUtxo struct {
	UtxoFailureErrorBase
	Inputs []TxIn
}

func (*BadInputsUtxo) Error

func (e *BadInputsUtxo) Error() string

type Blake2b160 added in v0.44.0

type Blake2b160 [20]byte

func NewBlake2b160 added in v0.44.0

func NewBlake2b160(data []byte) Blake2b160

func (Blake2b160) Bytes added in v0.44.0

func (b Blake2b160) Bytes() []byte

func (Blake2b160) String added in v0.44.0

func (b Blake2b160) String() string

type Blake2b224

type Blake2b224 [28]byte

func NewBlake2b224 added in v0.44.0

func NewBlake2b224(data []byte) Blake2b224

func (Blake2b224) Bytes added in v0.44.0

func (b Blake2b224) Bytes() []byte

func (Blake2b224) String

func (b Blake2b224) String() string

type Blake2b256

type Blake2b256 [32]byte

func NewBlake2b256 added in v0.44.0

func NewBlake2b256(data []byte) Blake2b256

func (Blake2b256) Bytes added in v0.44.0

func (b Blake2b256) Bytes() []byte

func (Blake2b256) String

func (b Blake2b256) String() string

type Block

type Block interface {
	BlockHeader
	Transactions() []Transaction
	Utxorpc() *utxorpc.Block
}

func NewBlockFromCbor

func NewBlockFromCbor(blockType uint, data []byte) (Block, error)

type BlockHeader

type BlockHeader interface {
	Hash() string
	BlockNumber() uint64
	SlotNumber() uint64
	IssuerVkey() IssuerVkey
	BlockBodySize() uint64
	Era() Era
	Cbor() []byte
}

func NewBlockHeaderFromCbor

func NewBlockHeaderFromCbor(blockType uint, data []byte) (BlockHeader, error)

XXX: should this take the block header type instead?

type BlockHexCbor added in v0.84.0

type BlockHexCbor struct {
	Flag          int
	HeaderCbor    string
	Eta0          string
	Spk           int
	BlockBodyCbor string
	// contains filtered or unexported fields
}

type ByronEpochBoundaryBlock

type ByronEpochBoundaryBlock struct {
	cbor.StructAsArray
	cbor.DecodeStoreCbor
	Header *ByronEpochBoundaryBlockHeader
	Body   []Blake2b224
	Extra  []interface{}
}

func NewByronEpochBoundaryBlockFromCbor

func NewByronEpochBoundaryBlockFromCbor(
	data []byte,
) (*ByronEpochBoundaryBlock, error)

func (*ByronEpochBoundaryBlock) BlockBodySize added in v0.57.0

func (b *ByronEpochBoundaryBlock) BlockBodySize() uint64

func (*ByronEpochBoundaryBlock) BlockNumber

func (b *ByronEpochBoundaryBlock) BlockNumber() uint64

func (*ByronEpochBoundaryBlock) Era

func (b *ByronEpochBoundaryBlock) Era() Era

func (*ByronEpochBoundaryBlock) Hash

func (b *ByronEpochBoundaryBlock) Hash() string

func (*ByronEpochBoundaryBlock) IssuerVkey added in v0.57.0

func (b *ByronEpochBoundaryBlock) IssuerVkey() IssuerVkey

func (*ByronEpochBoundaryBlock) SlotNumber

func (b *ByronEpochBoundaryBlock) SlotNumber() uint64

func (*ByronEpochBoundaryBlock) Transactions

func (b *ByronEpochBoundaryBlock) Transactions() []Transaction

func (*ByronEpochBoundaryBlock) UnmarshalCBOR

func (b *ByronEpochBoundaryBlock) UnmarshalCBOR(cborData []byte) error

func (*ByronEpochBoundaryBlock) Utxorpc added in v0.72.0

func (b *ByronEpochBoundaryBlock) Utxorpc() *utxorpc.Block

type ByronEpochBoundaryBlockHeader

type ByronEpochBoundaryBlockHeader struct {
	cbor.StructAsArray
	cbor.DecodeStoreCbor

	ProtocolMagic uint32
	PrevBlock     Blake2b256
	BodyProof     interface{}
	ConsensusData struct {
		cbor.StructAsArray
		Epoch      uint64
		Difficulty struct {
			cbor.StructAsArray
			Value uint64
		}
	}
	ExtraData interface{}
	// contains filtered or unexported fields
}

func NewByronEpochBoundaryBlockHeaderFromCbor

func NewByronEpochBoundaryBlockHeaderFromCbor(
	data []byte,
) (*ByronEpochBoundaryBlockHeader, error)

func (*ByronEpochBoundaryBlockHeader) BlockBodySize added in v0.57.0

func (h *ByronEpochBoundaryBlockHeader) BlockBodySize() uint64

func (*ByronEpochBoundaryBlockHeader) BlockNumber

func (h *ByronEpochBoundaryBlockHeader) BlockNumber() uint64

func (*ByronEpochBoundaryBlockHeader) Era

func (*ByronEpochBoundaryBlockHeader) Hash

func (*ByronEpochBoundaryBlockHeader) IssuerVkey added in v0.57.0

func (h *ByronEpochBoundaryBlockHeader) IssuerVkey() IssuerVkey

func (*ByronEpochBoundaryBlockHeader) SlotNumber

func (h *ByronEpochBoundaryBlockHeader) SlotNumber() uint64

func (*ByronEpochBoundaryBlockHeader) UnmarshalCBOR

func (h *ByronEpochBoundaryBlockHeader) UnmarshalCBOR(cborData []byte) error

type ByronMainBlock

type ByronMainBlock struct {
	cbor.StructAsArray
	cbor.DecodeStoreCbor
	Header *ByronMainBlockHeader
	Body   ByronMainBlockBody
	Extra  []interface{}
}

func NewByronMainBlockFromCbor

func NewByronMainBlockFromCbor(data []byte) (*ByronMainBlock, error)

func (*ByronMainBlock) BlockBodySize added in v0.57.0

func (b *ByronMainBlock) BlockBodySize() uint64

func (*ByronMainBlock) BlockNumber

func (b *ByronMainBlock) BlockNumber() uint64

func (*ByronMainBlock) Era

func (b *ByronMainBlock) Era() Era

func (*ByronMainBlock) Hash

func (b *ByronMainBlock) Hash() string

func (*ByronMainBlock) IssuerVkey added in v0.57.0

func (b *ByronMainBlock) IssuerVkey() IssuerVkey

func (*ByronMainBlock) SlotNumber

func (b *ByronMainBlock) SlotNumber() uint64

func (*ByronMainBlock) Transactions

func (b *ByronMainBlock) Transactions() []Transaction

func (*ByronMainBlock) UnmarshalCBOR

func (b *ByronMainBlock) UnmarshalCBOR(cborData []byte) error

func (*ByronMainBlock) Utxorpc added in v0.72.0

func (b *ByronMainBlock) Utxorpc() *utxorpc.Block

type ByronMainBlockBody

type ByronMainBlockBody struct {
	cbor.StructAsArray
	cbor.DecodeStoreCbor
	// TODO: split this to its own type
	TxPayload []struct {
		cbor.StructAsArray
		Transaction ByronTransaction
		// TODO: figure out what this field actually is
		Twit []cbor.Value
	}
	SscPayload cbor.Value
	DlgPayload []interface{}
	UpdPayload []interface{}
}

func (*ByronMainBlockBody) UnmarshalCBOR added in v0.78.0

func (b *ByronMainBlockBody) UnmarshalCBOR(data []byte) error

type ByronMainBlockHeader

type ByronMainBlockHeader struct {
	cbor.StructAsArray
	cbor.DecodeStoreCbor

	ProtocolMagic uint32
	PrevBlock     Blake2b256
	BodyProof     interface{}
	ConsensusData struct {
		cbor.StructAsArray
		// [slotid, pubkey, difficulty, blocksig]
		SlotId struct {
			cbor.StructAsArray
			Epoch uint64
			Slot  uint16
		}
		PubKey     []byte
		Difficulty struct {
			cbor.StructAsArray
			Unknown uint64
		}
		BlockSig []interface{}
	}
	ExtraData struct {
		cbor.StructAsArray
		BlockVersion struct {
			cbor.StructAsArray
			Major   uint16
			Minor   uint16
			Unknown uint8
		}
		SoftwareVersion struct {
			cbor.StructAsArray
			Name    string
			Unknown uint32
		}
		Attributes interface{}
		ExtraProof Blake2b256
	}
	// contains filtered or unexported fields
}

func NewByronMainBlockHeaderFromCbor

func NewByronMainBlockHeaderFromCbor(
	data []byte,
) (*ByronMainBlockHeader, error)

func (*ByronMainBlockHeader) BlockBodySize added in v0.57.0

func (h *ByronMainBlockHeader) BlockBodySize() uint64

func (*ByronMainBlockHeader) BlockNumber

func (h *ByronMainBlockHeader) BlockNumber() uint64

func (*ByronMainBlockHeader) Era

func (h *ByronMainBlockHeader) Era() Era

func (*ByronMainBlockHeader) Hash

func (h *ByronMainBlockHeader) Hash() string

func (*ByronMainBlockHeader) IssuerVkey added in v0.57.0

func (h *ByronMainBlockHeader) IssuerVkey() IssuerVkey

func (*ByronMainBlockHeader) SlotNumber

func (h *ByronMainBlockHeader) SlotNumber() uint64

func (*ByronMainBlockHeader) UnmarshalCBOR

func (h *ByronMainBlockHeader) UnmarshalCBOR(cborData []byte) error

type ByronTransaction

type ByronTransaction struct {
	cbor.StructAsArray
	cbor.DecodeStoreCbor

	TxInputs   []ByronTransactionInput
	TxOutputs  []ByronTransactionOutput
	Attributes *cbor.LazyValue
	// contains filtered or unexported fields
}

func NewByronTransactionFromCbor

func NewByronTransactionFromCbor(data []byte) (*ByronTransaction, error)

func (*ByronTransaction) AssetMint added in v0.85.0

func (*ByronTransaction) AuxDataHash added in v0.85.0

func (t *ByronTransaction) AuxDataHash() *Blake2b256

func (*ByronTransaction) Certificates added in v0.84.0

func (t *ByronTransaction) Certificates() []Certificate

func (*ByronTransaction) Collateral added in v0.82.0

func (t *ByronTransaction) Collateral() []TransactionInput

func (*ByronTransaction) CollateralReturn added in v0.82.0

func (t *ByronTransaction) CollateralReturn() TransactionOutput

func (*ByronTransaction) Consumed added in v0.82.0

func (t *ByronTransaction) Consumed() []TransactionInput

func (*ByronTransaction) CurrentTreasuryValue added in v0.86.0

func (t *ByronTransaction) CurrentTreasuryValue() int64

func (*ByronTransaction) Donation added in v0.86.0

func (t *ByronTransaction) Donation() uint64

func (*ByronTransaction) Fee added in v0.57.0

func (t *ByronTransaction) Fee() uint64

func (*ByronTransaction) Hash added in v0.46.0

func (t *ByronTransaction) Hash() string

func (*ByronTransaction) Inputs added in v0.46.0

func (t *ByronTransaction) Inputs() []TransactionInput

func (*ByronTransaction) IsValid added in v0.74.0

func (t *ByronTransaction) IsValid() bool

func (*ByronTransaction) Metadata added in v0.46.0

func (t *ByronTransaction) Metadata() *cbor.LazyValue

func (*ByronTransaction) Outputs added in v0.46.0

func (t *ByronTransaction) Outputs() []TransactionOutput

func (*ByronTransaction) Produced added in v0.82.0

func (t *ByronTransaction) Produced() []TransactionOutput

func (*ByronTransaction) ProposalProcedures added in v0.85.0

func (t *ByronTransaction) ProposalProcedures() []ProposalProcedure

func (*ByronTransaction) ProtocolParametersUpdate added in v0.81.0

func (t *ByronTransaction) ProtocolParametersUpdate() map[Blake2b224]any

func (*ByronTransaction) ReferenceInputs added in v0.76.0

func (t *ByronTransaction) ReferenceInputs() []TransactionInput

func (*ByronTransaction) RequiredSigners added in v0.85.0

func (t *ByronTransaction) RequiredSigners() []Blake2b224

func (*ByronTransaction) ScriptDataHash added in v0.85.0

func (t *ByronTransaction) ScriptDataHash() *Blake2b256

func (*ByronTransaction) TTL added in v0.57.0

func (t *ByronTransaction) TTL() uint64

func (*ByronTransaction) TotalCollateral added in v0.85.0

func (t *ByronTransaction) TotalCollateral() uint64

func (*ByronTransaction) UnmarshalCBOR added in v0.78.0

func (t *ByronTransaction) UnmarshalCBOR(data []byte) error

func (*ByronTransaction) Utxorpc added in v0.72.0

func (t *ByronTransaction) Utxorpc() *utxorpc.Tx

func (*ByronTransaction) ValidityIntervalStart added in v0.85.0

func (t *ByronTransaction) ValidityIntervalStart() uint64

func (*ByronTransaction) VotingProcedures added in v0.85.0

func (t *ByronTransaction) VotingProcedures() VotingProcedures

func (*ByronTransaction) Withdrawals added in v0.85.0

func (t *ByronTransaction) Withdrawals() map[*Address]uint64

type ByronTransactionInput added in v0.77.0

type ByronTransactionInput struct {
	cbor.StructAsArray
	TxId        Blake2b256
	OutputIndex uint32
}

func (ByronTransactionInput) Id added in v0.77.0

func (ByronTransactionInput) Index added in v0.77.0

func (i ByronTransactionInput) Index() uint32

func (ByronTransactionInput) MarshalJSON added in v0.77.0

func (i ByronTransactionInput) MarshalJSON() ([]byte, error)

func (ByronTransactionInput) String added in v0.77.0

func (i ByronTransactionInput) String() string

func (*ByronTransactionInput) UnmarshalCBOR added in v0.77.0

func (i *ByronTransactionInput) UnmarshalCBOR(data []byte) error

func (ByronTransactionInput) Utxorpc added in v0.77.0

func (i ByronTransactionInput) Utxorpc() *utxorpc.TxInput

type ByronTransactionOutput added in v0.77.0

type ByronTransactionOutput struct {
	cbor.StructAsArray
	cbor.DecodeStoreCbor
	OutputAddress Address `json:"address"`
	OutputAmount  uint64  `json:"amount"`
}

func (ByronTransactionOutput) Address added in v0.77.0

func (o ByronTransactionOutput) Address() Address

func (ByronTransactionOutput) Amount added in v0.77.0

func (o ByronTransactionOutput) Amount() uint64

func (ByronTransactionOutput) Assets added in v0.77.0

func (ByronTransactionOutput) Datum added in v0.77.0

func (ByronTransactionOutput) DatumHash added in v0.77.0

func (o ByronTransactionOutput) DatumHash() *Blake2b256

func (*ByronTransactionOutput) UnmarshalCBOR added in v0.77.0

func (o *ByronTransactionOutput) UnmarshalCBOR(data []byte) error

func (ByronTransactionOutput) Utxorpc added in v0.77.0

type Certificate added in v0.84.0

type Certificate interface {
	Cbor() []byte
	Utxorpc() *utxorpc.Certificate
	// contains filtered or unexported methods
}

type CertificateWrapper added in v0.84.0

type CertificateWrapper struct {
	Type        uint
	Certificate Certificate
}

func (*CertificateWrapper) MarshalCBOR added in v0.84.0

func (c *CertificateWrapper) MarshalCBOR() ([]byte, error)

func (*CertificateWrapper) UnmarshalCBOR added in v0.84.0

func (c *CertificateWrapper) UnmarshalCBOR(data []byte) error

type CollateralContainsNonADA

type CollateralContainsNonADA struct {
	UtxoFailureErrorBase
	// TODO: determine content/structure of this value
	Value cbor.Value
}

func (*CollateralContainsNonADA) Error

func (e *CollateralContainsNonADA) Error() string

type ConwayBlock added in v0.60.0

type ConwayBlock struct {
	cbor.StructAsArray
	cbor.DecodeStoreCbor
	Header                 *ConwayBlockHeader
	TransactionBodies      []ConwayTransactionBody
	TransactionWitnessSets []BabbageTransactionWitnessSet
	TransactionMetadataSet map[uint]*cbor.LazyValue
	InvalidTransactions    []uint
}

func NewConwayBlockFromCbor added in v0.60.0

func NewConwayBlockFromCbor(data []byte) (*ConwayBlock, error)

func (*ConwayBlock) BlockBodySize added in v0.60.0

func (b *ConwayBlock) BlockBodySize() uint64

func (*ConwayBlock) BlockNumber added in v0.60.0

func (b *ConwayBlock) BlockNumber() uint64

func (*ConwayBlock) Era added in v0.60.0

func (b *ConwayBlock) Era() Era

func (*ConwayBlock) Hash added in v0.60.0

func (b *ConwayBlock) Hash() string

func (*ConwayBlock) IssuerVkey added in v0.60.0

func (b *ConwayBlock) IssuerVkey() IssuerVkey

func (*ConwayBlock) SlotNumber added in v0.60.0

func (b *ConwayBlock) SlotNumber() uint64

func (*ConwayBlock) Transactions added in v0.60.0

func (b *ConwayBlock) Transactions() []Transaction

func (*ConwayBlock) UnmarshalCBOR added in v0.60.0

func (b *ConwayBlock) UnmarshalCBOR(cborData []byte) error

func (*ConwayBlock) Utxorpc added in v0.72.0

func (b *ConwayBlock) Utxorpc() *utxorpc.Block

type ConwayBlockHeader added in v0.60.0

type ConwayBlockHeader struct {
	BabbageBlockHeader
}

func NewConwayBlockHeaderFromCbor added in v0.60.0

func NewConwayBlockHeaderFromCbor(data []byte) (*ConwayBlockHeader, error)

func (*ConwayBlockHeader) Era added in v0.60.0

func (h *ConwayBlockHeader) Era() Era

type ConwayTransaction added in v0.60.0

type ConwayTransaction struct {
	cbor.StructAsArray
	cbor.DecodeStoreCbor
	Body       ConwayTransactionBody
	WitnessSet BabbageTransactionWitnessSet
	IsTxValid  bool
	TxMetadata *cbor.LazyValue
}

func NewConwayTransactionFromCbor added in v0.60.0

func NewConwayTransactionFromCbor(data []byte) (*ConwayTransaction, error)

func (ConwayTransaction) AssetMint added in v0.85.0

func (ConwayTransaction) AuxDataHash added in v0.85.0

func (t ConwayTransaction) AuxDataHash() *Blake2b256

func (*ConwayTransaction) Cbor added in v0.60.0

func (t *ConwayTransaction) Cbor() []byte

func (ConwayTransaction) Certificates added in v0.84.0

func (t ConwayTransaction) Certificates() []Certificate

func (ConwayTransaction) Collateral added in v0.82.0

func (t ConwayTransaction) Collateral() []TransactionInput

func (ConwayTransaction) CollateralReturn added in v0.82.0

func (t ConwayTransaction) CollateralReturn() TransactionOutput

func (ConwayTransaction) Consumed added in v0.82.0

func (t ConwayTransaction) Consumed() []TransactionInput

func (ConwayTransaction) CurrentTreasuryValue added in v0.86.0

func (t ConwayTransaction) CurrentTreasuryValue() int64

func (ConwayTransaction) Donation added in v0.86.0

func (t ConwayTransaction) Donation() uint64

func (ConwayTransaction) Fee added in v0.60.0

func (t ConwayTransaction) Fee() uint64

func (ConwayTransaction) Hash added in v0.60.0

func (t ConwayTransaction) Hash() string

func (ConwayTransaction) Inputs added in v0.60.0

func (t ConwayTransaction) Inputs() []TransactionInput

func (ConwayTransaction) IsValid added in v0.60.0

func (t ConwayTransaction) IsValid() bool

func (ConwayTransaction) Metadata added in v0.60.0

func (t ConwayTransaction) Metadata() *cbor.LazyValue

func (ConwayTransaction) Outputs added in v0.60.0

func (t ConwayTransaction) Outputs() []TransactionOutput

func (ConwayTransaction) Produced added in v0.82.0

func (t ConwayTransaction) Produced() []TransactionOutput

func (ConwayTransaction) ProposalProcedures added in v0.85.0

func (t ConwayTransaction) ProposalProcedures() []ProposalProcedure

func (*ConwayTransaction) ProtocolParametersUpdate added in v0.81.0

func (t *ConwayTransaction) ProtocolParametersUpdate() map[Blake2b224]any

func (ConwayTransaction) ReferenceInputs added in v0.76.0

func (t ConwayTransaction) ReferenceInputs() []TransactionInput

func (ConwayTransaction) RequiredSigners added in v0.85.0

func (t ConwayTransaction) RequiredSigners() []Blake2b224

func (ConwayTransaction) ScriptDataHash added in v0.85.0

func (t ConwayTransaction) ScriptDataHash() *Blake2b256

func (ConwayTransaction) TTL added in v0.60.0

func (t ConwayTransaction) TTL() uint64

func (ConwayTransaction) TotalCollateral added in v0.85.0

func (t ConwayTransaction) TotalCollateral() uint64

func (*ConwayTransaction) Utxorpc added in v0.72.0

func (t *ConwayTransaction) Utxorpc() *utxorpc.Tx

func (ConwayTransaction) ValidityIntervalStart added in v0.85.0

func (t ConwayTransaction) ValidityIntervalStart() uint64

func (ConwayTransaction) VotingProcedures added in v0.85.0

func (t ConwayTransaction) VotingProcedures() VotingProcedures

func (ConwayTransaction) Withdrawals added in v0.85.0

func (t ConwayTransaction) Withdrawals() map[*Address]uint64

type ConwayTransactionBody added in v0.60.0

type ConwayTransactionBody struct {
	BabbageTransactionBody
	TxVotingProcedures     VotingProcedures    `cbor:"19,keyasint,omitempty"`
	TxProposalProcedures   []ProposalProcedure `cbor:"20,keyasint,omitempty"`
	TxCurrentTreasuryValue int64               `cbor:"21,keyasint,omitempty"`
	TxDonation             uint64              `cbor:"22,keyasint,omitempty"`
}

func NewConwayTransactionBodyFromCbor added in v0.60.0

func NewConwayTransactionBodyFromCbor(
	data []byte,
) (*ConwayTransactionBody, error)

func (*ConwayTransactionBody) CurrentTreasuryValue added in v0.60.0

func (b *ConwayTransactionBody) CurrentTreasuryValue() int64

func (*ConwayTransactionBody) Donation added in v0.60.0

func (b *ConwayTransactionBody) Donation() uint64

func (*ConwayTransactionBody) ProposalProcedures added in v0.60.0

func (b *ConwayTransactionBody) ProposalProcedures() []ProposalProcedure

func (*ConwayTransactionBody) UnmarshalCBOR added in v0.60.0

func (b *ConwayTransactionBody) UnmarshalCBOR(cborData []byte) error

func (*ConwayTransactionBody) VotingProcedures added in v0.60.0

func (b *ConwayTransactionBody) VotingProcedures() VotingProcedures

type DeRegisCert added in v0.84.0

type DeRegisCert struct {
	Flag          int
	DeRegisPoolId string
	DeRegisEpoch  string
	TxIndex       int
	// contains filtered or unexported fields
}

type DeregistrationCertificate added in v0.86.0

type DeregistrationCertificate struct {
	cbor.StructAsArray
	cbor.DecodeStoreCbor
	CertType        uint
	StakeCredential StakeCredential
	Amount          int64
}

func (*DeregistrationCertificate) UnmarshalCBOR added in v0.86.0

func (c *DeregistrationCertificate) UnmarshalCBOR(
	cborData []byte,
) error

func (*DeregistrationCertificate) Utxorpc added in v0.86.0

type DeregistrationDrepCertificate added in v0.86.0

type DeregistrationDrepCertificate struct {
	cbor.StructAsArray
	cbor.DecodeStoreCbor
	CertType       uint
	DrepCredential StakeCredential
	Amount         int64
}

func (*DeregistrationDrepCertificate) UnmarshalCBOR added in v0.86.0

func (c *DeregistrationDrepCertificate) UnmarshalCBOR(
	cborData []byte,
) error

func (*DeregistrationDrepCertificate) Utxorpc added in v0.86.0

type Drep added in v0.86.0

type Drep struct {
	Type       int
	Credential []byte
}

func (*Drep) UnmarshalCBOR added in v0.86.0

func (d *Drep) UnmarshalCBOR(data []byte) error

type Era

type Era struct {
	Id   uint8
	Name string
}

func GetEraById

func GetEraById(eraId uint8) Era

type EraMismatch

type EraMismatch struct {
	cbor.StructAsArray
	LedgerEra uint8
	OtherEra  uint8
}

func (*EraMismatch) Error

func (e *EraMismatch) Error() string

type ExUnit added in v0.80.0

type ExUnit struct {
	cbor.StructAsArray
	Mem   uint
	Steps uint
}

type ExUnitPrice added in v0.80.0

type ExUnitPrice struct {
	cbor.StructAsArray
	MemPrice  uint
	StepPrice uint
}

type ExUnitsTooBigUtxo

type ExUnitsTooBigUtxo struct {
	UtxoFailureErrorBase
	MaxAllowed int
	Supplied   int
}

func (*ExUnitsTooBigUtxo) Error

func (e *ExUnitsTooBigUtxo) Error() string

type FeeTooSmallUtxo

type FeeTooSmallUtxo struct {
	UtxoFailureErrorBase
	MinimumFee  uint64
	SuppliedFee uint64
}

func (*FeeTooSmallUtxo) Error

func (e *FeeTooSmallUtxo) Error() string

type GenericError

type GenericError struct {
	Value interface{}
	Cbor  []byte
}

func (*GenericError) Error

func (e *GenericError) Error() string

func (*GenericError) UnmarshalCBOR

func (e *GenericError) UnmarshalCBOR(data []byte) error

type GenesisKeyDelegationCertificate added in v0.84.0

type GenesisKeyDelegationCertificate struct {
	cbor.StructAsArray
	cbor.DecodeStoreCbor
	CertType            uint
	GenesisHash         []byte
	GenesisDelegateHash []byte
	VrfKeyHash          VrfKeyHash
}

func (*GenesisKeyDelegationCertificate) UnmarshalCBOR added in v0.84.0

func (c *GenesisKeyDelegationCertificate) UnmarshalCBOR(cborData []byte) error

func (*GenesisKeyDelegationCertificate) Utxorpc added in v0.84.0

type GovAction added in v0.85.0

type GovAction interface {
	// contains filtered or unexported methods
}

type GovActionId added in v0.85.0

type GovActionId struct {
	cbor.StructAsArray
	TransactionId [32]byte
	GovActionIdx  uint32
}

type GovActionWrapper added in v0.85.0

type GovActionWrapper struct {
	Type   uint
	Action GovAction
}

func (*GovActionWrapper) MarshalCBOR added in v0.85.0

func (g *GovActionWrapper) MarshalCBOR() ([]byte, error)

func (*GovActionWrapper) UnmarshalCBOR added in v0.85.0

func (g *GovActionWrapper) UnmarshalCBOR(data []byte) error

type GovAnchor added in v0.85.0

type GovAnchor struct {
	cbor.StructAsArray
	Url      string
	DataHash [32]byte
}

type HardForkInitiationGovAction added in v0.85.0

type HardForkInitiationGovAction struct {
	cbor.StructAsArray
	Type            uint
	ActionId        *GovActionId
	ProtocolVersion struct {
		cbor.StructAsArray
		Major uint
		Minor uint
	}
}

type InfoGovAction added in v0.85.0

type InfoGovAction struct {
	cbor.StructAsArray
	Type uint
}

type InputSetEmptyUtxo

type InputSetEmptyUtxo struct {
	UtxoFailureErrorBase
}

func (*InputSetEmptyUtxo) Error

func (e *InputSetEmptyUtxo) Error() string

type InsufficientCollateral

type InsufficientCollateral struct {
	UtxoFailureErrorBase
	BalanceComputed    uint64
	RequiredCollateral uint64
}

func (*InsufficientCollateral) Error

func (e *InsufficientCollateral) Error() string

type IssuerVkey added in v0.58.0

type IssuerVkey [32]byte

IssuerVkey represents the verification key for the stake pool that minted a block

func (IssuerVkey) Hash added in v0.58.0

func (i IssuerVkey) Hash() Blake2b224

func (IssuerVkey) PoolId added in v0.58.0

func (i IssuerVkey) PoolId() string

type MaryBlock

type MaryBlock struct {
	cbor.StructAsArray
	cbor.DecodeStoreCbor
	Header                 *MaryBlockHeader
	TransactionBodies      []MaryTransactionBody
	TransactionWitnessSets []MaryTransactionWitnessSet
	TransactionMetadataSet map[uint]*cbor.LazyValue
}

func NewMaryBlockFromCbor

func NewMaryBlockFromCbor(data []byte) (*MaryBlock, error)

func (*MaryBlock) BlockBodySize added in v0.57.0

func (b *MaryBlock) BlockBodySize() uint64

func (*MaryBlock) BlockNumber

func (b *MaryBlock) BlockNumber() uint64

func (*MaryBlock) Era

func (b *MaryBlock) Era() Era

func (*MaryBlock) Hash

func (b *MaryBlock) Hash() string

func (*MaryBlock) IssuerVkey added in v0.57.0

func (b *MaryBlock) IssuerVkey() IssuerVkey

func (*MaryBlock) SlotNumber

func (b *MaryBlock) SlotNumber() uint64

func (*MaryBlock) Transactions

func (b *MaryBlock) Transactions() []Transaction

func (*MaryBlock) UnmarshalCBOR

func (b *MaryBlock) UnmarshalCBOR(cborData []byte) error

func (*MaryBlock) Utxorpc added in v0.72.0

func (b *MaryBlock) Utxorpc() *utxorpc.Block

type MaryBlockHeader

type MaryBlockHeader struct {
	ShelleyBlockHeader
}

func (*MaryBlockHeader) Era

func (h *MaryBlockHeader) Era() Era

type MaryProtocolParameterUpdate added in v0.80.0

type MaryProtocolParameterUpdate struct {
	AllegraProtocolParameterUpdate
}

type MaryProtocolParameters added in v0.80.0

type MaryProtocolParameters struct {
	AllegraProtocolParameters
}

type MaryTransaction

type MaryTransaction struct {
	cbor.StructAsArray
	cbor.DecodeStoreCbor
	Body       MaryTransactionBody
	WitnessSet MaryTransactionWitnessSet
	TxMetadata *cbor.LazyValue
}

func NewMaryTransactionFromCbor

func NewMaryTransactionFromCbor(data []byte) (*MaryTransaction, error)

func (MaryTransaction) AssetMint added in v0.85.0

func (MaryTransaction) AuxDataHash added in v0.85.0

func (t MaryTransaction) AuxDataHash() *Blake2b256

func (*MaryTransaction) Cbor added in v0.56.0

func (t *MaryTransaction) Cbor() []byte

func (MaryTransaction) Certificates added in v0.84.0

func (t MaryTransaction) Certificates() []Certificate

func (MaryTransaction) Collateral added in v0.82.0

func (t MaryTransaction) Collateral() []TransactionInput

func (MaryTransaction) CollateralReturn added in v0.82.0

func (t MaryTransaction) CollateralReturn() TransactionOutput

func (MaryTransaction) Consumed added in v0.82.0

func (t MaryTransaction) Consumed() []TransactionInput

func (MaryTransaction) CurrentTreasuryValue added in v0.86.0

func (t MaryTransaction) CurrentTreasuryValue() int64

func (MaryTransaction) Donation added in v0.86.0

func (t MaryTransaction) Donation() uint64

func (MaryTransaction) Fee added in v0.57.0

func (t MaryTransaction) Fee() uint64

func (MaryTransaction) Hash added in v0.46.0

func (t MaryTransaction) Hash() string

func (MaryTransaction) Inputs added in v0.46.0

func (t MaryTransaction) Inputs() []TransactionInput

func (MaryTransaction) IsValid added in v0.74.0

func (t MaryTransaction) IsValid() bool

func (MaryTransaction) Metadata

func (t MaryTransaction) Metadata() *cbor.LazyValue

func (MaryTransaction) Outputs added in v0.46.0

func (t MaryTransaction) Outputs() []TransactionOutput

func (MaryTransaction) Produced added in v0.82.0

func (t MaryTransaction) Produced() []TransactionOutput

func (MaryTransaction) ProposalProcedures added in v0.85.0

func (t MaryTransaction) ProposalProcedures() []ProposalProcedure

func (*MaryTransaction) ProtocolParametersUpdate added in v0.81.0

func (t *MaryTransaction) ProtocolParametersUpdate() map[Blake2b224]any

func (MaryTransaction) ReferenceInputs added in v0.76.0

func (t MaryTransaction) ReferenceInputs() []TransactionInput

func (MaryTransaction) RequiredSigners added in v0.85.0

func (t MaryTransaction) RequiredSigners() []Blake2b224

func (MaryTransaction) ScriptDataHash added in v0.85.0

func (t MaryTransaction) ScriptDataHash() *Blake2b256

func (MaryTransaction) TTL added in v0.57.0

func (t MaryTransaction) TTL() uint64

func (MaryTransaction) TotalCollateral added in v0.85.0

func (t MaryTransaction) TotalCollateral() uint64

func (*MaryTransaction) Utxorpc added in v0.72.0

func (t *MaryTransaction) Utxorpc() *utxorpc.Tx

func (MaryTransaction) ValidityIntervalStart added in v0.85.0

func (t MaryTransaction) ValidityIntervalStart() uint64

func (MaryTransaction) VotingProcedures added in v0.85.0

func (t MaryTransaction) VotingProcedures() VotingProcedures

func (MaryTransaction) Withdrawals added in v0.85.0

func (t MaryTransaction) Withdrawals() map[*Address]uint64

type MaryTransactionBody

type MaryTransactionBody struct {
	AllegraTransactionBody
	Update struct {
		cbor.StructAsArray
		ProtocolParamUpdates map[Blake2b224]MaryProtocolParameterUpdate
		Epoch                uint64
	} `cbor:"6,keyasint,omitempty"`
	TxOutputs []MaryTransactionOutput         `cbor:"1,keyasint,omitempty"`
	TxMint    *MultiAsset[MultiAssetTypeMint] `cbor:"9,keyasint,omitempty"`
}

func NewMaryTransactionBodyFromCbor

func NewMaryTransactionBodyFromCbor(data []byte) (*MaryTransactionBody, error)

func (*MaryTransactionBody) AssetMint added in v0.85.0

func (*MaryTransactionBody) Outputs

func (b *MaryTransactionBody) Outputs() []TransactionOutput

func (*MaryTransactionBody) UnmarshalCBOR

func (b *MaryTransactionBody) UnmarshalCBOR(cborData []byte) error

type MaryTransactionOutput

type MaryTransactionOutput struct {
	cbor.StructAsArray
	cbor.DecodeStoreCbor
	OutputAddress Address
	OutputAmount  MaryTransactionOutputValue
}

func NewMaryTransactionOutputFromCbor added in v0.69.0

func NewMaryTransactionOutputFromCbor(
	data []byte,
) (*MaryTransactionOutput, error)

func (MaryTransactionOutput) Address

func (o MaryTransactionOutput) Address() Address

func (MaryTransactionOutput) Amount

func (o MaryTransactionOutput) Amount() uint64

func (MaryTransactionOutput) Assets added in v0.43.0

func (MaryTransactionOutput) Datum added in v0.46.0

func (MaryTransactionOutput) DatumHash added in v0.46.0

func (o MaryTransactionOutput) DatumHash() *Blake2b256

func (MaryTransactionOutput) MarshalJSON added in v0.44.0

func (o MaryTransactionOutput) MarshalJSON() ([]byte, error)

func (MaryTransactionOutput) Utxorpc added in v0.72.0

func (o MaryTransactionOutput) Utxorpc() *utxorpc.TxOutput

type MaryTransactionOutputValue added in v0.42.0

type MaryTransactionOutputValue struct {
	cbor.StructAsArray
	Amount uint64
	// We use a pointer here to allow it to be nil
	Assets *MultiAsset[MultiAssetTypeOutput]
}

func (*MaryTransactionOutputValue) MarshalCBOR added in v0.42.0

func (v *MaryTransactionOutputValue) MarshalCBOR() ([]byte, error)

func (*MaryTransactionOutputValue) UnmarshalCBOR added in v0.42.0

func (v *MaryTransactionOutputValue) UnmarshalCBOR(data []byte) error

type MaryTransactionWitnessSet added in v0.80.0

type MaryTransactionWitnessSet struct {
	ShelleyTransactionWitnessSet
	Script        []interface{} `cbor:"4,keyasint,omitempty"`
	PlutusScripts []interface{} `cbor:"5,keyasint,omitempty"`
}

type MaxTxSizeUtxo

type MaxTxSizeUtxo struct {
	UtxoFailureErrorBase
	ActualSize int
	MaxSize    int
}

func (*MaxTxSizeUtxo) Error

func (e *MaxTxSizeUtxo) Error() string

type MirSource added in v0.84.0

type MirSource int32
const (
	MirSourceUnspecified MirSource = 0
	MirSourceReserves    MirSource = 1
	MirSourceTreasury    MirSource = 2
)

type MoveInstantaneousRewardsCertificate added in v0.84.0

type MoveInstantaneousRewardsCertificate struct {
	cbor.StructAsArray
	cbor.DecodeStoreCbor
	CertType uint
	Reward   MoveInstantaneousRewardsCertificateReward
}

func (*MoveInstantaneousRewardsCertificate) UnmarshalCBOR added in v0.84.0

func (c *MoveInstantaneousRewardsCertificate) UnmarshalCBOR(
	cborData []byte,
) error

func (*MoveInstantaneousRewardsCertificate) Utxorpc added in v0.84.0

type MoveInstantaneousRewardsCertificateReward added in v0.84.0

type MoveInstantaneousRewardsCertificateReward struct {
	Source   uint
	Rewards  map[*StakeCredential]uint64
	OtherPot uint64
}

func (*MoveInstantaneousRewardsCertificateReward) UnmarshalCBOR added in v0.84.0

func (r *MoveInstantaneousRewardsCertificateReward) UnmarshalCBOR(
	data []byte,
) error

type MultiAsset added in v0.43.0

type MultiAsset[T MultiAssetTypeOutput | MultiAssetTypeMint] struct {
	// contains filtered or unexported fields
}

MultiAsset represents a collection of policies, assets, and quantities. It's used for TX outputs (uint64) and TX asset minting (int64 to allow for negative values for burning)

func (*MultiAsset[T]) Asset added in v0.43.0

func (m *MultiAsset[T]) Asset(policyId Blake2b224, assetName []byte) T

func (*MultiAsset[T]) Assets added in v0.43.0

func (m *MultiAsset[T]) Assets(policyId Blake2b224) [][]byte

func (*MultiAsset[T]) MarshalCBOR added in v0.43.0

func (m *MultiAsset[T]) MarshalCBOR() ([]byte, error)

func (MultiAsset[T]) MarshalJSON added in v0.44.0

func (m MultiAsset[T]) MarshalJSON() ([]byte, error)

func (*MultiAsset[T]) Policies added in v0.43.0

func (m *MultiAsset[T]) Policies() []Blake2b224

func (*MultiAsset[T]) UnmarshalCBOR added in v0.43.0

func (m *MultiAsset[T]) UnmarshalCBOR(data []byte) error

type MultiAssetTypeMint added in v0.44.0

type MultiAssetTypeMint = int64

type MultiAssetTypeOutput added in v0.44.0

type MultiAssetTypeOutput = uint64

type NewConstitutionGovAction added in v0.85.0

type NewConstitutionGovAction struct {
	cbor.StructAsArray
	Type         uint
	ActionId     *GovActionId
	Constitution struct {
		cbor.StructAsArray
		Anchor     GovAnchor
		ScriptHash []byte
	}
}

type NewErrorFromCborFunc

type NewErrorFromCborFunc func([]byte) (error, error)

Helper type to make the code a little cleaner

type NoCollateralInputs

type NoCollateralInputs struct {
	UtxoFailureErrorBase
}

func (*NoCollateralInputs) Error

func (e *NoCollateralInputs) Error() string

type NoConfidenceGovAction added in v0.85.0

type NoConfidenceGovAction struct {
	cbor.StructAsArray
	Type     uint
	ActionId *GovActionId
}

type Nonce added in v0.80.0

type Nonce struct {
	cbor.StructAsArray
	Type  uint
	Value [32]byte
}

func (*Nonce) UnmarshalCBOR added in v0.80.0

func (n *Nonce) UnmarshalCBOR(data []byte) error

type OutputBootAddrAttrsTooBig

type OutputBootAddrAttrsTooBig struct {
	UtxoFailureErrorBase
	Outputs []TxOut
}

func (*OutputBootAddrAttrsTooBig) Error

func (e *OutputBootAddrAttrsTooBig) Error() string

type OutputTooBigUtxo

type OutputTooBigUtxo struct {
	UtxoFailureErrorBase
	Outputs []struct {
		ActualSize int
		MaxSize    int
		Output     TxOut
	}
}

func (*OutputTooBigUtxo) Error

func (e *OutputTooBigUtxo) Error() string

type OutputTooSmallUtxo

type OutputTooSmallUtxo struct {
	UtxoFailureErrorBase
	Outputs []TxOut
}

func (*OutputTooSmallUtxo) Error

func (e *OutputTooSmallUtxo) Error() string

type OutsideForecast

type OutsideForecast struct {
	UtxoFailureErrorBase
	Slot uint32
}

func (*OutsideForecast) Error

func (e *OutsideForecast) Error() string

type OutsideValidityIntervalUtxo

type OutsideValidityIntervalUtxo struct {
	UtxoFailureErrorBase
	ValidityInterval cbor.Value
	Slot             uint32
}

func (*OutsideValidityIntervalUtxo) Error

type ParameterChangeGovAction added in v0.85.0

type ParameterChangeGovAction struct {
	cbor.StructAsArray
	Type        uint
	ActionId    *GovActionId
	ParamUpdate BabbageProtocolParameterUpdate // TODO: use Conway params update type
	PolicyHash  []byte
}

type PoolId added in v0.77.0

type PoolId [28]byte

func NewPoolIdFromBech32 added in v0.77.0

func NewPoolIdFromBech32(poolId string) (PoolId, error)

func (PoolId) String added in v0.77.0

func (p PoolId) String() string

type PoolKeyHash added in v0.84.0

type PoolKeyHash Blake2b224

type PoolMetadata added in v0.84.0

type PoolMetadata struct {
	cbor.StructAsArray
	Url  string
	Hash PoolMetadataHash
}

func (*PoolMetadata) Utxorpc added in v0.84.0

func (p *PoolMetadata) Utxorpc() *utxorpc.PoolMetadata

type PoolMetadataHash added in v0.84.0

type PoolMetadataHash Blake2b256

type PoolRegistrationCertificate added in v0.84.0

type PoolRegistrationCertificate struct {
	cbor.StructAsArray
	cbor.DecodeStoreCbor
	CertType      uint
	Operator      PoolKeyHash
	VrfKeyHash    VrfKeyHash
	Pledge        uint64
	Cost          uint64
	Margin        cbor.Rat
	RewardAccount AddrKeyHash
	PoolOwners    []AddrKeyHash
	Relays        []PoolRelay
	PoolMetadata  *PoolMetadata
}

func (*PoolRegistrationCertificate) UnmarshalCBOR added in v0.84.0

func (c *PoolRegistrationCertificate) UnmarshalCBOR(cborData []byte) error

func (*PoolRegistrationCertificate) Utxorpc added in v0.84.0

type PoolRelay added in v0.84.0

type PoolRelay struct {
	Type     int
	Port     *uint32
	Ipv4     *net.IP
	Ipv6     *net.IP
	Hostname *string
}

func (*PoolRelay) UnmarshalCBOR added in v0.84.0

func (p *PoolRelay) UnmarshalCBOR(data []byte) error

func (*PoolRelay) Utxorpc added in v0.84.0

func (p *PoolRelay) Utxorpc() *utxorpc.Relay

type PoolRetirementCertificate added in v0.84.0

type PoolRetirementCertificate struct {
	cbor.StructAsArray
	cbor.DecodeStoreCbor
	CertType    uint
	PoolKeyHash PoolKeyHash
	Epoch       uint64
}

func (*PoolRetirementCertificate) UnmarshalCBOR added in v0.84.0

func (c *PoolRetirementCertificate) UnmarshalCBOR(cborData []byte) error

func (*PoolRetirementCertificate) Utxorpc added in v0.84.0

type ProposalProcedure added in v0.85.0

type ProposalProcedure struct {
	cbor.StructAsArray
	Deposit       uint64
	RewardAccount Address
	GovAction     GovActionWrapper
	Anchor        GovAnchor
}

type RegisCert added in v0.84.0

type RegisCert struct {
	Flag         int
	RegisPoolId  string
	RegisPoolVrf string
	TxIndex      int
	// contains filtered or unexported fields
}

type RegistrationCertificate added in v0.86.0

type RegistrationCertificate struct {
	cbor.StructAsArray
	cbor.DecodeStoreCbor
	CertType        uint
	StakeCredential StakeCredential
	Amount          int64
}

func (*RegistrationCertificate) UnmarshalCBOR added in v0.86.0

func (c *RegistrationCertificate) UnmarshalCBOR(
	cborData []byte,
) error

func (*RegistrationCertificate) Utxorpc added in v0.86.0

type RegistrationDrepCertificate added in v0.86.0

type RegistrationDrepCertificate struct {
	cbor.StructAsArray
	cbor.DecodeStoreCbor
	CertType       uint
	DrepCredential StakeCredential
	Amount         int64
	Anchor         *GovAnchor
}

func (*RegistrationDrepCertificate) UnmarshalCBOR added in v0.86.0

func (c *RegistrationDrepCertificate) UnmarshalCBOR(
	cborData []byte,
) error

func (*RegistrationDrepCertificate) Utxorpc added in v0.86.0

type ResignCommitteeColdCertificate added in v0.86.0

type ResignCommitteeColdCertificate struct {
	cbor.StructAsArray
	cbor.DecodeStoreCbor
	CertType       uint
	ColdCredential StakeCredential
	Anchor         *GovAnchor
}

func (*ResignCommitteeColdCertificate) UnmarshalCBOR added in v0.86.0

func (c *ResignCommitteeColdCertificate) UnmarshalCBOR(
	cborData []byte,
) error

func (*ResignCommitteeColdCertificate) Utxorpc added in v0.86.0

type ScriptsNotPaidUtxo

type ScriptsNotPaidUtxo struct {
	UtxoFailureErrorBase
	// TODO: determine content/structure of this value
	Value cbor.Value
}

func (*ScriptsNotPaidUtxo) Error

func (e *ScriptsNotPaidUtxo) Error() string

type ShelleyBlock

type ShelleyBlock struct {
	cbor.StructAsArray
	cbor.DecodeStoreCbor
	Header                 *ShelleyBlockHeader
	TransactionBodies      []ShelleyTransactionBody
	TransactionWitnessSets []ShelleyTransactionWitnessSet
	TransactionMetadataSet map[uint]*cbor.LazyValue
}

func NewShelleyBlockFromCbor

func NewShelleyBlockFromCbor(data []byte) (*ShelleyBlock, error)

func (*ShelleyBlock) BlockBodySize added in v0.57.0

func (b *ShelleyBlock) BlockBodySize() uint64

func (*ShelleyBlock) BlockNumber

func (b *ShelleyBlock) BlockNumber() uint64

func (*ShelleyBlock) Era

func (b *ShelleyBlock) Era() Era

func (*ShelleyBlock) Hash

func (b *ShelleyBlock) Hash() string

func (*ShelleyBlock) IssuerVkey added in v0.57.0

func (b *ShelleyBlock) IssuerVkey() IssuerVkey

func (*ShelleyBlock) SlotNumber

func (b *ShelleyBlock) SlotNumber() uint64

func (*ShelleyBlock) Transactions

func (b *ShelleyBlock) Transactions() []Transaction

func (*ShelleyBlock) UnmarshalCBOR

func (b *ShelleyBlock) UnmarshalCBOR(cborData []byte) error

func (*ShelleyBlock) Utxorpc added in v0.72.0

func (b *ShelleyBlock) Utxorpc() *utxorpc.Block

type ShelleyBlockHeader

type ShelleyBlockHeader struct {
	cbor.StructAsArray
	cbor.DecodeStoreCbor

	Body struct {
		cbor.StructAsArray
		BlockNumber          uint64
		Slot                 uint64
		PrevHash             Blake2b256
		IssuerVkey           IssuerVkey
		VrfKey               []byte
		NonceVrf             interface{}
		LeaderVrf            interface{}
		BlockBodySize        uint64
		BlockBodyHash        Blake2b256
		OpCertHotVkey        []byte
		OpCertSequenceNumber uint32
		OpCertKesPeriod      uint32
		OpCertSignature      []byte
		ProtoMajorVersion    uint64
		ProtoMinorVersion    uint64
	}
	Signature interface{}
	// contains filtered or unexported fields
}

func NewShelleyBlockHeaderFromCbor

func NewShelleyBlockHeaderFromCbor(data []byte) (*ShelleyBlockHeader, error)

func (*ShelleyBlockHeader) BlockBodySize added in v0.57.0

func (h *ShelleyBlockHeader) BlockBodySize() uint64

func (*ShelleyBlockHeader) BlockNumber

func (h *ShelleyBlockHeader) BlockNumber() uint64

func (*ShelleyBlockHeader) Era

func (h *ShelleyBlockHeader) Era() Era

func (*ShelleyBlockHeader) Hash

func (h *ShelleyBlockHeader) Hash() string

func (*ShelleyBlockHeader) IssuerVkey added in v0.57.0

func (h *ShelleyBlockHeader) IssuerVkey() IssuerVkey

func (*ShelleyBlockHeader) SlotNumber

func (h *ShelleyBlockHeader) SlotNumber() uint64

func (*ShelleyBlockHeader) UnmarshalCBOR

func (h *ShelleyBlockHeader) UnmarshalCBOR(cborData []byte) error

type ShelleyProtocolParameterUpdate added in v0.79.0

type ShelleyProtocolParameterUpdate struct {
	MinFeeA            uint      `cbor:"0,keyasint"`
	MinFeeB            uint      `cbor:"1,keyasint"`
	MaxBlockBodySize   uint      `cbor:"2,keyasint"`
	MaxTxSize          uint      `cbor:"3,keyasint"`
	MaxBlockHeaderSize uint      `cbor:"4,keyasint"`
	KeyDeposit         uint      `cbor:"5,keyasint"`
	PoolDeposit        uint      `cbor:"6,keyasint"`
	MaxEpoch           uint      `cbor:"7,keyasint"`
	NOpt               uint      `cbor:"8,keyasint"`
	A0                 *cbor.Rat `cbor:"9,keyasint"`
	Rho                *cbor.Rat `cbor:"10,keyasint"`
	Tau                *cbor.Rat `cbor:"11,keyasint"`
	Decentralization   *cbor.Rat `cbor:"12,keyasint"`
	Nonce              *Nonce    `cbor:"13,keyasint"`
	ProtocolVersion    struct {
		cbor.StructAsArray
		Major uint
		Minor uint
	} `cbor:"14,keyasint"`
	MinUtxoValue uint `cbor:"15,keyasint"`
}

type ShelleyProtocolParameters added in v0.79.0

type ShelleyProtocolParameters struct {
	cbor.StructAsArray
	MinFeeA            uint
	MinFeeB            uint
	MaxBlockBodySize   uint
	MaxTxSize          uint
	MaxBlockHeaderSize uint
	KeyDeposit         uint
	PoolDeposit        uint
	MaxEpoch           uint
	NOpt               uint
	A0                 *cbor.Rat
	Rho                *cbor.Rat
	Tau                *cbor.Rat
	Decentralization   *cbor.Rat
	Nonce              *cbor.Rat
	ProtocolMajor      uint
	ProtocolMinor      uint
	MinUtxoValue       uint
}

type ShelleyTransaction

type ShelleyTransaction struct {
	cbor.StructAsArray
	cbor.DecodeStoreCbor
	Body       ShelleyTransactionBody
	WitnessSet ShelleyTransactionWitnessSet
	TxMetadata *cbor.LazyValue
}

func NewShelleyTransactionFromCbor

func NewShelleyTransactionFromCbor(data []byte) (*ShelleyTransaction, error)

func (ShelleyTransaction) AssetMint added in v0.85.0

func (ShelleyTransaction) AuxDataHash added in v0.85.0

func (t ShelleyTransaction) AuxDataHash() *Blake2b256

func (*ShelleyTransaction) Cbor added in v0.56.0

func (t *ShelleyTransaction) Cbor() []byte

func (ShelleyTransaction) Certificates added in v0.84.0

func (t ShelleyTransaction) Certificates() []Certificate

func (ShelleyTransaction) Collateral added in v0.82.0

func (t ShelleyTransaction) Collateral() []TransactionInput

func (ShelleyTransaction) CollateralReturn added in v0.82.0

func (t ShelleyTransaction) CollateralReturn() TransactionOutput

func (ShelleyTransaction) Consumed added in v0.82.0

func (t ShelleyTransaction) Consumed() []TransactionInput

func (ShelleyTransaction) CurrentTreasuryValue added in v0.86.0

func (t ShelleyTransaction) CurrentTreasuryValue() int64

func (ShelleyTransaction) Donation added in v0.86.0

func (t ShelleyTransaction) Donation() uint64

func (ShelleyTransaction) Fee added in v0.57.0

func (t ShelleyTransaction) Fee() uint64

func (ShelleyTransaction) Hash added in v0.46.0

func (t ShelleyTransaction) Hash() string

func (ShelleyTransaction) Inputs added in v0.46.0

func (t ShelleyTransaction) Inputs() []TransactionInput

func (ShelleyTransaction) IsValid added in v0.74.0

func (t ShelleyTransaction) IsValid() bool

func (ShelleyTransaction) Metadata

func (t ShelleyTransaction) Metadata() *cbor.LazyValue

func (ShelleyTransaction) Outputs added in v0.46.0

func (t ShelleyTransaction) Outputs() []TransactionOutput

func (ShelleyTransaction) Produced added in v0.82.0

func (t ShelleyTransaction) Produced() []TransactionOutput

func (ShelleyTransaction) ProposalProcedures added in v0.85.0

func (t ShelleyTransaction) ProposalProcedures() []ProposalProcedure

func (*ShelleyTransaction) ProtocolParametersUpdate added in v0.81.0

func (t *ShelleyTransaction) ProtocolParametersUpdate() map[Blake2b224]any

func (ShelleyTransaction) ReferenceInputs added in v0.76.0

func (t ShelleyTransaction) ReferenceInputs() []TransactionInput

func (ShelleyTransaction) RequiredSigners added in v0.85.0

func (t ShelleyTransaction) RequiredSigners() []Blake2b224

func (ShelleyTransaction) ScriptDataHash added in v0.85.0

func (t ShelleyTransaction) ScriptDataHash() *Blake2b256

func (ShelleyTransaction) TTL added in v0.57.0

func (t ShelleyTransaction) TTL() uint64

func (ShelleyTransaction) TotalCollateral added in v0.85.0

func (t ShelleyTransaction) TotalCollateral() uint64

func (ShelleyTransaction) Utxorpc added in v0.72.0

func (t ShelleyTransaction) Utxorpc() *utxorpc.Tx

func (ShelleyTransaction) ValidityIntervalStart added in v0.85.0

func (t ShelleyTransaction) ValidityIntervalStart() uint64

func (ShelleyTransaction) VotingProcedures added in v0.85.0

func (t ShelleyTransaction) VotingProcedures() VotingProcedures

func (ShelleyTransaction) Withdrawals added in v0.85.0

func (t ShelleyTransaction) Withdrawals() map[*Address]uint64

type ShelleyTransactionBody

type ShelleyTransactionBody struct {
	cbor.DecodeStoreCbor

	TxInputs       []ShelleyTransactionInput  `cbor:"0,keyasint,omitempty"`
	TxOutputs      []ShelleyTransactionOutput `cbor:"1,keyasint,omitempty"`
	TxFee          uint64                     `cbor:"2,keyasint,omitempty"`
	Ttl            uint64                     `cbor:"3,keyasint,omitempty"`
	TxCertificates []CertificateWrapper       `cbor:"4,keyasint,omitempty"`
	TxWithdrawals  map[*Address]uint64        `cbor:"5,keyasint,omitempty"`
	Update         struct {
		cbor.StructAsArray
		ProtocolParamUpdates map[Blake2b224]ShelleyProtocolParameterUpdate
		Epoch                uint64
	} `cbor:"6,keyasint,omitempty"`
	TxAuxDataHash *Blake2b256 `cbor:"7,keyasint,omitempty"`
	// contains filtered or unexported fields
}

func NewShelleyTransactionBodyFromCbor

func NewShelleyTransactionBodyFromCbor(
	data []byte,
) (*ShelleyTransactionBody, error)

func (*ShelleyTransactionBody) AssetMint added in v0.85.0

func (*ShelleyTransactionBody) AuxDataHash added in v0.85.0

func (b *ShelleyTransactionBody) AuxDataHash() *Blake2b256

func (*ShelleyTransactionBody) Certificates

func (b *ShelleyTransactionBody) Certificates() []Certificate

func (*ShelleyTransactionBody) Collateral added in v0.82.0

func (b *ShelleyTransactionBody) Collateral() []TransactionInput

func (*ShelleyTransactionBody) CollateralReturn added in v0.82.0

func (b *ShelleyTransactionBody) CollateralReturn() TransactionOutput

func (*ShelleyTransactionBody) CurrentTreasuryValue added in v0.86.0

func (b *ShelleyTransactionBody) CurrentTreasuryValue() int64

func (*ShelleyTransactionBody) Donation added in v0.86.0

func (b *ShelleyTransactionBody) Donation() uint64

func (*ShelleyTransactionBody) Fee

func (b *ShelleyTransactionBody) Fee() uint64

func (*ShelleyTransactionBody) Hash

func (b *ShelleyTransactionBody) Hash() string

func (*ShelleyTransactionBody) Inputs

func (*ShelleyTransactionBody) Outputs

func (*ShelleyTransactionBody) ProposalProcedures added in v0.85.0

func (b *ShelleyTransactionBody) ProposalProcedures() []ProposalProcedure

func (*ShelleyTransactionBody) ReferenceInputs added in v0.76.0

func (b *ShelleyTransactionBody) ReferenceInputs() []TransactionInput

func (*ShelleyTransactionBody) RequiredSigners added in v0.85.0

func (b *ShelleyTransactionBody) RequiredSigners() []Blake2b224

func (*ShelleyTransactionBody) ScriptDataHash added in v0.85.0

func (b *ShelleyTransactionBody) ScriptDataHash() *Blake2b256

func (*ShelleyTransactionBody) TTL added in v0.57.0

func (b *ShelleyTransactionBody) TTL() uint64

func (*ShelleyTransactionBody) TotalCollateral added in v0.85.0

func (b *ShelleyTransactionBody) TotalCollateral() uint64

func (*ShelleyTransactionBody) UnmarshalCBOR

func (b *ShelleyTransactionBody) UnmarshalCBOR(cborData []byte) error

func (*ShelleyTransactionBody) Utxorpc added in v0.72.0

func (b *ShelleyTransactionBody) Utxorpc() *utxorpc.Tx

func (*ShelleyTransactionBody) ValidityIntervalStart added in v0.85.0

func (b *ShelleyTransactionBody) ValidityIntervalStart() uint64

func (*ShelleyTransactionBody) VotingProcedures added in v0.85.0

func (b *ShelleyTransactionBody) VotingProcedures() VotingProcedures

func (*ShelleyTransactionBody) Withdrawals

func (b *ShelleyTransactionBody) Withdrawals() map[*Address]uint64

type ShelleyTransactionInput

type ShelleyTransactionInput struct {
	cbor.StructAsArray
	TxId        Blake2b256
	OutputIndex uint32
}

func (ShelleyTransactionInput) Id

func (ShelleyTransactionInput) Index

func (i ShelleyTransactionInput) Index() uint32

func (ShelleyTransactionInput) MarshalJSON added in v0.44.0

func (i ShelleyTransactionInput) MarshalJSON() ([]byte, error)

func (ShelleyTransactionInput) String added in v0.44.0

func (i ShelleyTransactionInput) String() string

func (ShelleyTransactionInput) Utxorpc added in v0.72.0

type ShelleyTransactionOutput

type ShelleyTransactionOutput struct {
	cbor.StructAsArray
	cbor.DecodeStoreCbor
	OutputAddress Address `json:"address"`
	OutputAmount  uint64  `json:"amount"`
}

func NewShelleyTransactionOutputFromCbor added in v0.69.0

func NewShelleyTransactionOutputFromCbor(
	data []byte,
) (*ShelleyTransactionOutput, error)

func (ShelleyTransactionOutput) Address

func (o ShelleyTransactionOutput) Address() Address

func (ShelleyTransactionOutput) Amount

func (o ShelleyTransactionOutput) Amount() uint64

func (ShelleyTransactionOutput) Assets added in v0.43.0

func (ShelleyTransactionOutput) Datum added in v0.46.0

func (ShelleyTransactionOutput) DatumHash added in v0.46.0

func (o ShelleyTransactionOutput) DatumHash() *Blake2b256

func (ShelleyTransactionOutput) Utxorpc added in v0.72.0

type ShelleyTransactionWitnessSet

type ShelleyTransactionWitnessSet struct {
	cbor.DecodeStoreCbor
	VkeyWitnesses      []interface{} `cbor:"0,keyasint,omitempty"`
	MultisigScripts    []interface{} `cbor:"1,keyasint,omitempty"`
	BootstrapWitnesses []interface{} `cbor:"2,keyasint,omitempty"`
}

func (*ShelleyTransactionWitnessSet) UnmarshalCBOR added in v0.56.0

func (t *ShelleyTransactionWitnessSet) UnmarshalCBOR(cborData []byte) error

type ShelleyTxValidationError

type ShelleyTxValidationError struct {
	Era uint8
	Err ApplyTxError
}

func (*ShelleyTxValidationError) Error

func (e *ShelleyTxValidationError) Error() string

func (*ShelleyTxValidationError) UnmarshalCBOR

func (e *ShelleyTxValidationError) UnmarshalCBOR(data []byte) error

type StakeCredential added in v0.84.0

type StakeCredential struct {
	cbor.StructAsArray
	cbor.DecodeStoreCbor
	CredType   uint
	Credential []byte
}

func (*StakeCredential) Hash added in v0.87.0

func (c *StakeCredential) Hash() Blake2b224

func (*StakeCredential) Utxorpc added in v0.84.0

func (c *StakeCredential) Utxorpc() *utxorpc.StakeCredential

type StakeDelegationCertificate added in v0.84.0

type StakeDelegationCertificate struct {
	cbor.StructAsArray
	cbor.DecodeStoreCbor
	CertType        uint
	StakeCredential *StakeCredential
	PoolKeyHash     PoolKeyHash
}

func (*StakeDelegationCertificate) UnmarshalCBOR added in v0.84.0

func (c *StakeDelegationCertificate) UnmarshalCBOR(cborData []byte) error

func (*StakeDelegationCertificate) Utxorpc added in v0.84.0

type StakeDeregistrationCertificate added in v0.84.0

type StakeDeregistrationCertificate struct {
	cbor.StructAsArray
	cbor.DecodeStoreCbor
	CertType            uint
	StakeDeregistration StakeCredential
}

func (*StakeDeregistrationCertificate) UnmarshalCBOR added in v0.84.0

func (c *StakeDeregistrationCertificate) UnmarshalCBOR(cborData []byte) error

func (*StakeDeregistrationCertificate) Utxorpc added in v0.84.0

type StakeRegistrationCertificate added in v0.84.0

type StakeRegistrationCertificate struct {
	cbor.StructAsArray
	cbor.DecodeStoreCbor
	CertType          uint
	StakeRegistration StakeCredential
}

func (*StakeRegistrationCertificate) UnmarshalCBOR added in v0.84.0

func (c *StakeRegistrationCertificate) UnmarshalCBOR(cborData []byte) error

func (*StakeRegistrationCertificate) Utxorpc added in v0.84.0

type StakeRegistrationDelegationCertificate added in v0.86.0

type StakeRegistrationDelegationCertificate struct {
	cbor.StructAsArray
	cbor.DecodeStoreCbor
	CertType        uint
	StakeCredential StakeCredential
	PoolKeyHash     []byte
	Amount          int64
}

func (*StakeRegistrationDelegationCertificate) UnmarshalCBOR added in v0.86.0

func (c *StakeRegistrationDelegationCertificate) UnmarshalCBOR(
	cborData []byte,
) error

func (*StakeRegistrationDelegationCertificate) Utxorpc added in v0.86.0

type StakeVoteDelegationCertificate added in v0.86.0

type StakeVoteDelegationCertificate struct {
	cbor.StructAsArray
	cbor.DecodeStoreCbor
	CertType        uint
	StakeCredential StakeCredential
	PoolKeyHash     []byte
	Drep            Drep
}

func (*StakeVoteDelegationCertificate) UnmarshalCBOR added in v0.86.0

func (c *StakeVoteDelegationCertificate) UnmarshalCBOR(
	cborData []byte,
) error

func (*StakeVoteDelegationCertificate) Utxorpc added in v0.86.0

type StakeVoteRegistrationDelegationCertificate added in v0.86.0

type StakeVoteRegistrationDelegationCertificate struct {
	cbor.StructAsArray
	cbor.DecodeStoreCbor
	CertType        uint
	StakeCredential StakeCredential
	PoolKeyHash     []byte
	Drep            Drep
	Amount          int64
}

func (*StakeVoteRegistrationDelegationCertificate) UnmarshalCBOR added in v0.86.0

func (c *StakeVoteRegistrationDelegationCertificate) UnmarshalCBOR(
	cborData []byte,
) error

func (*StakeVoteRegistrationDelegationCertificate) Utxorpc added in v0.86.0

type Sum0KesSig added in v0.84.0

type Sum0KesSig []byte

func Sum0KesSigFromByte added in v0.84.0

func Sum0KesSigFromByte(sigBytes []byte) Sum0KesSig

func (Sum0KesSig) Verify added in v0.84.0

func (s Sum0KesSig) Verify(
	_ uint64,
	pubKey ed25519.PublicKey,
	msg []byte,
) bool

type SumXKesSig added in v0.84.0

type SumXKesSig struct {
	Depth                  uint64
	Sigma                  interface{}
	LeftHandSidePublicKey  ed25519.PublicKey
	RightHandSidePublicKey ed25519.PublicKey
}

func NewSumKesFromByte added in v0.84.0

func NewSumKesFromByte(depth uint64, fromByte []byte) SumXKesSig

func (SumXKesSig) Verify added in v0.84.0

func (s SumXKesSig) Verify(
	period uint64,
	pubKey ed25519.PublicKey,
	msg []byte,
) bool

type TooManyCollateralInputs

type TooManyCollateralInputs struct {
	UtxoFailureErrorBase
	MaxAllowed int
	Supplied   int
}

func (*TooManyCollateralInputs) Error

func (e *TooManyCollateralInputs) Error() string

type Transaction added in v0.46.0

type Transaction interface {
	TransactionBody
	Metadata() *cbor.LazyValue
	IsValid() bool
	Consumed() []TransactionInput
	Produced() []TransactionOutput
	ProtocolParametersUpdate() map[Blake2b224]any
}

func NewTransactionFromCbor

func NewTransactionFromCbor(txType uint, data []byte) (Transaction, error)

type TransactionBody

type TransactionBody interface {
	Cbor() []byte
	Fee() uint64
	Hash() string
	Inputs() []TransactionInput
	Outputs() []TransactionOutput
	TTL() uint64
	ValidityIntervalStart() uint64
	ReferenceInputs() []TransactionInput
	Collateral() []TransactionInput
	CollateralReturn() TransactionOutput
	TotalCollateral() uint64
	Certificates() []Certificate
	Withdrawals() map[*Address]uint64
	AuxDataHash() *Blake2b256
	RequiredSigners() []Blake2b224
	AssetMint() *MultiAsset[MultiAssetTypeMint]
	ScriptDataHash() *Blake2b256
	VotingProcedures() VotingProcedures
	ProposalProcedures() []ProposalProcedure
	CurrentTreasuryValue() int64
	Donation() uint64
	Utxorpc() *utxorpc.Tx
}

func NewTransactionBodyFromCbor

func NewTransactionBodyFromCbor(
	txType uint,
	data []byte,
) (TransactionBody, error)

type TransactionInput added in v0.43.0

type TransactionInput interface {
	Id() Blake2b256
	Index() uint32
	Utxorpc() *utxorpc.TxInput
}

type TransactionOutput added in v0.43.0

type TransactionOutput interface {
	Address() Address
	Amount() uint64
	Assets() *MultiAsset[MultiAssetTypeOutput]
	Datum() *cbor.LazyValue
	DatumHash() *Blake2b256
	Cbor() []byte
	Utxorpc() *utxorpc.TxOutput
}

func NewTransactionOutputFromCbor added in v0.69.0

func NewTransactionOutputFromCbor(data []byte) (TransactionOutput, error)

NewTransactionOutputFromCbor attempts to parse the provided arbitrary CBOR data as a transaction output from each of the eras, returning the first one that we can successfully decode

type TreasuryWithdrawalGovAction added in v0.85.0

type TreasuryWithdrawalGovAction struct {
	cbor.StructAsArray
	Type        uint
	Withdrawals map[*Address]uint64
	PolicyHash  []byte
}

type TriesToForgeADA

type TriesToForgeADA struct {
	UtxoFailureErrorBase
}

func (*TriesToForgeADA) Error

func (e *TriesToForgeADA) Error() string

type TxIn

type TxIn struct {
	cbor.StructAsArray
	Utxo cbor.ByteString
	TxIx uint8
}

func (*TxIn) String

func (e *TxIn) String() string

type TxOut

type TxOut struct {
	cbor.Value
}

func (*TxOut) String

func (t *TxOut) String() string

type UTXOOutput added in v0.84.0

type UTXOOutput struct {
	Flag        int
	TxHash      string
	OutputIndex string
	Tokens      []UTXOOutputToken
	DatumHex    string
	// contains filtered or unexported fields
}

type UTXOOutputToken added in v0.84.0

type UTXOOutputToken struct {
	Flag           int
	TokenAssetName string
	TokenValue     string
	// contains filtered or unexported fields
}

func ExtractTokens added in v0.84.0

func ExtractTokens(output TransactionOutput) ([]UTXOOutputToken, error)

type UpdateCommitteeGovAction added in v0.85.0

type UpdateCommitteeGovAction struct {
	cbor.StructAsArray
	Type        uint
	ActionId    *GovActionId
	Credentials []StakeCredential
	CredEpochs  map[*StakeCredential]uint
	Unknown     cbor.Rat
}

type UpdateDrepCertificate added in v0.86.0

type UpdateDrepCertificate struct {
	cbor.StructAsArray
	cbor.DecodeStoreCbor
	CertType       uint
	DrepCredential StakeCredential
	Anchor         *GovAnchor
}

func (*UpdateDrepCertificate) UnmarshalCBOR added in v0.86.0

func (c *UpdateDrepCertificate) UnmarshalCBOR(
	cborData []byte,
) error

func (*UpdateDrepCertificate) Utxorpc added in v0.86.0

type UtxoFailure

type UtxoFailure struct {
	cbor.StructAsArray
	Era uint8
	Err error
}

func (*UtxoFailure) Error

func (e *UtxoFailure) Error() string

func (*UtxoFailure) UnmarshalCBOR

func (e *UtxoFailure) UnmarshalCBOR(data []byte) error

type UtxoFailureErrorBase

type UtxoFailureErrorBase struct {
	cbor.StructAsArray
	Type uint8
}

type UtxosFailure

type UtxosFailure struct {
	UtxoFailureErrorBase
	Err GenericError
}

func (*UtxosFailure) Error

func (e *UtxosFailure) Error() string

type UtxowFailure

type UtxowFailure struct {
	cbor.StructAsArray
	Err error
}

func (*UtxowFailure) Error

func (e *UtxowFailure) Error() string

func (*UtxowFailure) UnmarshalCBOR

func (e *UtxowFailure) UnmarshalCBOR(data []byte) error

type ValueNotConservedUtxo

type ValueNotConservedUtxo struct {
	UtxoFailureErrorBase
	Consumed uint64
	Produced uint64
}

func (*ValueNotConservedUtxo) Error

func (e *ValueNotConservedUtxo) Error() string

type VoteDelegationCertificate added in v0.86.0

type VoteDelegationCertificate struct {
	cbor.StructAsArray
	cbor.DecodeStoreCbor
	CertType        uint
	StakeCredential StakeCredential
	Drep            Drep
}

func (*VoteDelegationCertificate) UnmarshalCBOR added in v0.86.0

func (c *VoteDelegationCertificate) UnmarshalCBOR(
	cborData []byte,
) error

func (*VoteDelegationCertificate) Utxorpc added in v0.86.0

type VoteRegistrationDelegationCertificate added in v0.86.0

type VoteRegistrationDelegationCertificate struct {
	cbor.StructAsArray
	cbor.DecodeStoreCbor
	CertType        uint
	StakeCredential StakeCredential
	Drep            Drep
	Amount          int64
}

func (*VoteRegistrationDelegationCertificate) UnmarshalCBOR added in v0.86.0

func (c *VoteRegistrationDelegationCertificate) UnmarshalCBOR(
	cborData []byte,
) error

func (*VoteRegistrationDelegationCertificate) Utxorpc added in v0.86.0

type Voter added in v0.85.0

type Voter struct {
	cbor.StructAsArray
	Type uint8
	Hash [28]byte
}

type VotingProcedure added in v0.85.0

type VotingProcedure struct {
	cbor.StructAsArray
	Vote   uint8
	Anchor *GovAnchor
}

type VotingProcedures added in v0.85.0

type VotingProcedures map[*Voter]map[*GovActionId]VotingProcedure

VotingProcedures is a convenience type to avoid needing to duplicate the full type definition everywhere

type VrfKeyHash added in v0.84.0

type VrfKeyHash Blake2b256

type WrongNetwork

type WrongNetwork struct {
	UtxoFailureErrorBase
	ExpectedNetworkId int
	Addresses         cbor.Value
}

func (*WrongNetwork) Error

func (e *WrongNetwork) Error() string

type WrongNetworkInTxBody

type WrongNetworkInTxBody struct {
	UtxoFailureErrorBase
	ActualNetworkId      int
	TransactionNetworkId int
}

func (*WrongNetworkInTxBody) Error

func (e *WrongNetworkInTxBody) Error() string

type WrongNetworkWithdrawal

type WrongNetworkWithdrawal struct {
	UtxoFailureErrorBase
	ExpectedNetworkId int
	RewardAccounts    cbor.Value
}

func (*WrongNetworkWithdrawal) Error

func (e *WrongNetworkWithdrawal) Error() string

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL