script

package
v0.135.0 Latest Latest
Warning

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

Go to latest
Published: Sep 11, 2025 License: Apache-2.0 Imports: 7 Imported by: 1

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Coin

type Coin int64

func (Coin) ToPlutusData

func (c Coin) ToPlutusData() data.PlutusData

type KeyValuePair

type KeyValuePair[K any, V any] struct {
	Key   K
	Value V
}

type KeyValuePairs

type KeyValuePairs[K any, V any] []KeyValuePair[K, V]

func (KeyValuePairs[K, V]) ToPlutusData

func (k KeyValuePairs[K, V]) ToPlutusData() data.PlutusData

type Option

type Option[T any] struct {
	Value any
}

func (Option[T]) ToPlutusData

func (o Option[T]) ToPlutusData() data.PlutusData

type PositiveCoin

type PositiveCoin uint64

func (PositiveCoin) ToPlutusData

func (c PositiveCoin) ToPlutusData() data.PlutusData

type Redeemer

type Redeemer struct {
	Tag     lcommon.RedeemerTag
	Index   uint32
	Data    data.PlutusData
	ExUnits lcommon.ExUnits
}

func (Redeemer) ToPlutusData

func (r Redeemer) ToPlutusData() data.PlutusData

type ResolvedInput

type ResolvedInput lcommon.Utxo

func (ResolvedInput) ToPlutusData

func (r ResolvedInput) ToPlutusData() data.PlutusData

type ScriptContext

type ScriptContext interface {
	ToPlutusData() data.PlutusData
	// contains filtered or unexported methods
}

func NewScriptContextV3

func NewScriptContextV3(
	txInfo TxInfo,
	redeemer Redeemer,
	purpose ScriptInfo,
) ScriptContext

type ScriptContextV1V2

type ScriptContextV1V2 struct {
	TxInfo TxInfo
}

func (ScriptContextV1V2) ToPlutusData

func (s ScriptContextV1V2) ToPlutusData() data.PlutusData

type ScriptContextV3

type ScriptContextV3 struct {
	TxInfo   TxInfo
	Redeemer Redeemer
	Purpose  ScriptInfo
}

func (ScriptContextV3) ToPlutusData

func (s ScriptContextV3) ToPlutusData() data.PlutusData

type ScriptInfo

type ScriptInfo interface {
	ScriptHash() lcommon.ScriptHash
	ToPlutusData
	// contains filtered or unexported methods
}

type ScriptInfoCertifying

type ScriptInfoCertifying struct {
	Index       uint32
	Certificate lcommon.Certificate
}

func (ScriptInfoCertifying) ScriptHash added in v0.133.0

func (s ScriptInfoCertifying) ScriptHash() lcommon.ScriptHash

func (ScriptInfoCertifying) ToPlutusData

func (s ScriptInfoCertifying) ToPlutusData() data.PlutusData

type ScriptInfoMinting

type ScriptInfoMinting struct {
	PolicyId lcommon.Blake2b224
}

func (ScriptInfoMinting) ScriptHash added in v0.133.0

func (s ScriptInfoMinting) ScriptHash() lcommon.ScriptHash

func (ScriptInfoMinting) ToPlutusData

func (s ScriptInfoMinting) ToPlutusData() data.PlutusData

type ScriptInfoProposing

type ScriptInfoProposing struct {
	Index             uint32
	ProposalProcedure lcommon.ProposalProcedure
}

func (ScriptInfoProposing) ScriptHash added in v0.133.0

func (s ScriptInfoProposing) ScriptHash() lcommon.ScriptHash

func (ScriptInfoProposing) ToPlutusData

func (s ScriptInfoProposing) ToPlutusData() data.PlutusData

type ScriptInfoRewarding

type ScriptInfoRewarding struct {
	StakeCredential lcommon.Credential
}

func (ScriptInfoRewarding) ScriptHash added in v0.133.0

func (s ScriptInfoRewarding) ScriptHash() lcommon.ScriptHash

func (ScriptInfoRewarding) ToPlutusData

func (s ScriptInfoRewarding) ToPlutusData() data.PlutusData

type ScriptInfoSpending

type ScriptInfoSpending struct {
	Input lcommon.Utxo
	Datum data.PlutusData
}

