Module hebi.ledger.api_v2
The PlutusV2 ledger API
Expand source code
"""
The PlutusV2 ledger API
"""
from dataclasses import dataclass
from typing import Dict, List, Union
from pycardano import Datum as Anything, PlutusData
# Plutus V2
@dataclass(unsafe_hash=True)
class TxId(PlutusData):
"""
A transaction id, a 64 bytes long hash of the transaction body (also called transaction hash).
Example value: TxId(bytes.fromhex("842a4d37b036da6ab3c04331240e67d81746beb44f23ad79703e026705361956"))
"""
tx_id: bytes
@dataclass(unsafe_hash=True)
class Nothing(PlutusData):
"""
Nothing, can be used to signify non-importance of a parameter to a function
Example value: Nothing()
"""
# The maximimum constructor ID for simple cbor types, chosen to minimize probability of collision while keeping the corresponding cbor small
CONSTR_ID = 6
@dataclass(unsafe_hash=True)
class TrueData(PlutusData):
"""
A Datum that represents True in Haskell implementations.
It is thus used as an encoding for True in the ScriptContext.
Example value: TrueData()
"""
CONSTR_ID = 0
@dataclass(unsafe_hash=True)
class FalseData(PlutusData):
"""
A Datum that represents False in Haskell implementations.
It is thus used as an encoding for False in the ScriptContext.
Example value: FalseData()
"""
CONSTR_ID = 1
# A Datum that represents a boolean value in Haskell implementations.
# It is thus used as an encoding for booleans in the ScriptContext.
#
# Example value: TrueData()
BoolData = Union[TrueData, FalseData]
@dataclass(unsafe_hash=True)
class TxOutRef(PlutusData):
"""
A reference to a transaction output (hash/id + index)
"""
id: TxId
idx: int
# A public key hash, used to identify signatures provided by a wallet
PubKeyHash = bytes
@dataclass(unsafe_hash=True)
class PubKeyCredential(PlutusData):
"""
Part of an address that is authenticated by a public key hash
Example value: PubKeyCredential(bytes.fromhex("c06ddaad12fc4ded18e56feac72957c1aa75fce6096b40e63ec88274"))
"""
CONSTR_ID = 0
credential_hash: PubKeyHash
# A validator hash, used to identify signatures provided by a smart contract
ValidatorHash = bytes
@dataclass(unsafe_hash=True)
class ScriptCredential(PlutusData):
"""
Part of an address that is authenticated by a smart cotnract
Example value: ScriptCredential(bytes.fromhex("c06ddaad12fc4ded18e56feac72957c1aa75fce6096b40e63ec88274"))
"""
CONSTR_ID = 1
credential_hash: ValidatorHash
# A credential, either smart contract or public key hash
Credential = Union[PubKeyCredential, ScriptCredential]
@dataclass(unsafe_hash=True)
class StakingHash(PlutusData):
"""
Indicates that the stake of this address is controlled by the associated credential
"""
CONSTR_ID = 0
value: Credential
@dataclass(unsafe_hash=True)
class StakingPtr(PlutusData):
"""
Indicates that the stake of this address is controlled by the associated pointer.
In an address, a chain pointer refers to a point of the chain containing a stake key registration certificate.
A point is identified by the 3 coordinates in this object.
"""
CONSTR_ID = 1
# an absolute slot number
slot_no: int
# a transaction index (within that slot)
tx_index: int
# a (delegation) certificate index (within that transaction)
cert_index: int
# Part of an address that controls who can delegate the stake associated with an address
StakingCredential = Union[StakingHash, StakingPtr]
@dataclass(unsafe_hash=True)
class NoStakingCredential(PlutusData):
"""
Indicates that this address has no staking credentials.
Its funds can not be delegated.
"""
CONSTR_ID = 1
@dataclass(unsafe_hash=True)
class SomeStakingCredential(PlutusData):
"""
Indicates that this address has staking credentials.
Its funds can be delegated by the credentialed user.
"""
CONSTR_ID = 0
staking_credential: StakingCredential
@dataclass(unsafe_hash=True)
class Address(PlutusData):
"""
A Shelley address, consisting of a payment and staking credential
"""
payment_credential: Credential
staking_credential: Union[NoStakingCredential, SomeStakingCredential]
# The policy Id of a token
PolicyId = bytes
# The name of a token in bytes (not textual representation!)
TokenName = bytes
# The Plutus representation of amounts of tokens being spent, sent or minted
# It is a two-layered dictionary that stores for each policy id and token name
# the amount of the token that is being sent/minted/burned etc
#
# Lovelace is represented with policy id b"" and token name b""
Value = Dict[PolicyId, Dict[TokenName, int]]
# A hash of a Datum
DatumHash = bytes
@dataclass(unsafe_hash=True)
class SomeDatumHash(PlutusData):
"""
Indicates that there is a datum associated with this output, which has the given hash.
"""
CONSTR_ID = 1
datum_hash: DatumHash
@dataclass(unsafe_hash=True)
class SomeScriptHash(PlutusData):
"""
Indicates that there is a script associated with this output, which has the given hash.
"""
CONSTR_ID = 0
script_hash: DatumHash
# The abstract super type of any object in opshin.
# Use if you don't know what kind of object is being passed or if it doesn't matter.
BuiltinData = Anything
# An abstract type annotation that something is supposed to be used as a redeemer.
Redeemer = BuiltinData
# An abstract type annotation that something is supposed to be used as a datum.
Datum = BuiltinData
@dataclass(unsafe_hash=True)
class NoOutputDatum(PlutusData):
"""
Indicates that there is no datum associated with an output
"""
CONSTR_ID = 0
@dataclass(unsafe_hash=True)
class SomeOutputDatumHash(PlutusData):
"""
Indicates that there is an datum associated with an output, which has the attached hash
"""
CONSTR_ID = 1
datum_hash: DatumHash
@dataclass(unsafe_hash=True)
class SomeOutputDatum(PlutusData):
"""
Indicates that there is an datum associated with an output, which is inlined and equal to the attached datum
"""
CONSTR_ID = 2
datum: Datum
# Possible cases of datum association with an output
OutputDatum = Union[NoOutputDatum, SomeOutputDatumHash, SomeOutputDatum]
@dataclass(unsafe_hash=True)
class NoScriptHash(PlutusData):
"""
Indicates that there is no script associated with an output
"""
CONSTR_ID = 1
@dataclass(unsafe_hash=True)
class TxOut(PlutusData):
"""
The plutus representation of an transaction output, consisting of
- address: address owning this output
- value: tokens associated with this output
- datum: datum associated with this output
- reference_script: reference script associated with this output
"""
address: Address
value: Value
datum: OutputDatum
reference_script: Union[NoScriptHash, SomeScriptHash]
@dataclass(unsafe_hash=True)
class TxInInfo(PlutusData):
"""
The plutus representation of an transaction output, that is consumed by the transaction.
"""
out_ref: TxOutRef
resolved: TxOut
@dataclass(unsafe_hash=True)
class DCertDelegRegKey(PlutusData):
CONSTR_ID = 0
value: StakingCredential
@dataclass(unsafe_hash=True)
class DCertDelegDeRegKey(PlutusData):
CONSTR_ID = 1
value: StakingCredential
@dataclass(unsafe_hash=True)
class DCertDelegDelegate(PlutusData):
CONSTR_ID = 2
delegator: StakingCredential
delegatee: PubKeyHash
@dataclass(unsafe_hash=True)
class DCertPoolRegister(PlutusData):
CONSTR_ID = 3
pool_id: PubKeyHash
pool_vfr: PubKeyHash
@dataclass(unsafe_hash=True)
class DCertPoolRetire(PlutusData):
CONSTR_ID = 4
retirement_certificate: PubKeyHash
epoch: int
@dataclass(unsafe_hash=True)
class DCertGenesis(PlutusData):
CONSTR_ID = 5
@dataclass(unsafe_hash=True)
class DCertMir(PlutusData):
CONSTR_ID = 6
DCert = Union[
DCertDelegRegKey,
DCertDelegDeRegKey,
DCertDelegDelegate,
DCertPoolRegister,
DCertPoolRetire,
DCertGenesis,
DCertMir,
]
POSIXTime = int
@dataclass(unsafe_hash=True)
class NegInfPOSIXTime(PlutusData):
"""
Negative infinite POSIX time, used to indicate that there is no lower bound for the execution of this transaction
"""
CONSTR_ID = 0
@dataclass(unsafe_hash=True)
class FinitePOSIXTime(PlutusData):
"""
Finite POSIX time, used to indicate that there is a lower or upper bound for the execution of this transaction
"""
CONSTR_ID = 1
time: POSIXTime
@dataclass(unsafe_hash=True)
class PosInfPOSIXTime(PlutusData):
"""
Infinite POSIX time, used to indicate that there is no upper bound for the execution of this transaction
"""
CONSTR_ID = 2
ExtendedPOSIXTime = Union[NegInfPOSIXTime, FinitePOSIXTime, PosInfPOSIXTime]
@dataclass(unsafe_hash=True)
class UpperBoundPOSIXTime(PlutusData):
"""
Upper bound for the execution of this transaction
"""
CONSTR_ID = 0
limit: ExtendedPOSIXTime
closed: BoolData
@dataclass(unsafe_hash=True)
class LowerBoundPOSIXTime(PlutusData):
"""
Lower bound for the execution of this transaction
"""
CONSTR_ID = 0
limit: ExtendedPOSIXTime
closed: BoolData
@dataclass(unsafe_hash=True)
class POSIXTimeRange(PlutusData):
"""
Time range in which this transaction can be executed
"""
lower_bound: LowerBoundPOSIXTime
upper_bound: UpperBoundPOSIXTime
@dataclass(unsafe_hash=True)
class Minting(PlutusData):
"""
Script purpose indicating that the given policy id is being minted or burned
"""
CONSTR_ID = 0
policy_id: PolicyId
@dataclass(unsafe_hash=True)
class Spending(PlutusData):
"""
Script purpose indicating that the given transaction output is being spent, which is
owned by the invoked contract
"""
CONSTR_ID = 1
tx_out_ref: TxOutRef
@dataclass(unsafe_hash=True)
class Rewarding(PlutusData):
CONSTR_ID = 2
staking_credential: StakingCredential
@dataclass(unsafe_hash=True)
class Certifying(PlutusData):
CONSTR_ID = 3
d_cert: DCert
# The reason that this script is being invoked
ScriptPurpose = Union[Minting, Spending, Rewarding, Certifying]
@dataclass(unsafe_hash=True)
class TxInfo(PlutusData):
"""
A complex agglomeration of everything that could be of interest to the executed script, regarding the transaction
that invoked the script
"""
inputs: List[TxInInfo]
reference_inputs: List[TxInInfo]
outputs: List[TxOut]
fee: Value
mint: Value
dcert: List[DCert]
wdrl: Dict[StakingCredential, int]
valid_range: POSIXTimeRange
signatories: List[PubKeyHash]
redeemers: Dict[ScriptPurpose, Redeemer]
data: Dict[DatumHash, Datum]
id: TxId
@dataclass(unsafe_hash=True)
class ScriptContext(PlutusData):
"""
Auxiliary information about the transaction and reason for invocation of the called script.
"""
tx_info: TxInfo
purpose: ScriptPurpose
Classes
class Address (payment_credential: Union[PubKeyCredential, ScriptCredential], staking_credential: Union[NoStakingCredential, SomeStakingCredential])
-
A Shelley address, consisting of a payment and staking credential
Expand source code
class Address(PlutusData): """ A Shelley address, consisting of a payment and staking credential """ payment_credential: Credential staking_credential: Union[NoStakingCredential, SomeStakingCredential]
Ancestors
- pycardano.plutus.PlutusData
- pycardano.serialization.ArrayCBORSerializable
- pycardano.serialization.CBORSerializable
Class variables
var payment_credential : Union[PubKeyCredential, ScriptCredential]
var staking_credential : Union[NoStakingCredential, SomeStakingCredential]
class Certifying (d_cert: Union[DCertDelegRegKey, DCertDelegDeRegKey, DCertDelegDelegate, DCertPoolRegister, DCertPoolRetire, DCertGenesis, DCertMir])
-
Certifying(d_cert: Union[hebi.ledger.api_v2.DCertDelegRegKey, hebi.ledger.api_v2.DCertDelegDeRegKey, hebi.ledger.api_v2.DCertDelegDelegate, hebi.ledger.api_v2.DCertPoolRegister, hebi.ledger.api_v2.DCertPoolRetire, hebi.ledger.api_v2.DCertGenesis, hebi.ledger.api_v2.DCertMir])
Expand source code
class Certifying(PlutusData): CONSTR_ID = 3 d_cert: DCert
Ancestors
- pycardano.plutus.PlutusData
- pycardano.serialization.ArrayCBORSerializable
- pycardano.serialization.CBORSerializable
Class variables
var CONSTR_ID : ClassVar[int]
var d_cert : Union[DCertDelegRegKey, DCertDelegDeRegKey, DCertDelegDelegate, DCertPoolRegister, DCertPoolRetire, DCertGenesis, DCertMir]
class DCertDelegDeRegKey (value: Union[StakingHash, StakingPtr])
-
DCertDelegDeRegKey(value: Union[hebi.ledger.api_v2.StakingHash, hebi.ledger.api_v2.StakingPtr])
Expand source code
class DCertDelegDeRegKey(PlutusData): CONSTR_ID = 1 value: StakingCredential
Ancestors
- pycardano.plutus.PlutusData
- pycardano.serialization.ArrayCBORSerializable
- pycardano.serialization.CBORSerializable
Class variables
var CONSTR_ID : ClassVar[int]
var value : Union[StakingHash, StakingPtr]
class DCertDelegDelegate (delegator: Union[StakingHash, StakingPtr], delegatee: bytes)
-
DCertDelegDelegate(delegator: Union[hebi.ledger.api_v2.StakingHash, hebi.ledger.api_v2.StakingPtr], delegatee: bytes)
Expand source code
class DCertDelegDelegate(PlutusData): CONSTR_ID = 2 delegator: StakingCredential delegatee: PubKeyHash
Ancestors
- pycardano.plutus.PlutusData
- pycardano.serialization.ArrayCBORSerializable
- pycardano.serialization.CBORSerializable
Class variables
var CONSTR_ID : ClassVar[int]
var delegatee : bytes
var delegator : Union[StakingHash, StakingPtr]
class DCertDelegRegKey (value: Union[StakingHash, StakingPtr])
-
DCertDelegRegKey(value: Union[hebi.ledger.api_v2.StakingHash, hebi.ledger.api_v2.StakingPtr])
Expand source code
class DCertDelegRegKey(PlutusData): CONSTR_ID = 0 value: StakingCredential
Ancestors
- pycardano.plutus.PlutusData
- pycardano.serialization.ArrayCBORSerializable
- pycardano.serialization.CBORSerializable
Class variables
var CONSTR_ID : ClassVar[int]
var value : Union[StakingHash, StakingPtr]
class DCertGenesis
-
DCertGenesis()
Expand source code
class DCertGenesis(PlutusData): CONSTR_ID = 5
Ancestors
- pycardano.plutus.PlutusData
- pycardano.serialization.ArrayCBORSerializable
- pycardano.serialization.CBORSerializable
Class variables
var CONSTR_ID : ClassVar[int]
class DCertMir
-
DCertMir()
Expand source code
class DCertMir(PlutusData): CONSTR_ID = 6
Ancestors
- pycardano.plutus.PlutusData
- pycardano.serialization.ArrayCBORSerializable
- pycardano.serialization.CBORSerializable
Class variables
var CONSTR_ID : ClassVar[int]
class DCertPoolRegister (pool_id: bytes, pool_vfr: bytes)
-
DCertPoolRegister(pool_id: bytes, pool_vfr: bytes)
Expand source code
class DCertPoolRegister(PlutusData): CONSTR_ID = 3 pool_id: PubKeyHash pool_vfr: PubKeyHash
Ancestors
- pycardano.plutus.PlutusData
- pycardano.serialization.ArrayCBORSerializable
- pycardano.serialization.CBORSerializable
Class variables
var CONSTR_ID : ClassVar[int]
var pool_id : bytes
var pool_vfr : bytes
class DCertPoolRetire (retirement_certificate: bytes, epoch: int)
-
DCertPoolRetire(retirement_certificate: bytes, epoch: int)
Expand source code
class DCertPoolRetire(PlutusData): CONSTR_ID = 4 retirement_certificate: PubKeyHash epoch: int
Ancestors
- pycardano.plutus.PlutusData
- pycardano.serialization.ArrayCBORSerializable
- pycardano.serialization.CBORSerializable
Class variables
var CONSTR_ID : ClassVar[int]
var epoch : int
var retirement_certificate : bytes
class FalseData
-
A Datum that represents False in Haskell implementations. It is thus used as an encoding for False in the ScriptContext.
Example value: FalseData()
Expand source code
class FalseData(PlutusData): """ A Datum that represents False in Haskell implementations. It is thus used as an encoding for False in the ScriptContext. Example value: FalseData() """ CONSTR_ID = 1
Ancestors
- pycardano.plutus.PlutusData
- pycardano.serialization.ArrayCBORSerializable
- pycardano.serialization.CBORSerializable
Class variables
var CONSTR_ID : ClassVar[int]
class FinitePOSIXTime (time: int)
-
Finite POSIX time, used to indicate that there is a lower or upper bound for the execution of this transaction
Expand source code
class FinitePOSIXTime(PlutusData): """ Finite POSIX time, used to indicate that there is a lower or upper bound for the execution of this transaction """ CONSTR_ID = 1 time: POSIXTime
Ancestors
- pycardano.plutus.PlutusData
- pycardano.serialization.ArrayCBORSerializable
- pycardano.serialization.CBORSerializable
Class variables
var CONSTR_ID : ClassVar[int]
var time : int
class LowerBoundPOSIXTime (limit: Union[NegInfPOSIXTime, FinitePOSIXTime, PosInfPOSIXTime], closed: Union[TrueData, FalseData])
-
Lower bound for the execution of this transaction
Expand source code
class LowerBoundPOSIXTime(PlutusData): """ Lower bound for the execution of this transaction """ CONSTR_ID = 0 limit: ExtendedPOSIXTime closed: BoolData
Ancestors
- pycardano.plutus.PlutusData
- pycardano.serialization.ArrayCBORSerializable
- pycardano.serialization.CBORSerializable
Class variables
var CONSTR_ID : ClassVar[int]
var closed : Union[TrueData, FalseData]
var limit : Union[NegInfPOSIXTime, FinitePOSIXTime, PosInfPOSIXTime]
class Minting (policy_id: bytes)
-
Script purpose indicating that the given policy id is being minted or burned
Expand source code
class Minting(PlutusData): """ Script purpose indicating that the given policy id is being minted or burned """ CONSTR_ID = 0 policy_id: PolicyId
Ancestors
- pycardano.plutus.PlutusData
- pycardano.serialization.ArrayCBORSerializable
- pycardano.serialization.CBORSerializable
Class variables
var CONSTR_ID : ClassVar[int]
var policy_id : bytes
class NegInfPOSIXTime
-
Negative infinite POSIX time, used to indicate that there is no lower bound for the execution of this transaction
Expand source code
class NegInfPOSIXTime(PlutusData): """ Negative infinite POSIX time, used to indicate that there is no lower bound for the execution of this transaction """ CONSTR_ID = 0
Ancestors
- pycardano.plutus.PlutusData
- pycardano.serialization.ArrayCBORSerializable
- pycardano.serialization.CBORSerializable
Class variables
var CONSTR_ID : ClassVar[int]
class NoOutputDatum
-
Indicates that there is no datum associated with an output
Expand source code
class NoOutputDatum(PlutusData): """ Indicates that there is no datum associated with an output """ CONSTR_ID = 0
Ancestors
- pycardano.plutus.PlutusData
- pycardano.serialization.ArrayCBORSerializable
- pycardano.serialization.CBORSerializable
Class variables
var CONSTR_ID : ClassVar[int]
class NoScriptHash
-
Indicates that there is no script associated with an output
Expand source code
class NoScriptHash(PlutusData): """ Indicates that there is no script associated with an output """ CONSTR_ID = 1
Ancestors
- pycardano.plutus.PlutusData
- pycardano.serialization.ArrayCBORSerializable
- pycardano.serialization.CBORSerializable
Class variables
var CONSTR_ID : ClassVar[int]
class NoStakingCredential
-
Indicates that this address has no staking credentials. Its funds can not be delegated.
Expand source code
class NoStakingCredential(PlutusData): """ Indicates that this address has no staking credentials. Its funds can not be delegated. """ CONSTR_ID = 1
Ancestors
- pycardano.plutus.PlutusData
- pycardano.serialization.ArrayCBORSerializable
- pycardano.serialization.CBORSerializable
Class variables
var CONSTR_ID : ClassVar[int]
class Nothing
-
Nothing, can be used to signify non-importance of a parameter to a function
Example value: Nothing()
Expand source code
class Nothing(PlutusData): """ Nothing, can be used to signify non-importance of a parameter to a function Example value: Nothing() """ # The maximimum constructor ID for simple cbor types, chosen to minimize probability of collision while keeping the corresponding cbor small CONSTR_ID = 6
Ancestors
- pycardano.plutus.PlutusData
- pycardano.serialization.ArrayCBORSerializable
- pycardano.serialization.CBORSerializable
Class variables
var CONSTR_ID : ClassVar[int]
class POSIXTimeRange (lower_bound: LowerBoundPOSIXTime, upper_bound: UpperBoundPOSIXTime)
-
Time range in which this transaction can be executed
Expand source code
class POSIXTimeRange(PlutusData): """ Time range in which this transaction can be executed """ lower_bound: LowerBoundPOSIXTime upper_bound: UpperBoundPOSIXTime
Ancestors
- pycardano.plutus.PlutusData
- pycardano.serialization.ArrayCBORSerializable
- pycardano.serialization.CBORSerializable
Class variables
var lower_bound : LowerBoundPOSIXTime
var upper_bound : UpperBoundPOSIXTime
class PosInfPOSIXTime
-
Infinite POSIX time, used to indicate that there is no upper bound for the execution of this transaction
Expand source code
class PosInfPOSIXTime(PlutusData): """ Infinite POSIX time, used to indicate that there is no upper bound for the execution of this transaction """ CONSTR_ID = 2
Ancestors
- pycardano.plutus.PlutusData
- pycardano.serialization.ArrayCBORSerializable
- pycardano.serialization.CBORSerializable
Class variables
var CONSTR_ID : ClassVar[int]
class PubKeyCredential (credential_hash: bytes)
-
Part of an address that is authenticated by a public key hash
Example value: PubKeyCredential(bytes.fromhex("c06ddaad12fc4ded18e56feac72957c1aa75fce6096b40e63ec88274"))
Expand source code
class PubKeyCredential(PlutusData): """ Part of an address that is authenticated by a public key hash Example value: PubKeyCredential(bytes.fromhex("c06ddaad12fc4ded18e56feac72957c1aa75fce6096b40e63ec88274")) """ CONSTR_ID = 0 credential_hash: PubKeyHash
Ancestors
- pycardano.plutus.PlutusData
- pycardano.serialization.ArrayCBORSerializable
- pycardano.serialization.CBORSerializable
Class variables
var CONSTR_ID : ClassVar[int]
var credential_hash : bytes
class Rewarding (staking_credential: Union[StakingHash, StakingPtr])
-
Rewarding(staking_credential: Union[hebi.ledger.api_v2.StakingHash, hebi.ledger.api_v2.StakingPtr])
Expand source code
class Rewarding(PlutusData): CONSTR_ID = 2 staking_credential: StakingCredential
Ancestors
- pycardano.plutus.PlutusData
- pycardano.serialization.ArrayCBORSerializable
- pycardano.serialization.CBORSerializable
Class variables
var CONSTR_ID : ClassVar[int]
var staking_credential : Union[StakingHash, StakingPtr]
class ScriptContext (tx_info: TxInfo, purpose: Union[Minting, Spending, Rewarding, Certifying])
-
Auxiliary information about the transaction and reason for invocation of the called script.
Expand source code
class ScriptContext(PlutusData): """ Auxiliary information about the transaction and reason for invocation of the called script. """ tx_info: TxInfo purpose: ScriptPurpose
Ancestors
- pycardano.plutus.PlutusData
- pycardano.serialization.ArrayCBORSerializable
- pycardano.serialization.CBORSerializable
Class variables
var purpose : Union[Minting, Spending, Rewarding, Certifying]
var tx_info : TxInfo
class ScriptCredential (credential_hash: bytes)
-
Part of an address that is authenticated by a smart cotnract
Example value: ScriptCredential(bytes.fromhex("c06ddaad12fc4ded18e56feac72957c1aa75fce6096b40e63ec88274"))
Expand source code
class ScriptCredential(PlutusData): """ Part of an address that is authenticated by a smart cotnract Example value: ScriptCredential(bytes.fromhex("c06ddaad12fc4ded18e56feac72957c1aa75fce6096b40e63ec88274")) """ CONSTR_ID = 1 credential_hash: ValidatorHash
Ancestors
- pycardano.plutus.PlutusData
- pycardano.serialization.ArrayCBORSerializable
- pycardano.serialization.CBORSerializable
Class variables
var CONSTR_ID : ClassVar[int]
var credential_hash : bytes
class SomeDatumHash (datum_hash: bytes)
-
Indicates that there is a datum associated with this output, which has the given hash.
Expand source code
class SomeDatumHash(PlutusData): """ Indicates that there is a datum associated with this output, which has the given hash. """ CONSTR_ID = 1 datum_hash: DatumHash
Ancestors
- pycardano.plutus.PlutusData
- pycardano.serialization.ArrayCBORSerializable
- pycardano.serialization.CBORSerializable
Class variables
var CONSTR_ID : ClassVar[int]
var datum_hash : bytes
class SomeOutputDatum (datum: Union[pycardano.plutus.PlutusData, dict, pycardano.serialization.IndefiniteList, int, bytes, pycardano.serialization.RawCBOR, pycardano.plutus.RawPlutusData])
-
Indicates that there is an datum associated with an output, which is inlined and equal to the attached datum
Expand source code
class SomeOutputDatum(PlutusData): """ Indicates that there is an datum associated with an output, which is inlined and equal to the attached datum """ CONSTR_ID = 2 datum: Datum
Ancestors
- pycardano.plutus.PlutusData
- pycardano.serialization.ArrayCBORSerializable
- pycardano.serialization.CBORSerializable
Class variables
var CONSTR_ID : ClassVar[int]
var datum : Union[pycardano.plutus.PlutusData, dict, pycardano.serialization.IndefiniteList, int, bytes, pycardano.serialization.RawCBOR, pycardano.plutus.RawPlutusData]
class SomeOutputDatumHash (datum_hash: bytes)
-
Indicates that there is an datum associated with an output, which has the attached hash
Expand source code
class SomeOutputDatumHash(PlutusData): """ Indicates that there is an datum associated with an output, which has the attached hash """ CONSTR_ID = 1 datum_hash: DatumHash
Ancestors
- pycardano.plutus.PlutusData
- pycardano.serialization.ArrayCBORSerializable
- pycardano.serialization.CBORSerializable
Class variables
var CONSTR_ID : ClassVar[int]
var datum_hash : bytes
class SomeScriptHash (script_hash: bytes)
-
Indicates that there is a script associated with this output, which has the given hash.
Expand source code
class SomeScriptHash(PlutusData): """ Indicates that there is a script associated with this output, which has the given hash. """ CONSTR_ID = 0 script_hash: DatumHash
Ancestors
- pycardano.plutus.PlutusData
- pycardano.serialization.ArrayCBORSerializable
- pycardano.serialization.CBORSerializable
Class variables
var CONSTR_ID : ClassVar[int]
var script_hash : bytes
class SomeStakingCredential (staking_credential: Union[StakingHash, StakingPtr])
-
Indicates that this address has staking credentials. Its funds can be delegated by the credentialed user.
Expand source code
class SomeStakingCredential(PlutusData): """ Indicates that this address has staking credentials. Its funds can be delegated by the credentialed user. """ CONSTR_ID = 0 staking_credential: StakingCredential
Ancestors
- pycardano.plutus.PlutusData
- pycardano.serialization.ArrayCBORSerializable
- pycardano.serialization.CBORSerializable
Class variables
var CONSTR_ID : ClassVar[int]
var staking_credential : Union[StakingHash, StakingPtr]
class Spending (tx_out_ref: TxOutRef)
-
Script purpose indicating that the given transaction output is being spent, which is owned by the invoked contract
Expand source code
class Spending(PlutusData): """ Script purpose indicating that the given transaction output is being spent, which is owned by the invoked contract """ CONSTR_ID = 1 tx_out_ref: TxOutRef
Ancestors
- pycardano.plutus.PlutusData
- pycardano.serialization.ArrayCBORSerializable
- pycardano.serialization.CBORSerializable
Class variables
var CONSTR_ID : ClassVar[int]
var tx_out_ref : TxOutRef
class StakingHash (value: Union[PubKeyCredential, ScriptCredential])
-
Indicates that the stake of this address is controlled by the associated credential
Expand source code
class StakingHash(PlutusData): """ Indicates that the stake of this address is controlled by the associated credential """ CONSTR_ID = 0 value: Credential
Ancestors
- pycardano.plutus.PlutusData
- pycardano.serialization.ArrayCBORSerializable
- pycardano.serialization.CBORSerializable
Class variables
var CONSTR_ID : ClassVar[int]
var value : Union[PubKeyCredential, ScriptCredential]
class StakingPtr (slot_no: int, tx_index: int, cert_index: int)
-
Indicates that the stake of this address is controlled by the associated pointer.
In an address, a chain pointer refers to a point of the chain containing a stake key registration certificate. A point is identified by the 3 coordinates in this object.
Expand source code
class StakingPtr(PlutusData): """ Indicates that the stake of this address is controlled by the associated pointer. In an address, a chain pointer refers to a point of the chain containing a stake key registration certificate. A point is identified by the 3 coordinates in this object. """ CONSTR_ID = 1 # an absolute slot number slot_no: int # a transaction index (within that slot) tx_index: int # a (delegation) certificate index (within that transaction) cert_index: int
Ancestors
- pycardano.plutus.PlutusData
- pycardano.serialization.ArrayCBORSerializable
- pycardano.serialization.CBORSerializable
Class variables
var CONSTR_ID : ClassVar[int]
var cert_index : int
var slot_no : int
var tx_index : int
class TrueData
-
A Datum that represents True in Haskell implementations. It is thus used as an encoding for True in the ScriptContext.
Example value: TrueData()
Expand source code
class TrueData(PlutusData): """ A Datum that represents True in Haskell implementations. It is thus used as an encoding for True in the ScriptContext. Example value: TrueData() """ CONSTR_ID = 0
Ancestors
- pycardano.plutus.PlutusData
- pycardano.serialization.ArrayCBORSerializable
- pycardano.serialization.CBORSerializable
Class variables
var CONSTR_ID : ClassVar[int]
class TxId (tx_id: bytes)
-
A transaction id, a 64 bytes long hash of the transaction body (also called transaction hash).
Example value: TxId(bytes.fromhex("842a4d37b036da6ab3c04331240e67d81746beb44f23ad79703e026705361956"))
Expand source code
class TxId(PlutusData): """ A transaction id, a 64 bytes long hash of the transaction body (also called transaction hash). Example value: TxId(bytes.fromhex("842a4d37b036da6ab3c04331240e67d81746beb44f23ad79703e026705361956")) """ tx_id: bytes
Ancestors
- pycardano.plutus.PlutusData
- pycardano.serialization.ArrayCBORSerializable
- pycardano.serialization.CBORSerializable
Class variables
var tx_id : bytes
class TxInInfo (out_ref: TxOutRef, resolved: TxOut)
-
The plutus representation of an transaction output, that is consumed by the transaction.
Expand source code
class TxInInfo(PlutusData): """ The plutus representation of an transaction output, that is consumed by the transaction. """ out_ref: TxOutRef resolved: TxOut
Ancestors
- pycardano.plutus.PlutusData
- pycardano.serialization.ArrayCBORSerializable
- pycardano.serialization.CBORSerializable
Class variables
var out_ref : TxOutRef
var resolved : TxOut
class TxInfo (inputs: List[TxInInfo], reference_inputs: List[TxInInfo], outputs: List[TxOut], fee: Dict[bytes, Dict[bytes, int]], mint: Dict[bytes, Dict[bytes, int]], dcert: List[Union[DCertDelegRegKey, DCertDelegDeRegKey, DCertDelegDelegate, DCertPoolRegister, DCertPoolRetire, DCertGenesis, DCertMir]], wdrl: Dict[Union[StakingHash, StakingPtr], int], valid_range: POSIXTimeRange, signatories: List[bytes], redeemers: Dict[Union[Minting, Spending, Rewarding, Certifying], Union[pycardano.plutus.PlutusData, dict, pycardano.serialization.IndefiniteList, int, bytes, pycardano.serialization.RawCBOR, pycardano.plutus.RawPlutusData]], data: Dict[bytes, Union[pycardano.plutus.PlutusData, dict, pycardano.serialization.IndefiniteList, int, bytes, pycardano.serialization.RawCBOR, pycardano.plutus.RawPlutusData]], id: TxId)
-
A complex agglomeration of everything that could be of interest to the executed script, regarding the transaction that invoked the script
Expand source code
class TxInfo(PlutusData): """ A complex agglomeration of everything that could be of interest to the executed script, regarding the transaction that invoked the script """ inputs: List[TxInInfo] reference_inputs: List[TxInInfo] outputs: List[TxOut] fee: Value mint: Value dcert: List[DCert] wdrl: Dict[StakingCredential, int] valid_range: POSIXTimeRange signatories: List[PubKeyHash] redeemers: Dict[ScriptPurpose, Redeemer] data: Dict[DatumHash, Datum] id: TxId
Ancestors
- pycardano.plutus.PlutusData
- pycardano.serialization.ArrayCBORSerializable
- pycardano.serialization.CBORSerializable
Class variables
var data : Dict[bytes, Union[pycardano.plutus.PlutusData, dict, pycardano.serialization.IndefiniteList, int, bytes, pycardano.serialization.RawCBOR, pycardano.plutus.RawPlutusData]]
var dcert : List[Union[DCertDelegRegKey, DCertDelegDeRegKey, DCertDelegDelegate, DCertPoolRegister, DCertPoolRetire, DCertGenesis, DCertMir]]
var fee : Dict[bytes, Dict[bytes, int]]
var id : TxId
var inputs : List[TxInInfo]
var mint : Dict[bytes, Dict[bytes, int]]
var outputs : List[TxOut]
var redeemers : Dict[Union[Minting, Spending, Rewarding, Certifying], Union[pycardano.plutus.PlutusData, dict, pycardano.serialization.IndefiniteList, int, bytes, pycardano.serialization.RawCBOR, pycardano.plutus.RawPlutusData]]
var reference_inputs : List[TxInInfo]
var signatories : List[bytes]
var valid_range : POSIXTimeRange
var wdrl : Dict[Union[StakingHash, StakingPtr], int]
class TxOut (address: Address, value: Dict[bytes, Dict[bytes, int]], datum: Union[NoOutputDatum, SomeOutputDatumHash, SomeOutputDatum], reference_script: Union[NoScriptHash, SomeScriptHash])
-
The plutus representation of an transaction output, consisting of - address: address owning this output - value: tokens associated with this output - datum: datum associated with this output - reference_script: reference script associated with this output
Expand source code
class TxOut(PlutusData): """ The plutus representation of an transaction output, consisting of - address: address owning this output - value: tokens associated with this output - datum: datum associated with this output - reference_script: reference script associated with this output """ address: Address value: Value datum: OutputDatum reference_script: Union[NoScriptHash, SomeScriptHash]
Ancestors
- pycardano.plutus.PlutusData
- pycardano.serialization.ArrayCBORSerializable
- pycardano.serialization.CBORSerializable
Class variables
var address : Address
var datum : Union[NoOutputDatum, SomeOutputDatumHash, SomeOutputDatum]
var reference_script : Union[NoScriptHash, SomeScriptHash]
var value : Dict[bytes, Dict[bytes, int]]
class TxOutRef (id: TxId, idx: int)
-
A reference to a transaction output (hash/id + index)
Expand source code
class TxOutRef(PlutusData): """ A reference to a transaction output (hash/id + index) """ id: TxId idx: int
Ancestors
- pycardano.plutus.PlutusData
- pycardano.serialization.ArrayCBORSerializable
- pycardano.serialization.CBORSerializable
Class variables
var id : TxId
var idx : int
class UpperBoundPOSIXTime (limit: Union[NegInfPOSIXTime, FinitePOSIXTime, PosInfPOSIXTime], closed: Union[TrueData, FalseData])
-
Upper bound for the execution of this transaction
Expand source code
class UpperBoundPOSIXTime(PlutusData): """ Upper bound for the execution of this transaction """ CONSTR_ID = 0 limit: ExtendedPOSIXTime closed: BoolData
Ancestors
- pycardano.plutus.PlutusData
- pycardano.serialization.ArrayCBORSerializable
- pycardano.serialization.CBORSerializable
Class variables
var CONSTR_ID : ClassVar[int]
var closed : Union[TrueData, FalseData]
var limit : Union[NegInfPOSIXTime, FinitePOSIXTime, PosInfPOSIXTime]