mary

package
v0.126.0 Latest Latest
Warning

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

Go to latest
Published: Jul 3, 2025 License: Apache-2.0 Imports: 9 Imported by: 1

Documentation

Index

Constants

View Source
const (
	EraIdMary   = 3
	EraNameMary = "Mary"

	BlockTypeMary = 4

	BlockHeaderTypeMary = 3

	TxTypeMary = 3
)

Variables

View Source
var EraMary = common.Era{
	Id:   EraIdMary,
	Name: EraNameMary,
}

Functions

func UtxoValidateBadInputsUtxo added in v0.109.0

func UtxoValidateBadInputsUtxo(
	tx common.Transaction,
	slot uint64,
	ls common.LedgerState,
	pp common.ProtocolParameters,
) error

func UtxoValidateFeeTooSmallUtxo added in v0.109.0

func UtxoValidateFeeTooSmallUtxo(
	tx common.Transaction,
	slot uint64,
	ls common.LedgerState,
	pp common.ProtocolParameters,
) error

func UtxoValidateInputSetEmptyUtxo added in v0.109.0

func UtxoValidateInputSetEmptyUtxo(
	tx common.Transaction,
	slot uint64,
	ls common.LedgerState,
	pp common.ProtocolParameters,
) error

func UtxoValidateMaxTxSizeUtxo added in v0.109.0

func UtxoValidateMaxTxSizeUtxo(
	tx common.Transaction,
	slot uint64,
	ls common.LedgerState,
	pp common.ProtocolParameters,
) error

func UtxoValidateOutputBootAddrAttrsTooBig added in v0.109.0

func UtxoValidateOutputBootAddrAttrsTooBig(
	tx common.Transaction,
	slot uint64,
	ls common.LedgerState,
	pp common.ProtocolParameters,
) error

func UtxoValidateOutputTooBigUtxo added in v0.109.0

func UtxoValidateOutputTooBigUtxo(
	tx common.Transaction,
	slot uint64,
	_ common.LedgerState,
	_ common.ProtocolParameters,
) error

UtxoValidateOutputTooBigUtxo ensures that transaction output values are not too large

func UtxoValidateOutputTooSmallUtxo added in v0.109.0

func UtxoValidateOutputTooSmallUtxo(
	tx common.Transaction,
	slot uint64,
	ls common.LedgerState,
	pp common.ProtocolParameters,
) error

func UtxoValidateOutsideValidityIntervalUtxo added in v0.109.0

func UtxoValidateOutsideValidityIntervalUtxo(
	tx common.Transaction,
	slot uint64,
	ls common.LedgerState,
	pp common.ProtocolParameters,
) error

func UtxoValidateValueNotConservedUtxo added in v0.109.0

func UtxoValidateValueNotConservedUtxo(
	tx common.Transaction,
	slot uint64,
	ls common.LedgerState,
	pp common.ProtocolParameters,
) error

func UtxoValidateWrongNetwork added in v0.109.0

func UtxoValidateWrongNetwork(
	tx common.Transaction,
	slot uint64,
	ls common.LedgerState,
	pp common.ProtocolParameters,
) error

func UtxoValidateWrongNetworkWithdrawal added in v0.109.0

func UtxoValidateWrongNetworkWithdrawal(
	tx common.Transaction,
	slot uint64,
	ls common.LedgerState,
	pp common.ProtocolParameters,
) error

Types

type MaryBlock

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

func NewMaryBlockFromCbor

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

func (*MaryBlock) BlockBodySize

func (b *MaryBlock) BlockBodySize() uint64

func (*MaryBlock) BlockNumber

func (b *MaryBlock) BlockNumber() uint64

func (*MaryBlock) Era

func (b *MaryBlock) Era() common.Era

func (*MaryBlock) Hash

func (b *MaryBlock) Hash() common.Blake2b256

func (*MaryBlock) Header

func (b *MaryBlock) Header() common.BlockHeader

func (*MaryBlock) IssuerVkey

func (b *MaryBlock) IssuerVkey() common.IssuerVkey