func (ScriptInfoSpending) ScriptHash added in v0.133.0

func (s ScriptInfoSpending) ScriptHash() lcommon.ScriptHash

func (ScriptInfoSpending) ToPlutusData

func (s ScriptInfoSpending) ToPlutusData() data.PlutusData

type ScriptInfoVoting

type ScriptInfoVoting struct {
	Voter lcommon.Voter
}

func (ScriptInfoVoting) ScriptHash added in v0.133.0

func (s ScriptInfoVoting) ScriptHash() lcommon.ScriptHash

func (ScriptInfoVoting) ToPlutusData

func (s ScriptInfoVoting) ToPlutusData() data.PlutusData

type TimeRange

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

func (TimeRange) ToPlutusData

func (t TimeRange) ToPlutusData() data.PlutusData

type ToPlutusData

type ToPlutusData interface {
	ToPlutusData() data.PlutusData
}

ToPlutusData is an interface that represents types that support serialization to PlutusData when building a ScriptContext

type TxInfo

type TxInfo interface {
	ToPlutusData() data.PlutusData
	// contains filtered or unexported methods
}

type TxInfoV1

type TxInfoV1 struct {
	Inputs       []lcommon.Utxo
	Outputs      []lcommon.Utxo
	Fee          uint64
	Mint         lcommon.MultiAsset[lcommon.MultiAssetTypeMint]
	Certificates []lcommon.Certificate
	Withdrawals  KeyValuePairs[*lcommon.Address, Coin]
	ValidRange   TimeRange
	Signatories  []lcommon.Blake2b224
	Data         KeyValuePairs[lcommon.Blake2b256, data.PlutusData]
	Redeemers    KeyValuePairs[ScriptInfo, Redeemer]
	Id           lcommon.Blake2b256
}

func (TxInfoV1) ToPlutusData

func (t TxInfoV1) ToPlutusData() data.PlutusData

type TxInfoV2

type TxInfoV2 struct {
	Inputs          []lcommon.Utxo
	ReferenceInputs []lcommon.Utxo
	Outputs         []lcommon.Utxo
	Fee             uint64
	Mint            lcommon.MultiAsset[lcommon.MultiAssetTypeMint]
	Certificates    []lcommon.Certificate
	Withdrawals     KeyValuePairs[*lcommon.Address, Coin]
	ValidRange      TimeRange
	Signatories     []lcommon.Blake2b224
	Redeemers       KeyValuePairs[ScriptInfo, Redeemer]
	Data            KeyValuePairs[lcommon.Blake2b256, data.PlutusData]
	Id              lcommon.Blake2b256
}

func (TxInfoV2) ToPlutusData

func (t TxInfoV2) ToPlutusData() data.PlutusData

type TxInfoV3

type TxInfoV3 struct {
	Inputs                []ResolvedInput
	ReferenceInputs       []ResolvedInput
	Outputs               []lcommon.TransactionOutput
	Fee                   uint64
	Mint                  lcommon.MultiAsset[lcommon.MultiAssetTypeMint]
	Certificates          []lcommon.Certificate
	Withdrawals           KeyValuePairs[*lcommon.Address, uint64]
	ValidRange            TimeRange
	Signatories           []lcommon.Blake2b224
	Redeemers             KeyValuePairs[ScriptInfo, Redeemer]
	Data                  KeyValuePairs[lcommon.Blake2b256, data.PlutusData]
	Id                    lcommon.Blake2b256
	Votes                 KeyValuePairs[*lcommon.Voter, KeyValuePairs[*lcommon.GovActionId, lcommon.VotingProcedure]]
	ProposalProcedures    []lcommon.ProposalProcedure
	CurrentTreasuryAmount Option[Coin]
	TreasuryDonation      Option[PositiveCoin]
}

func NewTxInfoV3FromTransaction

func NewTxInfoV3FromTransaction(
	slotState lcommon.SlotState,
	tx lcommon.Transaction,
	resolvedInputs []lcommon.Utxo,
) (TxInfoV3, error)

func (TxInfoV3) ToPlutusData

func (t TxInfoV3) ToPlutusData() data.PlutusData

Jump to

Keyboard shortcuts

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