plutus-ledger-api-1.69.0.0: Interface to the Plutus ledger for the Cardano ledger.
Safe HaskellSafe-Inferred
LanguageHaskell2010

PlutusLedgerApi.V1.Data.Tx

Synopsis

Transactions

newtype TxId Source #

A transaction ID, i.e. the hash of a transaction. Hashed with BLAKE2b-256. 32 byte.

This is a simple type without any validation, use with caution. You may want to add checks for its invariants. See the Shelley ledger specification. -- editorconfig-checker-disable-file

Constructors

TxId 

Instances

Instances details
IsString TxId Source #

from hex encoding

Instance details

Defined in PlutusLedgerApi.V1.Data.Tx

Methods

fromString ∷ String → TxId Source #

Generic TxId Source # 
Instance details

Defined in PlutusLedgerApi.V1.Data.Tx

Associated Types

type Rep TxId ∷ Type → Type Source #

Methods

from ∷ TxId → Rep TxId x Source #

to ∷ Rep TxId x → TxId Source #

Show TxId Source #

using hex encoding

Instance details

Defined in PlutusLedgerApi.V1.Data.Tx

Methods

showsPrec ∷ Int → TxId → ShowS Source #

show ∷ TxId → String Source #

showList ∷ [TxId] → ShowS Source #

NFData TxId Source # 
Instance details

Defined in PlutusLedgerApi.V1.Data.Tx

Methods

rnf ∷ TxId → () Source #

Eq TxId Source # 
Instance details

Defined in PlutusLedgerApi.V1.Data.Tx

Methods

(==) ∷ TxId → TxId → Bool Source #

(/=) ∷ TxId → TxId → Bool Source #

Ord TxId Source # 
Instance details

Defined in PlutusLedgerApi.V1.Data.Tx

Methods

compare ∷ TxId → TxId → Ordering Source #

(<) ∷ TxId → TxId → Bool Source #

(<=) ∷ TxId → TxId → Bool Source #

(>) ∷ TxId → TxId → Bool Source #

(>=) ∷ TxId → TxId → Bool Source #

max ∷ TxId → TxId → TxId Source #

min ∷ TxId → TxId → TxId Source #

Eq TxId Source # 
Instance details

Defined in PlutusLedgerApi.V1.Data.Tx

Methods

(==) ∷ TxId → TxId → Bool Source #

FromData TxId Source # 
Instance details

Defined in PlutusLedgerApi.V1.Data.Tx

ToData TxId Source # 
Instance details

Defined in PlutusLedgerApi.V1.Data.Tx

UnsafeFromData TxId Source # 
Instance details

Defined in PlutusLedgerApi.V1.Data.Tx

Ord TxId Source # 
Instance details

Defined in PlutusLedgerApi.V1.Data.Tx

Methods

compare ∷ TxId → TxId → Ordering Source #

(<) ∷ TxId → TxId → Bool Source #

(<=) ∷ TxId → TxId → Bool Source #

(>) ∷ TxId → TxId → Bool Source #

(>=) ∷ TxId → TxId → Bool Source #

max ∷ TxId → TxId → TxId Source #

min ∷ TxId → TxId → TxId Source #

Pretty TxId Source #

using hex encoding

Instance details

Defined in PlutusLedgerApi.V1.Data.Tx

Methods

pretty ∷ TxId → Doc ann Source #

prettyList ∷ [TxId] → Doc ann Source #

Lift DefaultUni TxId Source # 
Instance details

Defined in PlutusLedgerApi.V1.Data.Tx

Typeable DefaultUni TxId Source # 
Instance details

Defined in PlutusLedgerApi.V1.Data.Tx

type Rep TxId Source # 
Instance details

Defined in PlutusLedgerApi.V1.Data.Tx