func (*MaryBlock) PrevHash added in v0.105.0

func (b *MaryBlock) PrevHash() common.Blake2b256

func (*MaryBlock) SlotNumber

func (b *MaryBlock) SlotNumber() uint64

func (*MaryBlock) Transactions

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

func (MaryBlock) Type added in v0.94.0

func (MaryBlock) Type() int

func (*MaryBlock) UnmarshalCBOR

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

func (*MaryBlock) Utxorpc

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

type MaryBlockHeader

type MaryBlockHeader struct {
	shelley.ShelleyBlockHeader
}

func NewMaryBlockHeaderFromCbor added in v0.114.0

func NewMaryBlockHeaderFromCbor(data []byte) (*MaryBlockHeader, error)

func (*MaryBlockHeader) Era

func (h *MaryBlockHeader) Era() common.Era

type MaryProtocolParameterUpdate

type MaryProtocolParameterUpdate = shelley.ShelleyProtocolParameterUpdate

type MaryProtocolParameters

type MaryProtocolParameters = shelley.ShelleyProtocolParameters

func UpgradePParams added in v0.103.0

func UpgradePParams(
	prevPParams shelley.ShelleyProtocolParameters,
) MaryProtocolParameters

type MaryTransaction

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

func NewMaryTransactionFromCbor

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

func (MaryTransaction) AssetMint

func (MaryTransaction) AuxDataHash

func (t MaryTransaction) AuxDataHash() *common.Blake2b256

func (*MaryTransaction) Cbor

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

func (MaryTransaction) Certificates

func (t MaryTransaction) Certificates() []common.Certificate

func (MaryTransaction) Collateral

func (t MaryTransaction) Collateral() []common.TransactionInput

func (MaryTransaction) CollateralReturn

func (t MaryTransaction) CollateralReturn() common.TransactionOutput

func (MaryTransaction) Consumed

func (t MaryTransaction) Consumed() []common.TransactionInput

func (MaryTransaction) CurrentTreasuryValue

func (t MaryTransaction) CurrentTreasuryValue() int64

func (MaryTransaction) Donation

func (t MaryTransaction) Donation() uint64

func (MaryTransaction) Fee

func (t MaryTransaction) Fee() uint64

func (MaryTransaction) Hash

func (MaryTransaction) Inputs

func (MaryTransaction) IsValid

func (t MaryTransaction) IsValid() bool

func (MaryTransaction) Metadata

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

func (MaryTransaction) Outputs

func (MaryTransaction) Produced

func (t MaryTransaction) Produced() []common.Utxo

func (MaryTransaction) ProposalProcedures

func (t MaryTransaction) ProposalProcedures() []common.ProposalProcedure

func (MaryTransaction) ProtocolParameterUpdates added in v0.95.0

func (t MaryTransaction) ProtocolParameterUpdates() (uint64, map[common.Blake2b224]common.ProtocolParameterUpdate)

func (MaryTransaction) ReferenceInputs

func (t MaryTransaction) ReferenceInputs() []common.TransactionInput

func (MaryTransaction) RequiredSigners

func (t MaryTransaction) RequiredSigners() []common.Blake2b224

func (MaryTransaction) ScriptDataHash

func (t MaryTransaction) ScriptDataHash() *common.Blake2b256

func (MaryTransaction) TTL

func (t MaryTransaction) TTL() uint64

func (MaryTransaction) TotalCollateral

func (t MaryTransaction) TotalCollateral() uint64

func (MaryTransaction) Type added in v0.94.0

func (MaryTransaction) Type() int

func (*MaryTransaction) UnmarshalCBOR added in v0.114.1

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

func (*MaryTransaction) Utxorpc

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

func (MaryTransaction) ValidityIntervalStart

func (t MaryTransaction) ValidityIntervalStart() uint64

func (MaryTransaction) VotingProcedures

func (t MaryTransaction) VotingProcedures() common.VotingProcedures

func (MaryTransaction) Withdrawals

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

func (MaryTransaction) Witnesses added in v0.110.0

type MaryTransactionBody

type MaryTransactionBody struct {
	common.TransactionBodyBase
	TxInputs       shelley.ShelleyTransactionInputSet `cbor:"0,keyasint,omitempty"`
	TxOutputs      []MaryTransactionOutput            `cbor:"1,keyasint,omitempty"`
	TxFee          uint64                             `cbor:"2,keyasint,omitempty"`
	Ttl            uint64                             `cbor:"3,keyasint,omitempty"`
	TxCertificates []common.CertificateWrapper        `cbor:"4,keyasint,omitempty"`
	TxWithdrawals  map[*common.Address]uint64         `cbor:"5,keyasint,omitempty"`
	Update         struct {
		cbor.StructAsArray
		ProtocolParamUpdates map[common.Blake2b224]MaryProtocolParameterUpdate
		Epoch                uint64
	} `cbor:"6,keyasint,omitempty"`
	TxAuxDataHash           *common.Blake2b256                            `cbor:"7,keyasint,omitempty"`
	TxValidityIntervalStart uint64                                        `cbor:"8,keyasint,omitempty"`
	TxMint                  *common.MultiAsset[common.MultiAssetTypeMint] `cbor:"9,keyasint,omitempty"`
}

func NewMaryTransactionBodyFromCbor

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

func (*MaryTransactionBody) AssetMint

func (*MaryTransactionBody) AuxDataHash added in v0.117.0

func (b *MaryTransactionBody) AuxDataHash() *common.Blake2b256

func (*MaryTransactionBody) Certificates added in v0.117.0

func (b *MaryTransactionBody) Certificates() []common.Certificate

func (*MaryTransactionBody) Fee added in v0.117.0

func (b *MaryTransactionBody) Fee() uint64

func (*MaryTransactionBody) Inputs added in v0.117.0

func (*MaryTransactionBody) Outputs

func (*MaryTransactionBody) ProtocolParameterUpdates added in v0.95.0

func (b *MaryTransactionBody) ProtocolParameterUpdates() (uint64, map[common.Blake2b224]common.ProtocolParameterUpdate)

func (*MaryTransactionBody) TTL added in v0.117.0

func (b *MaryTransactionBody) TTL() uint64

func (*MaryTransactionBody) UnmarshalCBOR

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

func (*MaryTransactionBody) Utxorpc added in v0.117.0

func (b *MaryTransactionBody) Utxorpc() (*utxorpc.Tx, error)

func (*MaryTransactionBody) ValidityIntervalStart added in v0.117.0

func (b *MaryTransactionBody) ValidityIntervalStart() uint64

func (*MaryTransactionBody) Withdrawals added in v0.117.0

func (b *MaryTransactionBody) Withdrawals() map[*common.Address]uint64

type MaryTransactionOutput

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

func NewMaryTransactionOutputFromCbor

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

func (MaryTransactionOutput) Address

func (o MaryTransactionOutput) Address() common.Address

func (MaryTransactionOutput) Amount

func (o MaryTransactionOutput) Amount() uint64

func (MaryTransactionOutput) Assets

func (MaryTransactionOutput) Datum

func (MaryTransactionOutput) DatumHash

func (o MaryTransactionOutput) DatumHash() *common.Blake2b256

func (MaryTransactionOutput) MarshalJSON

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

func (MaryTransactionOutput) ScriptRef added in v0.126.0

func (txo MaryTransactionOutput) ScriptRef() *cbor.LazyValue

func (*MaryTransactionOutput) UnmarshalCBOR added in v0.114.1

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

func (MaryTransactionOutput) Utxorpc

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

type MaryTransactionOutputValue

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

func (*MaryTransactionOutputValue) MarshalCBOR

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

func (*MaryTransactionOutputValue) UnmarshalCBOR

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

type OutputTooBigUtxoError added in v0.109.0

type OutputTooBigUtxoError struct {
	Outputs []common.TransactionOutput
}

func (OutputTooBigUtxoError) Error added in v0.109.0

func (e OutputTooBigUtxoError) Error() string

Jump to

Keyboard shortcuts

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