type Rep TxId = D1 ('MetaData "TxId" "PlutusLedgerApi.V1.Data.Tx" "plutus-ledger-api-1.69.0.0-inplace" 'True) (C1 ('MetaCons "TxId" 'PrefixI 'True) (S1 ('MetaSel ('Just "getTxId") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 BuiltinByteString)))

data ScriptTag Source #

A tag indicating the type of script that we are pointing to.

See also ScriptPurpose

Constructors

Spend 
Mint 
Cert 
Reward 

Instances

Instances details
Generic ScriptTag Source # 
Instance details

Defined in PlutusLedgerApi.V1.Data.Tx

Associated Types

type Rep ScriptTag ∷ Type → Type Source #

Show ScriptTag Source # 
Instance details

Defined in PlutusLedgerApi.V1.Data.Tx

NFData ScriptTag Source # 
Instance details

Defined in PlutusLedgerApi.V1.Data.Tx

Methods

rnf ∷ ScriptTag → () Source #

Eq ScriptTag Source # 
Instance details

Defined in PlutusLedgerApi.V1.Data.Tx

Ord ScriptTag Source # 
Instance details

Defined in PlutusLedgerApi.V1.Data.Tx

type Rep ScriptTag Source # 
Instance details

Defined in PlutusLedgerApi.V1.Data.Tx

type Rep ScriptTag = D1 ('MetaData "ScriptTag" "PlutusLedgerApi.V1.Data.Tx" "plutus-ledger-api-1.69.0.0-inplace" 'False) ((C1 ('MetaCons "Spend" 'PrefixI 'False) (U1 ∷ Type → Type) :+: C1 ('MetaCons "Mint" 'PrefixI 'False) (U1 ∷ Type → Type)) :+: (C1 ('MetaCons "Cert" 'PrefixI 'False) (U1 ∷ Type → Type) :+: C1 ('MetaCons "Reward" 'PrefixI 'False) (U1 ∷ Type → Type)))

data RedeemerPtr Source #

A redeemer pointer is a pair of a script type tag (ScriptTag) t and an index i, picking out the i-th script of type t in the transaction.

Instances

Instances details
Generic RedeemerPtr Source # 
Instance details

Defined in PlutusLedgerApi.V1.Data.Tx

Associated Types

type Rep RedeemerPtr ∷ Type → Type Source #

Show RedeemerPtr Source # 
Instance details

Defined in PlutusLedgerApi.V1.Data.Tx

NFData RedeemerPtr Source # 
Instance details

Defined in PlutusLedgerApi.V1.Data.Tx

Methods

rnf ∷ RedeemerPtr → () Source #

Eq RedeemerPtr Source # 
Instance details

Defined in PlutusLedgerApi.V1.Data.Tx

Ord RedeemerPtr Source # 
Instance details

Defined in PlutusLedgerApi.V1.Data.Tx

type Rep RedeemerPtr Source # 
Instance details

Defined in PlutusLedgerApi.V1.Data.Tx

type Rep RedeemerPtr = D1 ('MetaData "RedeemerPtr" "PlutusLedgerApi.V1.Data.Tx" "plutus-ledger-api-1.69.0.0-inplace" 'False) (C1 ('MetaCons "RedeemerPtr" 'PrefixI 'False) (S1 ('MetaSel ('Nothing ∷ Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 ScriptTag) :*: S1 ('MetaSel ('Nothing ∷ Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Integer)))

type Redeemers = Map RedeemerPtr Redeemer Source #

Redeemers is a Map of redeemer pointer (RedeemerPtr) and its Redeemer.

Transaction outputs

data TxOut Source #

A transaction output, consisting of a target address (Address), a value (Value), and optionally a datum hash (DatumHash).

Instances

Instances details
Generic TxOut Source # 
Instance details

Defined in PlutusLedgerApi.V1.Data.Tx

Associated Types

type Rep TxOut ∷ Type → Type Source #

Methods

from ∷ TxOut → Rep TxOut x Source #

to ∷ Rep TxOut x → TxOut Source #

Show TxOut Source # 
Instance details

Defined in PlutusLedgerApi.V1.Data.Tx

Eq TxOut Source # 
Instance details

Defined in PlutusLedgerApi.V1.Data.Tx

Methods

(==) ∷ TxOut → TxOut → Bool Source #

(/=) ∷ TxOut → TxOut → Bool Source #

Eq TxOut Source # 
Instance details

Defined in PlutusLedgerApi.V1.Data.Tx

Methods

(==) ∷ TxOut → TxOut → Bool Source #

FromData TxOut Source # 
Instance details

Defined in PlutusLedgerApi.V1.Data.Tx

ToData TxOut Source # 
Instance details

Defined in PlutusLedgerApi.V1.Data.Tx

UnsafeFromData TxOut Source # 
Instance details

Defined in PlutusLedgerApi.V1.Data.Tx

Pretty TxOut Source # 
Instance details

Defined in PlutusLedgerApi.V1.Data.Tx

Methods

pretty ∷ TxOut → Doc ann Source #

prettyList ∷ [TxOut] → Doc ann Source #

Lift DefaultUni TxOut Source # 
Instance details

Defined in PlutusLedgerApi.V1.Data.Tx

Typeable DefaultUni TxOut Source # 
Instance details

Defined in PlutusLedgerApi.V1.Data.Tx

type Rep TxOut Source # 
Instance details

Defined in PlutusLedgerApi.V1.Data.Tx

type Rep TxOut = D1 ('MetaData "TxOut" "PlutusLedgerApi.V1.Data.Tx" "plutus-ledger-api-1.69.0.0-inplace" 'True) (C1 ('MetaCons "TxOut_6989586621680395939" 'PrefixI 'False) (S1 ('MetaSel ('Nothing ∷ Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 BuiltinData)))

pattern TxOut ∷ Address → Value → Maybe DatumHash → TxOut Source #

matchTxOut ∷ ∀ r. TxOut → (Address → Value → Maybe DatumHash → r) → r Source #

data TxOutRef Source #

A reference to a transaction output. This is a pair of a transaction ID (TxId), and an index indicating which of the outputs of that transaction we are referring to.

Instances

Instances details
Generic TxOutRef Source # 
Instance details

Defined in PlutusLedgerApi.V1.Data.Tx

Associated Types

type Rep TxOutRef ∷ Type → Type Source #

Show TxOutRef Source # 
Instance details

Defined in PlutusLedgerApi.V1.Data.Tx

NFData TxOutRef Source # 
Instance details

Defined in PlutusLedgerApi.V1.Data.Tx

Methods

rnf ∷ TxOutRef → () Source #

Eq TxOutRef Source # 
Instance details

Defined in PlutusLedgerApi.V1.Data.Tx

Ord TxOutRef Source # 
Instance details

Defined in PlutusLedgerApi.V1.Data.Tx

Eq TxOutRef Source # 
Instance details

Defined in PlutusLedgerApi.V1.Data.Tx

Methods

(==) ∷ TxOutRef → TxOutRef → Bool Source #

FromData TxOutRef Source # 
Instance details

Defined in PlutusLedgerApi.V1.Data.Tx

ToData TxOutRef Source # 
Instance details

Defined in PlutusLedgerApi.V1.Data.Tx

UnsafeFromData TxOutRef Source # 
Instance details

Defined in PlutusLedgerApi.V1.Data.Tx

Pretty TxOutRef Source # 
Instance details

Defined in PlutusLedgerApi.V1.Data.Tx

Methods

pretty ∷ TxOutRef → Doc ann Source #

prettyList ∷ [TxOutRef] → Doc ann Source #

Lift DefaultUni TxOutRef Source # 
Instance details

Defined in PlutusLedgerApi.V1.Data.Tx

Typeable DefaultUni TxOutRef Source # 
Instance details

Defined in PlutusLedgerApi.V1.Data.Tx

type Rep TxOutRef Source # 
Instance details

Defined in PlutusLedgerApi.V1.Data.Tx

type Rep TxOutRef = D1 ('MetaData "TxOutRef" "PlutusLedgerApi.V1.Data.Tx" "plutus-ledger-api-1.69.0.0-inplace" 'True) (C1 ('MetaCons "TxOutRef_6989586621680395199" 'PrefixI 'False) (S1 ('MetaSel ('Nothing ∷ Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 BuiltinData)))

pattern TxOutRef ∷ TxId → Integer → TxOutRef Source #

matchTxOutRef ∷ ∀ r. TxOutRef → (TxId → Integer → r) → r Source #

isPubKeyOut ∷ TxOut → Bool Source #

Whether the output is a pay-to-pubkey output.

isPayToScriptOut ∷ TxOut → Bool Source #

Whether the output is a pay-to-script output.

outAddress ∷ Lens' TxOut Address Source #

The address of a transaction output.

outValue ∷ Lens' TxOut Value Source #

The value of a transaction output. | TODO: Compute address again

txOutPubKey ∷ TxOut → Maybe PubKeyHash Source #

The public key attached to a TxOut, if there is one.

txOutDatum ∷ TxOut → Maybe DatumHash Source #

The datum attached to a TxOut, if there is one.

pubKeyHashTxOut ∷ Value → PubKeyHash → TxOut Source #

Create a transaction output locked by a public key.