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

PlutusLedgerApi.V1

Description

The interface to Plutus V1 for the ledger.

Synopsis

Scripts

newtype ScriptHash Source #

Type representing the BLAKE2b-224 hash of a script. 28 bytes.

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.

Constructors

ScriptHash 

Instances

Instances details
IsString ScriptHash Source #

from hex encoding

Instance details

Defined in PlutusLedgerApi.V1.Scripts

Generic ScriptHash Source # 
Instance details

Defined in PlutusLedgerApi.V1.Scripts

Associated Types

type Rep ScriptHashTypeType Source #

Show ScriptHash Source #

using hex encoding

Instance details

Defined in PlutusLedgerApi.V1.Scripts

NFData ScriptHash Source # 
Instance details

Defined in PlutusLedgerApi.V1.Scripts

Methods

rnfScriptHash → () Source #

Eq ScriptHash Source # 
Instance details

Defined in PlutusLedgerApi.V1.Scripts

Ord ScriptHash Source # 
Instance details

Defined in PlutusLedgerApi.V1.Scripts

HasBlueprintDefinition ScriptHash Source # 
Instance details

Defined in PlutusLedgerApi.V1.Scripts

Associated Types

type Unroll ScriptHash ∷ [Type] Source #

Eq ScriptHash Source # 
Instance details

Defined in PlutusLedgerApi.V1.Scripts

Methods

(==)ScriptHashScriptHashBool Source #

FromData ScriptHash Source # 
Instance details

Defined in PlutusLedgerApi.V1.Scripts

ToData ScriptHash Source # 
Instance details

Defined in PlutusLedgerApi.V1.Scripts

UnsafeFromData ScriptHash Source # 
Instance details

Defined in PlutusLedgerApi.V1.Scripts

Ord ScriptHash Source # 
Instance details

Defined in PlutusLedgerApi.V1.Scripts

Show ScriptHash Source # 
Instance details

Defined in PlutusLedgerApi.V1.Scripts

Pretty ScriptHash Source #

using hex encoding

Instance details

Defined in PlutusLedgerApi.V1.Scripts

Methods

prettyScriptHashDoc ann Source #

prettyList ∷ [ScriptHash] → Doc ann Source #

HasBlueprintSchema ScriptHash referencedTypes Source # 
Instance details

Defined in PlutusLedgerApi.V1.Scripts

Methods

schemaSchema referencedTypes Source #

Lift DefaultUni ScriptHash Source # 
Instance details

Defined in PlutusLedgerApi.V1.Scripts

Typeable DefaultUni ScriptHash Source # 
Instance details

Defined in PlutusLedgerApi.V1.Scripts

type Rep ScriptHash Source # 
Instance details

Defined in PlutusLedgerApi.V1.Scripts

type Rep ScriptHash = D1 ('MetaData "ScriptHash" "PlutusLedgerApi.V1.Scripts" "plutus-ledger-api-1.39.0.0-inplace" 'True) (C1 ('MetaCons "ScriptHash" 'PrefixI 'True) (S1 ('MetaSel ('Just "getScriptHash") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 BuiltinByteString)))
type Unroll ScriptHash Source # 
Instance details

Defined in PlutusLedgerApi.V1.Scripts

newtype Redeemer Source #

Redeemer is a wrapper around Data values that are used as redeemers in transaction inputs.

Constructors

Redeemer 

Instances

Instances details
Generic Redeemer Source # 
Instance details

Defined in PlutusLedgerApi.V1.Scripts

Associated Types

type Rep RedeemerTypeType Source #

Show Redeemer Source # 
Instance details

Defined in PlutusLedgerApi.V1.Scripts

NFData Redeemer Source # 
Instance details

Defined in PlutusLedgerApi.V1.Scripts

Methods

rnfRedeemer → () Source #

Eq Redeemer Source # 
Instance details

Defined in PlutusLedgerApi.V1.Scripts

Ord Redeemer Source # 
Instance details

Defined in PlutusLedgerApi.V1.Scripts

HasBlueprintDefinition Redeemer Source # 
Instance details

Defined in PlutusLedgerApi.V1.Scripts

Associated Types

type Unroll Redeemer ∷ [Type] Source #

Eq Redeemer Source # 
Instance details

Defined in PlutusLedgerApi.V1.Scripts

Methods

(==)RedeemerRedeemerBool Source #

FromData Redeemer Source # 
Instance details

Defined in PlutusLedgerApi.V1.Scripts

ToData Redeemer Source # 
Instance details

Defined in PlutusLedgerApi.V1.Scripts

UnsafeFromData Redeemer Source # 
Instance details

Defined in PlutusLedgerApi.V1.Scripts

Show Redeemer Source # 
Instance details

Defined in PlutusLedgerApi.V1.Scripts

Pretty Redeemer Source # 
Instance details

Defined in PlutusLedgerApi.V1.Scripts

Methods

prettyRedeemerDoc ann Source #

prettyList ∷ [Redeemer] → Doc ann Source #

Serialise Redeemer Source # 
Instance details

Defined in PlutusLedgerApi.V1.Scripts

HasBlueprintSchema Redeemer referencedTypes Source # 
Instance details

Defined in PlutusLedgerApi.V1.Scripts

Methods

schemaSchema referencedTypes Source #

Lift DefaultUni Redeemer Source # 
Instance details

Defined in PlutusLedgerApi.V1.Scripts

Typeable DefaultUni Redeemer Source # 
Instance details

Defined in PlutusLedgerApi.V1.Scripts

type Rep Redeemer Source # 
Instance details

Defined in PlutusLedgerApi.V1.Scripts

type Rep Redeemer = D1 ('MetaData "Redeemer" "PlutusLedgerApi.V1.Scripts" "plutus-ledger-api-1.39.0.0-inplace" 'True) (C1 ('MetaCons "Redeemer" 'PrefixI 'True) (S1 ('MetaSel ('Just "getRedeemer") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 BuiltinData)))
type Unroll Redeemer Source # 
Instance details

Defined in PlutusLedgerApi.V1.Scripts

newtype RedeemerHash Source #

Type representing the BLAKE2b-256 hash of a redeemer. 32 bytes.

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.

Instances

Instances details
IsString RedeemerHash Source #

from hex encoding

Instance details

Defined in PlutusLedgerApi.V1.Scripts

Generic RedeemerHash Source # 
Instance details

Defined in PlutusLedgerApi.V1.Scripts

Associated Types

type Rep RedeemerHashTypeType Source #

Show RedeemerHash Source #

using hex encoding

Instance details

Defined in PlutusLedgerApi.V1.Scripts

NFData RedeemerHash Source # 
Instance details

Defined in PlutusLedgerApi.V1.Scripts

Methods

rnfRedeemerHash → () Source #

Eq RedeemerHash Source # 
Instance details

Defined in PlutusLedgerApi.V1.Scripts

Ord RedeemerHash Source # 
Instance details

Defined in PlutusLedgerApi.V1.Scripts

HasBlueprintDefinition RedeemerHash Source # 
Instance details

Defined in PlutusLedgerApi.V1.Scripts

Associated Types

type Unroll RedeemerHash ∷ [Type] Source #

Eq RedeemerHash Source # 
Instance details

Defined in PlutusLedgerApi.V1.Scripts

FromData RedeemerHash Source # 
Instance details

Defined in PlutusLedgerApi.V1.Scripts

ToData RedeemerHash Source # 
Instance details

Defined in PlutusLedgerApi.V1.Scripts

UnsafeFromData RedeemerHash Source # 
Instance details

Defined in PlutusLedgerApi.V1.Scripts

Ord RedeemerHash Source # 
Instance details

Defined in PlutusLedgerApi.V1.Scripts

Show RedeemerHash Source # 
Instance details

Defined in PlutusLedgerApi.V1.Scripts

Pretty RedeemerHash Source #

using hex encoding

Instance details

Defined in PlutusLedgerApi.V1.Scripts

Methods

prettyRedeemerHashDoc ann Source #

prettyList ∷ [RedeemerHash] → Doc ann Source #

HasBlueprintSchema RedeemerHash referencedTypes Source # 
Instance details

Defined in PlutusLedgerApi.V1.Scripts

Methods

schemaSchema referencedTypes Source #

Lift DefaultUni RedeemerHash Source # 
Instance details

Defined in PlutusLedgerApi.V1.Scripts

Typeable DefaultUni RedeemerHash Source # 
Instance details

Defined in PlutusLedgerApi.V1.Scripts

type Rep RedeemerHash Source # 
Instance details

Defined in PlutusLedgerApi.V1.Scripts

type Rep RedeemerHash = D1 ('MetaData "RedeemerHash" "PlutusLedgerApi.V1.Scripts" "plutus-ledger-api-1.39.0.0-inplace" 'True) (C1 ('MetaCons "RedeemerHash" 'PrefixI 'False) (S1 ('MetaSel ('NothingMaybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 BuiltinByteString)))
type Unroll RedeemerHash Source # 
Instance details

Defined in PlutusLedgerApi.V1.Scripts

newtype Datum Source #

Datum is a wrapper around Data values which are used as data in transaction outputs.

Constructors

Datum 

Fields

Instances

Instances details
Generic Datum Source # 
Instance details

Defined in PlutusLedgerApi.V1.Scripts

Associated Types

type Rep DatumTypeType Source #

Methods

fromDatumRep Datum x Source #

toRep Datum x → Datum Source #

Show Datum Source # 
Instance details

Defined in PlutusLedgerApi.V1.Scripts

NFData Datum Source # 
Instance details

Defined in PlutusLedgerApi.V1.Scripts

Methods

rnfDatum → () Source #

Eq Datum Source # 
Instance details

Defined in PlutusLedgerApi.V1.Scripts

Methods

(==)DatumDatumBool Source #

(/=)DatumDatumBool Source #

Ord Datum Source # 
Instance details

Defined in PlutusLedgerApi.V1.Scripts

Methods

compareDatumDatumOrdering Source #

(<)DatumDatumBool Source #

(<=)DatumDatumBool Source #

(>)DatumDatumBool Source #

(>=)DatumDatumBool Source #

maxDatumDatumDatum Source #

minDatumDatumDatum Source #

HasBlueprintDefinition Datum Source # 
Instance details

Defined in PlutusLedgerApi.V1.Scripts

Associated Types

type Unroll Datum ∷ [Type] Source #

Eq Datum Source # 
Instance details

Defined in PlutusLedgerApi.V1.Scripts

Methods

(==)DatumDatumBool Source #

FromData Datum Source # 
Instance details

Defined in PlutusLedgerApi.V1.Scripts

ToData Datum Source # 
Instance details

Defined in PlutusLedgerApi.V1.Scripts

UnsafeFromData Datum Source # 
Instance details

Defined in PlutusLedgerApi.V1.Scripts

Show Datum Source # 
Instance details

Defined in PlutusLedgerApi.V1.Scripts

Pretty Datum Source # 
Instance details

Defined in PlutusLedgerApi.V1.Scripts

Methods

prettyDatumDoc ann Source #

prettyList ∷ [Datum] → Doc ann Source #

Serialise Datum Source # 
Instance details

Defined in PlutusLedgerApi.V1.Scripts

HasBlueprintSchema Datum referencedTypes Source # 
Instance details

Defined in PlutusLedgerApi.V1.Scripts

Methods

schemaSchema referencedTypes Source #

Lift DefaultUni Datum Source # 
Instance details

Defined in PlutusLedgerApi.V1.Scripts

Typeable DefaultUni Datum Source # 
Instance details

Defined in PlutusLedgerApi.V1.Scripts

type Rep Datum Source # 
Instance details

Defined in PlutusLedgerApi.V1.Scripts

type Rep Datum = D1 ('MetaData "Datum" "PlutusLedgerApi.V1.Scripts" "plutus-ledger-api-1.39.0.0-inplace" 'True) (C1 ('MetaCons "Datum" 'PrefixI 'True) (S1 ('MetaSel ('Just "getDatum") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 BuiltinData)))
type Unroll Datum Source # 
Instance details

Defined in PlutusLedgerApi.V1.Scripts

newtype DatumHash Source #

Type representing the BLAKE2b-256 hash of a datum. 32 bytes.

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.

Instances

Instances details
IsString DatumHash Source #

from hex encoding

Instance details

Defined in PlutusLedgerApi.V1.Scripts

Generic DatumHash Source # 
Instance details

Defined in PlutusLedgerApi.V1.Scripts

Associated Types

type Rep DatumHashTypeType Source #

Show DatumHash Source #

using hex encoding

Instance details

Defined in PlutusLedgerApi.V1.Scripts

NFData DatumHash Source # 
Instance details

Defined in PlutusLedgerApi.V1.Scripts

Methods

rnfDatumHash → () Source #

Eq DatumHash Source # 
Instance details

Defined in PlutusLedgerApi.V1.Scripts

Ord DatumHash Source # 
Instance details

Defined in PlutusLedgerApi.V1.Scripts

HasBlueprintDefinition DatumHash Source # 
Instance details

Defined in PlutusLedgerApi.V1.Scripts

Associated Types

type Unroll DatumHash ∷ [Type] Source #

Eq DatumHash Source # 
Instance details

Defined in PlutusLedgerApi.V1.Scripts

Methods

(==)DatumHashDatumHashBool Source #

FromData DatumHash Source # 
Instance details

Defined in PlutusLedgerApi.V1.Scripts

ToData DatumHash Source # 
Instance details

Defined in PlutusLedgerApi.V1.Scripts

UnsafeFromData DatumHash Source # 
Instance details

Defined in PlutusLedgerApi.V1.Scripts

Ord DatumHash Source # 
Instance details

Defined in PlutusLedgerApi.V1.Scripts

Show DatumHash Source # 
Instance details

Defined in PlutusLedgerApi.V1.Scripts

Pretty DatumHash Source #

using hex encoding

Instance details

Defined in PlutusLedgerApi.V1.Scripts

Methods

prettyDatumHashDoc ann Source #

prettyList ∷ [DatumHash] → Doc ann Source #

HasBlueprintSchema DatumHash referencedTypes Source # 
Instance details

Defined in PlutusLedgerApi.V1.Scripts

Methods

schemaSchema referencedTypes Source #

Lift DefaultUni DatumHash Source # 
Instance details

Defined in PlutusLedgerApi.V1.Scripts

Typeable DefaultUni DatumHash Source # 
Instance details

Defined in PlutusLedgerApi.V1.Scripts

type Rep DatumHash Source # 
Instance details

Defined in PlutusLedgerApi.V1.Scripts

type Rep DatumHash = D1 ('MetaData "DatumHash" "PlutusLedgerApi.V1.Scripts" "plutus-ledger-api-1.39.0.0-inplace" 'True) (C1 ('MetaCons "DatumHash" 'PrefixI 'False) (S1 ('MetaSel ('NothingMaybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 BuiltinByteString)))
type Unroll DatumHash Source # 
Instance details

Defined in PlutusLedgerApi.V1.Scripts

newtype Context Source #

Information about the state of the blockchain and about the transaction that is currently being validated, represented as a value in Data.

Constructors

Context BuiltinData 

Instances

Instances details
Show Context Source # 
Instance details

Defined in PlutusLedgerApi.V1.Scripts

Pretty Context Source # 
Instance details

Defined in PlutusLedgerApi.V1.Scripts

Methods

prettyContextDoc ann Source #

prettyList ∷ [Context] → Doc ann Source #

data ScriptError Source #

A higher-level evaluation error.

Constructors

EvaluationError ![Text] !String

Expected behavior of the engine (e.g. user-provided error)

EvaluationException !String !String

Unexpected behavior of the engine (a bug)

Instances

Instances details
Generic ScriptError Source # 
Instance details

Defined in PlutusLedgerApi.V1.Scripts

Associated Types

type Rep ScriptErrorTypeType Source #

Show ScriptError Source # 
Instance details

Defined in PlutusLedgerApi.V1.Scripts

NFData ScriptError Source # 
Instance details

Defined in PlutusLedgerApi.V1.Scripts

Methods

rnfScriptError → () Source #

Eq ScriptError Source # 
Instance details

Defined in PlutusLedgerApi.V1.Scripts

HasBlueprintDefinition ScriptError Source # 
Instance details

Defined in PlutusLedgerApi.V1.Scripts

Associated Types

type Unroll ScriptError ∷ [Type] Source #

type Rep ScriptError Source # 
Instance details

Defined in PlutusLedgerApi.V1.Scripts

type Unroll ScriptError Source # 
Instance details

Defined in PlutusLedgerApi.V1.Scripts

Script (de)serialization

type SerialisedScript = ShortByteString Source #

Scripts to the ledger are serialised bytestrings.

data ScriptForEvaluation Source #

A Plutus script ready to be evaluated on-chain, via evaluateScriptRestricting.

Instances

Instances details
Generic ScriptForEvaluation Source # 
Instance details

Defined in PlutusLedgerApi.Common.SerialisedScript

Associated Types

type Rep ScriptForEvaluationTypeType Source #

Show ScriptForEvaluation Source # 
Instance details

Defined in PlutusLedgerApi.Common.SerialisedScript

NFData ScriptForEvaluation Source # 
Instance details

Defined in PlutusLedgerApi.Common.SerialisedScript

Methods

rnfScriptForEvaluation → () Source #

Eq ScriptForEvaluation Source # 
Instance details

Defined in PlutusLedgerApi.Common.SerialisedScript

NoThunks ScriptForEvaluation Source # 
Instance details

Defined in PlutusLedgerApi.Common.SerialisedScript

type Rep ScriptForEvaluation Source # 
Instance details

Defined in PlutusLedgerApi.Common.SerialisedScript

type Rep ScriptForEvaluation = D1 ('MetaData "ScriptForEvaluation" "PlutusLedgerApi.Common.SerialisedScript" "plutus-ledger-api-1.39.0.0-inplace" 'False) (C1 ('MetaCons "UnsafeScriptForEvaluation" 'PrefixI 'False) (S1 ('MetaSel ('NothingMaybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 SerialisedScript) :*: S1 ('MetaSel ('NothingMaybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 ScriptNamedDeBruijn)))

data ScriptDecodeError Source #

An error that occurred during script deserialization.

Constructors

CBORDeserialiseError !DeserialiseFailureInfo

an error from the underlying CBOR/serialise library

RemainderError !ByteString

Script was successfully parsed, but more (runaway) bytes encountered after script's position

LedgerLanguageNotAvailableError

the plutus version of the given script is not enabled yet

Fields

PlutusCoreLanguageNotAvailableError 

Fields

Instances

Instances details
Exception ScriptDecodeError Source # 
Instance details

Defined in PlutusLedgerApi.Common.SerialisedScript

Show ScriptDecodeError Source # 
Instance details

Defined in PlutusLedgerApi.Common.SerialisedScript

Eq ScriptDecodeError Source # 
Instance details

Defined in PlutusLedgerApi.Common.SerialisedScript

AsScriptDecodeError ScriptDecodeError Source # 
Instance details

Defined in PlutusLedgerApi.Common.SerialisedScript

Pretty ScriptDecodeError Source # 
Instance details

Defined in PlutusLedgerApi.Common.SerialisedScript

newtype ScriptNamedDeBruijn Source #

A script with named de-bruijn indices.

serialiseCompiledCode ∷ ∀ a. CompiledCode a → SerialisedScript Source #

Turns a program which was compiled using the 'PlutusTx' toolchain into a binary format that is understood by the network and can be stored on-chain.

serialiseUPLCProgram DeBruijn DefaultUni DefaultFun () → SerialisedScript Source #

Turns a program's AST (most likely manually constructed) into a binary format that is understood by the network and can be stored on-chain.

deserialiseScript Source #

Arguments

∷ ∀ m. MonadError ScriptDecodeError m 
MajorProtocolVersion

which major protocol version the script was submitted in.

SerialisedScript

the script to deserialise.

→ m ScriptForEvaluation 

The deserialization from a serialised script into a ScriptForEvaluation, ready to be evaluated on-chain. Called inside phase-1 validation (i.e., deserialisation error is a phase-1 error).

uncheckedDeserialiseUPLCSerialisedScriptProgram DeBruijn DefaultUni DefaultFun () Source #

Deserialises a SerialisedScript back into an AST. Does *not* do ledger-language-version-specific checks like for allowable builtins.

Running scripts

evaluateScriptRestricting Source #

Arguments

MajorProtocolVersion

Which major protocol version to run the operation in

VerboseMode

Whether to produce log output

EvaluationContext

Includes the cost model to use for tallying up the execution costs

ExBudget

The resource budget which must not be exceeded during evaluation

ScriptForEvaluation

The script to evaluate

→ [Data]

The arguments to the script

→ (LogOutput, Either EvaluationError ExBudget) 

Evaluates a script, with a cost model and a budget that restricts how many resources it can use according to the cost model. Also returns the budget that was actually used.

Can be used to calculate budgets for scripts, but even in this case you must give a limit to guard against scripts that run for a long time or loop.

evaluateScriptCounting Source #

Arguments

MajorProtocolVersion

Which major protocol version to run the operation in

VerboseMode

Whether to produce log output

EvaluationContext

Includes the cost model to use for tallying up the execution costs

ScriptForEvaluation

The script to evaluate

→ [Data]

The arguments to the script

→ (LogOutput, Either EvaluationError ExBudget) 

Evaluates a script, returning the minimum budget that the script would need to evaluate successfully. This will take as long as the script takes, if you need to limit the execution time of the script also, you can use evaluateScriptRestricting, which also returns the used budget.

Protocol version

newtype MajorProtocolVersion Source #

This represents the major component of the Cardano protocol version. The ledger can only supply the major component of the protocol version, not the minor component, and Plutus should only need to care about the major component anyway. This relies on careful understanding between us and the ledger as to what this means.

Instances

Instances details
Generic MajorProtocolVersion Source # 
Instance details

Defined in PlutusLedgerApi.Common.ProtocolVersions

Associated Types

type Rep MajorProtocolVersionTypeType Source #

Show MajorProtocolVersion Source # 
Instance details

Defined in PlutusLedgerApi.Common.ProtocolVersions

Eq MajorProtocolVersion Source # 
Instance details

Defined in PlutusLedgerApi.Common.ProtocolVersions

Ord MajorProtocolVersion Source # 
Instance details

Defined in PlutusLedgerApi.Common.ProtocolVersions

Pretty MajorProtocolVersion Source # 
Instance details

Defined in PlutusLedgerApi.Common.ProtocolVersions

Serialise MajorProtocolVersion Source # 
Instance details

Defined in PlutusLedgerApi.Common.ProtocolVersions

type Rep MajorProtocolVersion Source # 
Instance details

Defined in PlutusLedgerApi.Common.ProtocolVersions

type Rep MajorProtocolVersion = D1 ('MetaData "MajorProtocolVersion" "PlutusLedgerApi.Common.ProtocolVersions" "plutus-ledger-api-1.39.0.0-inplace" 'True) (C1 ('MetaCons "MajorProtocolVersion" 'PrefixI 'True) (S1 ('MetaSel ('Just "getMajorProtocolVersion") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Int)))

Costing-related types

data ExBudget Source #

Constructors

ExBudget 

Instances

Instances details
FromJSON ExBudget 
Instance details

Defined in PlutusCore.Evaluation.Machine.ExBudget

Methods

parseJSON ∷ Value → Parser ExBudget

parseJSONList ∷ Value → Parser [ExBudget]

omittedFieldMaybe ExBudget

ToJSON ExBudget 
Instance details

Defined in PlutusCore.Evaluation.Machine.ExBudget

Methods

toJSONExBudget → Value

toEncodingExBudget → Encoding

toJSONList ∷ [ExBudget] → Value

toEncodingList ∷ [ExBudget] → Encoding

omitFieldExBudgetBool

Monoid ExBudget 
Instance details

Defined in PlutusCore.Evaluation.Machine.ExBudget

Semigroup ExBudget 
Instance details

Defined in PlutusCore.Evaluation.Machine.ExBudget

Generic ExBudget 
Instance details

Defined in PlutusCore.Evaluation.Machine.ExBudget

Associated Types

type Rep ExBudgetTypeType Source #

Show ExBudget 
Instance details

Defined in PlutusCore.Evaluation.Machine.ExBudget

NFData ExBudget 
Instance details

Defined in PlutusCore.Evaluation.Machine.ExBudget

Methods

rnfExBudget → () Source #

Eq ExBudget 
Instance details

Defined in PlutusCore.Evaluation.Machine.ExBudget

NoThunks ExBudget 
Instance details

Defined in PlutusCore.Evaluation.Machine.ExBudget

Pretty ExBudget 
Instance details

Defined in PlutusCore.Evaluation.Machine.ExBudget

Methods

prettyExBudgetDoc ann Source #

prettyList ∷ [ExBudget] → Doc ann Source #

Serialise ExBudget 
Instance details

Defined in PlutusCore.Evaluation.Machine.ExBudget

PrettyBy config ExBudget 
Instance details

Defined in PlutusCore.Evaluation.Machine.ExBudget

Methods

prettyBy ∷ config → ExBudgetDoc ann Source #

prettyListBy ∷ config → [ExBudget] → Doc ann Source #

Lift ExBudget 
Instance details

Defined in PlutusCore.Evaluation.Machine.ExBudget

Methods

liftQuote m ⇒ ExBudget → m Exp Source #

liftTyped ∷ ∀ (m ∷ TypeType). Quote m ⇒ ExBudgetCode m ExBudget Source #

type Rep ExBudget 
Instance details

Defined in PlutusCore.Evaluation.Machine.ExBudget

type Rep ExBudget = D1 ('MetaData "ExBudget" "PlutusCore.Evaluation.Machine.ExBudget" "plutus-core-1.39.0.0-inplace" 'False) (C1 ('MetaCons "ExBudget" 'PrefixI 'True) (S1 ('MetaSel ('Just "exBudgetCPU") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedUnpack) (Rec0 ExCPU) :*: S1 ('MetaSel ('Just "exBudgetMemory") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedUnpack) (Rec0 ExMemory)))

newtype ExCPU Source #

Counts CPU units in picoseconds: maximum value for SatInt is 2^63 ps, or appproximately 106 days.

Constructors

ExCPU CostingInteger 

Instances

Instances details
FromJSON ExCPU 
Instance details

Defined in PlutusCore.Evaluation.Machine.ExMemory

Methods

parseJSON ∷ Value → Parser ExCPU

parseJSONList ∷ Value → Parser [ExCPU]

omittedFieldMaybe ExCPU

ToJSON ExCPU 
Instance details

Defined in PlutusCore.Evaluation.Machine.ExMemory

Methods

toJSONExCPU → Value

toEncodingExCPU → Encoding

toJSONList ∷ [ExCPU] → Value

toEncodingList ∷ [ExCPU] → Encoding

omitFieldExCPUBool

Monoid ExCPU 
Instance details

Defined in PlutusCore.Evaluation.Machine.ExMemory

Semigroup ExCPU 
Instance details

Defined in PlutusCore.Evaluation.Machine.ExMemory

Methods

(<>)ExCPUExCPUExCPU Source #

sconcatNonEmpty ExCPUExCPU Source #

stimesIntegral b ⇒ b → ExCPUExCPU Source #

Bounded ExCPU 
Instance details

Defined in PlutusCore.Evaluation.Machine.ExMemory

Generic ExCPU 
Instance details

Defined in PlutusCore.Evaluation.Machine.ExMemory

Associated Types

type Rep ExCPUTypeType Source #

Methods

fromExCPURep ExCPU x Source #

toRep ExCPU x → ExCPU Source #

Num ExCPU 
Instance details

Defined in PlutusCore.Evaluation.Machine.ExMemory

Read ExCPU 
Instance details

Defined in PlutusCore.Evaluation.Machine.ExMemory

Show ExCPU 
Instance details

Defined in PlutusCore.Evaluation.Machine.ExMemory

NFData ExCPU 
Instance details

Defined in PlutusCore.Evaluation.Machine.ExMemory

Methods

rnfExCPU → () Source #

Eq ExCPU 
Instance details

Defined in PlutusCore.Evaluation.Machine.ExMemory

Methods

(==)ExCPUExCPUBool Source #

(/=)ExCPUExCPUBool Source #

Ord ExCPU 
Instance details

Defined in PlutusCore.Evaluation.Machine.ExMemory

Methods

compareExCPUExCPUOrdering Source #

(<)ExCPUExCPUBool Source #

(<=)ExCPUExCPUBool Source #

(>)ExCPUExCPUBool Source #

(>=)ExCPUExCPUBool Source #

maxExCPUExCPUExCPU Source #

minExCPUExCPUExCPU Source #

NoThunks ExCPU 
Instance details

Defined in PlutusCore.Evaluation.Machine.ExMemory

Pretty ExCPU 
Instance details

Defined in PlutusCore.Evaluation.Machine.ExMemory

Methods

prettyExCPUDoc ann Source #

prettyList ∷ [ExCPU] → Doc ann Source #

Serialise ExCPU 
Instance details

Defined in PlutusCore.Evaluation.Machine.ExMemory

PrettyBy config ExCPU 
Instance details

Defined in PlutusCore.Evaluation.Machine.ExMemory

Methods

prettyBy ∷ config → ExCPUDoc ann Source #

prettyListBy ∷ config → [ExCPU] → Doc ann Source #

Lift ExCPU 
Instance details

Defined in PlutusCore.Evaluation.Machine.ExMemory

Methods

liftQuote m ⇒ ExCPU → m Exp Source #

liftTyped ∷ ∀ (m ∷ TypeType). Quote m ⇒ ExCPUCode m ExCPU Source #

type Rep ExCPU 
Instance details

Defined in PlutusCore.Evaluation.Machine.ExMemory

type Rep ExCPU = D1 ('MetaData "ExCPU" "PlutusCore.Evaluation.Machine.ExMemory" "plutus-core-1.39.0.0-inplace" 'True) (C1 ('MetaCons "ExCPU" 'PrefixI 'False) (S1 ('MetaSel ('NothingMaybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 CostingInteger)))

newtype ExMemory Source #

Counts size in machine words.

Constructors

ExMemory CostingInteger 

Instances

Instances details
FromJSON ExMemory 
Instance details

Defined in PlutusCore.Evaluation.Machine.ExMemory

Methods

parseJSON ∷ Value → Parser ExMemory

parseJSONList ∷ Value → Parser [ExMemory]

omittedFieldMaybe ExMemory

ToJSON ExMemory 
Instance details

Defined in PlutusCore.Evaluation.Machine.ExMemory

Methods

toJSONExMemory → Value

toEncodingExMemory → Encoding

toJSONList ∷ [ExMemory] → Value

toEncodingList ∷ [ExMemory] → Encoding

omitFieldExMemoryBool

Monoid ExMemory 
Instance details

Defined in PlutusCore.Evaluation.Machine.ExMemory

Semigroup ExMemory 
Instance details

Defined in PlutusCore.Evaluation.Machine.ExMemory

Bounded ExMemory 
Instance details

Defined in PlutusCore.Evaluation.Machine.ExMemory

Generic ExMemory 
Instance details

Defined in PlutusCore.Evaluation.Machine.ExMemory

Associated Types

type Rep ExMemoryTypeType Source #

Num ExMemory 
Instance details

Defined in PlutusCore.Evaluation.Machine.ExMemory

Read ExMemory 
Instance details

Defined in PlutusCore.Evaluation.Machine.ExMemory

Show ExMemory 
Instance details

Defined in PlutusCore.Evaluation.Machine.ExMemory

NFData ExMemory 
Instance details

Defined in PlutusCore.Evaluation.Machine.ExMemory

Methods

rnfExMemory → () Source #

Eq ExMemory 
Instance details

Defined in PlutusCore.Evaluation.Machine.ExMemory

Ord ExMemory 
Instance details

Defined in PlutusCore.Evaluation.Machine.ExMemory

NoThunks ExMemory 
Instance details

Defined in PlutusCore.Evaluation.Machine.ExMemory

Pretty ExMemory 
Instance details

Defined in PlutusCore.Evaluation.Machine.ExMemory

Methods

prettyExMemoryDoc ann Source #

prettyList ∷ [ExMemory] → Doc ann Source #

Serialise ExMemory 
Instance details

Defined in PlutusCore.Evaluation.Machine.ExMemory

PrettyBy config ExMemory 
Instance details

Defined in PlutusCore.Evaluation.Machine.ExMemory

Methods

prettyBy ∷ config → ExMemoryDoc ann Source #

prettyListBy ∷ config → [ExMemory] → Doc ann Source #

Lift ExMemory 
Instance details

Defined in PlutusCore.Evaluation.Machine.ExMemory

Methods

liftQuote m ⇒ ExMemory → m Exp Source #

liftTyped ∷ ∀ (m ∷ TypeType). Quote m ⇒ ExMemoryCode m ExMemory Source #

type Rep ExMemory 
Instance details

Defined in PlutusCore.Evaluation.Machine.ExMemory

type Rep ExMemory = D1 ('MetaData "ExMemory" "PlutusCore.Evaluation.Machine.ExMemory" "plutus-core-1.39.0.0-inplace" 'True) (C1 ('MetaCons "ExMemory" 'PrefixI 'False) (S1 ('MetaSel ('NothingMaybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 CostingInteger)))

data SatInt Source #

Instances

Instances details
FromJSON SatInt 
Instance details

Defined in Data.SatInt

Methods

parseJSON ∷ Value → Parser SatInt

parseJSONList ∷ Value → Parser [SatInt]

omittedFieldMaybe SatInt

ToJSON SatInt 
Instance details

Defined in Data.SatInt

Methods

toJSONSatInt → Value

toEncodingSatInt → Encoding

toJSONList ∷ [SatInt] → Value

toEncodingList ∷ [SatInt] → Encoding

omitFieldSatIntBool

Bits SatInt 
Instance details

Defined in Data.SatInt

FiniteBits SatInt 
Instance details

Defined in Data.SatInt

Bounded SatInt 
Instance details

Defined in Data.SatInt

Generic SatInt 
Instance details

Defined in Data.SatInt

Associated Types

type Rep SatIntTypeType Source #

Methods

fromSatIntRep SatInt x Source #

toRep SatInt x → SatInt Source #

Num SatInt

In the Num instance, we plug in our own addition, multiplication and subtraction function that perform overflow-checking.

Instance details

Defined in Data.SatInt

Read SatInt 
Instance details

Defined in Data.SatInt

Show SatInt 
Instance details

Defined in Data.SatInt

FromField SatInt 
Instance details

Defined in Data.SatInt

Methods

parseField ∷ Field → Parser SatInt

NFData SatInt 
Instance details

Defined in Data.SatInt

Methods

rnfSatInt → () Source #

Eq SatInt 
Instance details

Defined in Data.SatInt

Methods

(==)SatIntSatIntBool Source #

(/=)SatIntSatIntBool Source #

Ord SatInt 
Instance details

Defined in Data.SatInt

NoThunks SatInt 
Instance details

Defined in Data.SatInt

Prim SatInt 
Instance details

Defined in Data.SatInt

Serialise SatInt 
Instance details

Defined in Data.SatInt

Lift SatInt 
Instance details

Defined in Data.SatInt

Methods

liftQuote m ⇒ SatInt → m Exp Source #

liftTyped ∷ ∀ (m ∷ TypeType). Quote m ⇒ SatIntCode m SatInt Source #

type Rep SatInt 
Instance details

Defined in Data.SatInt

type Rep SatInt = D1 ('MetaData "SatInt" "Data.SatInt" "plutus-core-1.39.0.0-inplace-satint" 'True) (C1 ('MetaCons "SI" 'PrefixI 'True) (S1 ('MetaSel ('Just "unSatInt") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Int)))

fromSatIntNum a ⇒ SatInt → a Source #

An optimized version of fromIntegral . unSatInt.

data ParamName Source #

The enumeration of all possible cost model parameter names for this language version.

IMPORTANT: The order of appearance of the data constructors here matters. DO NOT REORDER. See Note [Quotation marks in cost model parameter constructors] See Note [Cost model parameters from the ledger's point of view]

Constructors

AddInteger'cpu'arguments'intercept 
AddInteger'cpu'arguments'slope 
AddInteger'memory'arguments'intercept 
AddInteger'memory'arguments'slope 
AppendByteString'cpu'arguments'intercept 
AppendByteString'cpu'arguments'slope 
AppendByteString'memory'arguments'intercept 
AppendByteString'memory'arguments'slope 
AppendString'cpu'arguments'intercept 
AppendString'cpu'arguments'slope 
AppendString'memory'arguments'intercept 
AppendString'memory'arguments'slope 
BData'cpu'arguments 
BData'memory'arguments 
Blake2b_256'cpu'arguments'intercept 
Blake2b_256'cpu'arguments'slope 
Blake2b_256'memory'arguments 
CekApplyCost'exBudgetCPU 
CekApplyCost'exBudgetMemory 
CekBuiltinCost'exBudgetCPU 
CekBuiltinCost'exBudgetMemory 
CekConstCost'exBudgetCPU 
CekConstCost'exBudgetMemory 
CekDelayCost'exBudgetCPU 
CekDelayCost'exBudgetMemory 
CekForceCost'exBudgetCPU 
CekForceCost'exBudgetMemory 
CekLamCost'exBudgetCPU 
CekLamCost'exBudgetMemory 
CekStartupCost'exBudgetCPU 
CekStartupCost'exBudgetMemory 
CekVarCost'exBudgetCPU 
CekVarCost'exBudgetMemory 
ChooseData'cpu'arguments 
ChooseData'memory'arguments 
ChooseList'cpu'arguments 
ChooseList'memory'arguments 
ChooseUnit'cpu'arguments 
ChooseUnit'memory'arguments 
ConsByteString'cpu'arguments'intercept 
ConsByteString'cpu'arguments'slope 
ConsByteString'memory'arguments'intercept 
ConsByteString'memory'arguments'slope 
ConstrData'cpu'arguments 
ConstrData'memory'arguments 
DecodeUtf8'cpu'arguments'intercept 
DecodeUtf8'cpu'arguments'slope 
DecodeUtf8'memory'arguments'intercept 
DecodeUtf8'memory'arguments'slope 
DivideInteger'cpu'arguments'constant 
DivideInteger'cpu'arguments'model'arguments'intercept 
DivideInteger'cpu'arguments'model'arguments'slope 
DivideInteger'memory'arguments'intercept 
DivideInteger'memory'arguments'minimum 
DivideInteger'memory'arguments'slope 
EncodeUtf8'cpu'arguments'intercept 
EncodeUtf8'cpu'arguments'slope 
EncodeUtf8'memory'arguments'intercept 
EncodeUtf8'memory'arguments'slope 
EqualsByteString'cpu'arguments'constant 
EqualsByteString'cpu'arguments'intercept 
EqualsByteString'cpu'arguments'slope 
EqualsByteString'memory'arguments 
EqualsData'cpu'arguments'intercept 
EqualsData'cpu'arguments'slope 
EqualsData'memory'arguments 
EqualsInteger'cpu'arguments'intercept 
EqualsInteger'cpu'arguments'slope 
EqualsInteger'memory'arguments 
EqualsString'cpu'arguments'constant 
EqualsString'cpu'arguments'intercept 
EqualsString'cpu'arguments'slope 
EqualsString'memory'arguments 
FstPair'cpu'arguments 
FstPair'memory'arguments 
HeadList'cpu'arguments 
HeadList'memory'arguments 
IData'cpu'arguments 
IData'memory'arguments 
IfThenElse'cpu'arguments 
IfThenElse'memory'arguments 
IndexByteString'cpu'arguments 
IndexByteString'memory'arguments 
LengthOfByteString'cpu'arguments 
LengthOfByteString'memory'arguments 
LessThanByteString'cpu'arguments'intercept 
LessThanByteString'cpu'arguments'slope 
LessThanByteString'memory'arguments 
LessThanEqualsByteString'cpu'arguments'intercept 
LessThanEqualsByteString'cpu'arguments'slope 
LessThanEqualsByteString'memory'arguments 
LessThanEqualsInteger'cpu'arguments'intercept 
LessThanEqualsInteger'cpu'arguments'slope 
LessThanEqualsInteger'memory'arguments 
LessThanInteger'cpu'arguments'intercept 
LessThanInteger'cpu'arguments'slope 
LessThanInteger'memory'arguments 
ListData'cpu'arguments 
ListData'memory'arguments 
MapData'cpu'arguments 
MapData'memory'arguments 
MkCons'cpu'arguments 
MkCons'memory'arguments 
MkNilData'cpu'arguments 
MkNilData'memory'arguments 
MkNilPairData'cpu'arguments 
MkNilPairData'memory'arguments 
MkPairData'cpu'arguments 
MkPairData'memory'arguments 
ModInteger'cpu'arguments'constant 
ModInteger'cpu'arguments'model'arguments'intercept 
ModInteger'cpu'arguments'model'arguments'slope 
ModInteger'memory'arguments'intercept 
ModInteger'memory'arguments'minimum 
ModInteger'memory'arguments'slope 
MultiplyInteger'cpu'arguments'intercept 
MultiplyInteger'cpu'arguments'slope 
MultiplyInteger'memory'arguments'intercept 
MultiplyInteger'memory'arguments'slope 
NullList'cpu'arguments 
NullList'memory'arguments 
QuotientInteger'cpu'arguments'constant 
QuotientInteger'cpu'arguments'model'arguments'intercept 
QuotientInteger'cpu'arguments'model'arguments'slope 
QuotientInteger'memory'arguments'intercept 
QuotientInteger'memory'arguments'minimum 
QuotientInteger'memory'arguments'slope 
RemainderInteger'cpu'arguments'constant 
RemainderInteger'cpu'arguments'model'arguments'intercept 
RemainderInteger'cpu'arguments'model'arguments'slope 
RemainderInteger'memory'arguments'intercept 
RemainderInteger'memory'arguments'minimum 
RemainderInteger'memory'arguments'slope 
Sha2_256'cpu'arguments'intercept 
Sha2_256'cpu'arguments'slope 
Sha2_256'memory'arguments 
Sha3_256'cpu'arguments'intercept 
Sha3_256'cpu'arguments'slope 
Sha3_256'memory'arguments 
SliceByteString'cpu'arguments'intercept 
SliceByteString'cpu'arguments'slope 
SliceByteString'memory'arguments'intercept 
SliceByteString'memory'arguments'slope 
SndPair'cpu'arguments 
SndPair'memory'arguments 
SubtractInteger'cpu'arguments'intercept 
SubtractInteger'cpu'arguments'slope 
SubtractInteger'memory'arguments'intercept 
SubtractInteger'memory'arguments'slope 
TailList'cpu'arguments 
TailList'memory'arguments 
Trace'cpu'arguments 
Trace'memory'arguments 
UnBData'cpu'arguments 
UnBData'memory'arguments 
UnConstrData'cpu'arguments 
UnConstrData'memory'arguments 
UnIData'cpu'arguments 
UnIData'memory'arguments 
UnListData'cpu'arguments 
UnListData'memory'arguments 
UnMapData'cpu'arguments 
UnMapData'memory'arguments 
VerifyEd25519Signature'cpu'arguments'intercept 
VerifyEd25519Signature'cpu'arguments'slope 
VerifyEd25519Signature'memory'arguments 

Instances

Instances details
Bounded ParamName Source # 
Instance details

Defined in PlutusLedgerApi.V1.ParamName

Enum ParamName Source # 
Instance details

Defined in PlutusLedgerApi.V1.ParamName

Generic ParamName Source # 
Instance details

Defined in PlutusLedgerApi.V1.ParamName

Associated Types

type Rep ParamNameTypeType Source #

Ix ParamName Source # 
Instance details

Defined in PlutusLedgerApi.V1.ParamName

Eq ParamName Source # 
Instance details

Defined in PlutusLedgerApi.V1.ParamName

Ord ParamName Source # 
Instance details

Defined in PlutusLedgerApi.V1.ParamName

IsParamName ParamName Source # 
Instance details

Defined in PlutusLedgerApi.V1.ParamName

type Rep ParamName Source # 
Instance details

Defined in PlutusLedgerApi.V1.ParamName

type Rep ParamName = D1 ('MetaData "ParamName" "PlutusLedgerApi.V1.ParamName" "plutus-ledger-api-1.39.0.0-inplace" 'False) (((((((C1 ('MetaCons "AddInteger'cpu'arguments'intercept" 'PrefixI 'False) (U1TypeType) :+: C1 ('MetaCons "AddInteger'cpu'arguments'slope" 'PrefixI 'False) (U1TypeType)) :+: (C1 ('MetaCons "AddInteger'memory'arguments'intercept" 'PrefixI 'False) (U1TypeType) :+: (C1 ('MetaCons "AddInteger'memory'arguments'slope" 'PrefixI 'False) (U1TypeType) :+: C1 ('MetaCons "AppendByteString'cpu'arguments'intercept" 'PrefixI 'False) (U1TypeType)))) :+: ((C1 ('MetaCons "AppendByteString'cpu'arguments'slope" 'PrefixI 'False) (U1TypeType) :+: C1 ('MetaCons "AppendByteString'memory'arguments'intercept" 'PrefixI 'False) (U1TypeType)) :+: (C1 ('MetaCons "AppendByteString'memory'arguments'slope" 'PrefixI 'False) (U1TypeType) :+: (C1 ('MetaCons "AppendString'cpu'arguments'intercept" 'PrefixI 'False) (U1TypeType) :+: C1 ('MetaCons "AppendString'cpu'arguments'slope" 'PrefixI 'False) (U1TypeType))))) :+: (((C1 ('MetaCons "AppendString'memory'arguments'intercept" 'PrefixI 'False) (U1TypeType) :+: C1 ('MetaCons "AppendString'memory'arguments'slope" 'PrefixI 'False) (U1TypeType)) :+: (C1 ('MetaCons "BData'cpu'arguments" 'PrefixI 'False) (U1TypeType) :+: (C1 ('MetaCons "BData'memory'arguments" 'PrefixI 'False) (U1TypeType) :+: C1 ('MetaCons "Blake2b_256'cpu'arguments'intercept" 'PrefixI 'False) (U1TypeType)))) :+: ((C1 ('MetaCons "Blake2b_256'cpu'arguments'slope" 'PrefixI 'False) (U1TypeType) :+: C1 ('MetaCons "Blake2b_256'memory'arguments" 'PrefixI 'False) (U1TypeType)) :+: (C1 ('MetaCons "CekApplyCost'exBudgetCPU" 'PrefixI 'False) (U1TypeType) :+: (C1 ('MetaCons "CekApplyCost'exBudgetMemory" 'PrefixI 'False) (U1TypeType) :+: C1 ('MetaCons "CekBuiltinCost'exBudgetCPU" 'PrefixI 'False) (U1TypeType)))))) :+: ((((C1 ('MetaCons "CekBuiltinCost'exBudgetMemory" 'PrefixI 'False) (U1TypeType) :+: C1 ('MetaCons "CekConstCost'exBudgetCPU" 'PrefixI 'False) (U1TypeType)) :+: (C1 ('MetaCons "CekConstCost'exBudgetMemory" 'PrefixI 'False) (U1TypeType) :+: (C1 ('MetaCons "CekDelayCost'exBudgetCPU" 'PrefixI 'False) (U1TypeType) :+: C1 ('MetaCons "CekDelayCost'exBudgetMemory" 'PrefixI 'False) (U1TypeType)))) :+: ((C1 ('MetaCons "CekForceCost'exBudgetCPU" 'PrefixI 'False) (U1TypeType) :+: C1 ('MetaCons "CekForceCost'exBudgetMemory" 'PrefixI 'False) (U1TypeType)) :+: (C1 ('MetaCons "CekLamCost'exBudgetCPU" 'PrefixI 'False) (U1TypeType) :+: (C1 ('MetaCons "CekLamCost'exBudgetMemory" 'PrefixI 'False) (U1TypeType) :+: C1 ('MetaCons "CekStartupCost'exBudgetCPU" 'PrefixI 'False) (U1TypeType))))) :+: (((C1 ('MetaCons "CekStartupCost'exBudgetMemory" 'PrefixI 'False) (U1TypeType) :+: C1 ('MetaCons "CekVarCost'exBudgetCPU" 'PrefixI 'False) (U1TypeType)) :+: (C1 ('MetaCons "CekVarCost'exBudgetMemory" 'PrefixI 'False) (U1TypeType) :+: (C1 ('MetaCons "ChooseData'cpu'arguments" 'PrefixI 'False) (U1TypeType) :+: C1 ('MetaCons "ChooseData'memory'arguments" 'PrefixI 'False) (U1TypeType)))) :+: ((C1 ('MetaCons "ChooseList'cpu'arguments" 'PrefixI 'False) (U1TypeType) :+: (C1 ('MetaCons "ChooseList'memory'arguments" 'PrefixI 'False) (U1TypeType) :+: C1 ('MetaCons "ChooseUnit'cpu'arguments" 'PrefixI 'False) (U1TypeType))) :+: (C1 ('MetaCons "ChooseUnit'memory'arguments" 'PrefixI 'False) (U1TypeType) :+: (C1 ('MetaCons "ConsByteString'cpu'arguments'intercept" 'PrefixI 'False) (U1TypeType) :+: C1 ('MetaCons "ConsByteString'cpu'arguments'slope" 'PrefixI 'False) (U1TypeType))))))) :+: (((((C1 ('MetaCons "ConsByteString'memory'arguments'intercept" 'PrefixI 'False) (U1TypeType) :+: C1 ('MetaCons "ConsByteString'memory'arguments'slope" 'PrefixI 'False) (U1TypeType)) :+: (C1 ('MetaCons "ConstrData'cpu'arguments" 'PrefixI 'False) (U1TypeType) :+: (C1 ('MetaCons "ConstrData'memory'arguments" 'PrefixI 'False) (U1TypeType) :+: C1 ('MetaCons "DecodeUtf8'cpu'arguments'intercept" 'PrefixI 'False) (U1TypeType)))) :+: ((C1 ('MetaCons "DecodeUtf8'cpu'arguments'slope" 'PrefixI 'False) (U1TypeType) :+: C1 ('MetaCons "DecodeUtf8'memory'arguments'intercept" 'PrefixI 'False) (U1TypeType)) :+: (C1 ('MetaCons "DecodeUtf8'memory'arguments'slope" 'PrefixI 'False) (U1TypeType) :+: (C1 ('MetaCons "DivideInteger'cpu'arguments'constant" 'PrefixI 'False) (U1TypeType) :+: C1 ('MetaCons "DivideInteger'cpu'arguments'model'arguments'intercept" 'PrefixI 'False) (U1TypeType))))) :+: (((C1 ('MetaCons "DivideInteger'cpu'arguments'model'arguments'slope" 'PrefixI 'False) (U1TypeType) :+: C1 ('MetaCons "DivideInteger'memory'arguments'intercept" 'PrefixI 'False) (U1TypeType)) :+: (C1 ('MetaCons "DivideInteger'memory'arguments'minimum" 'PrefixI 'False) (U1TypeType) :+: (C1 ('MetaCons "DivideInteger'memory'arguments'slope" 'PrefixI 'False) (U1TypeType) :+: C1 ('MetaCons "EncodeUtf8'cpu'arguments'intercept" 'PrefixI 'False) (U1TypeType)))) :+: ((C1 ('MetaCons "EncodeUtf8'cpu'arguments'slope" 'PrefixI 'False) (U1TypeType) :+: (C1 ('MetaCons "EncodeUtf8'memory'arguments'intercept" 'PrefixI 'False) (U1TypeType) :+: C1 ('MetaCons "EncodeUtf8'memory'arguments'slope" 'PrefixI 'False) (U1TypeType))) :+: (C1 ('MetaCons "EqualsByteString'cpu'arguments'constant" 'PrefixI 'False) (U1TypeType) :+: (C1 ('MetaCons "EqualsByteString'cpu'arguments'intercept" 'PrefixI 'False) (U1TypeType) :+: C1 ('MetaCons "EqualsByteString'cpu'arguments'slope" 'PrefixI 'False) (U1TypeType)))))) :+: ((((C1 ('MetaCons "EqualsByteString'memory'arguments" 'PrefixI 'False) (U1TypeType) :+: C1 ('MetaCons "EqualsData'cpu'arguments'intercept" 'PrefixI 'False) (U1TypeType)) :+: (C1 ('MetaCons "EqualsData'cpu'arguments'slope" 'PrefixI 'False) (U1TypeType) :+: (C1 ('MetaCons "EqualsData'memory'arguments" 'PrefixI 'False) (U1TypeType) :+: C1 ('MetaCons "EqualsInteger'cpu'arguments'intercept" 'PrefixI 'False) (U1TypeType)))) :+: ((C1 ('MetaCons "EqualsInteger'cpu'arguments'slope" 'PrefixI 'False) (U1TypeType) :+: C1 ('MetaCons "EqualsInteger'memory'arguments" 'PrefixI 'False) (U1TypeType)) :+: (C1 ('MetaCons "EqualsString'cpu'arguments'constant" 'PrefixI 'False) (U1TypeType) :+: (C1 ('MetaCons "EqualsString'cpu'arguments'intercept" 'PrefixI 'False) (U1TypeType) :+: C1 ('MetaCons "EqualsString'cpu'arguments'slope" 'PrefixI 'False) (U1TypeType))))) :+: (((C1 ('MetaCons "EqualsString'memory'arguments" 'PrefixI 'False) (U1TypeType) :+: C1 ('MetaCons "FstPair'cpu'arguments" 'PrefixI 'False) (U1TypeType)) :+: (C1 ('MetaCons "FstPair'memory'arguments" 'PrefixI 'False) (U1TypeType) :+: (C1 ('MetaCons "HeadList'cpu'arguments" 'PrefixI 'False) (U1TypeType) :+: C1 ('MetaCons "HeadList'memory'arguments" 'PrefixI 'False) (U1TypeType)))) :+: ((C1 ('MetaCons "IData'cpu'arguments" 'PrefixI 'False) (U1TypeType) :+: (C1 ('MetaCons "IData'memory'arguments" 'PrefixI 'False) (U1TypeType) :+: C1 ('MetaCons "IfThenElse'cpu'arguments" 'PrefixI 'False) (U1TypeType))) :+: (C1 ('MetaCons "IfThenElse'memory'arguments" 'PrefixI 'False) (U1TypeType) :+: (C1 ('MetaCons "IndexByteString'cpu'arguments" 'PrefixI 'False) (U1TypeType) :+: C1 ('MetaCons "IndexByteString'memory'arguments" 'PrefixI 'False) (U1TypeType)))))))) :+: ((((((C1 ('MetaCons "LengthOfByteString'cpu'arguments" 'PrefixI 'False) (U1TypeType) :+: C1 ('MetaCons "LengthOfByteString'memory'arguments" 'PrefixI 'False) (U1TypeType)) :+: (C1 ('MetaCons "LessThanByteString'cpu'arguments'intercept" 'PrefixI 'False) (U1TypeType) :+: (C1 ('MetaCons "LessThanByteString'cpu'arguments'slope" 'PrefixI 'False) (U1TypeType) :+: C1 ('MetaCons "LessThanByteString'memory'arguments" 'PrefixI 'False) (U1TypeType)))) :+: ((C1 ('MetaCons "LessThanEqualsByteString'cpu'arguments'intercept" 'PrefixI 'False) (U1TypeType) :+: C1 ('MetaCons "LessThanEqualsByteString'cpu'arguments'slope" 'PrefixI 'False) (U1TypeType)) :+: (C1 ('MetaCons "LessThanEqualsByteString'memory'arguments" 'PrefixI 'False) (U1TypeType) :+: (C1 ('MetaCons "LessThanEqualsInteger'cpu'arguments'intercept" 'PrefixI 'False) (U1TypeType) :+: C1 ('MetaCons "LessThanEqualsInteger'cpu'arguments'slope" 'PrefixI 'False) (U1TypeType))))) :+: (((C1 ('MetaCons "LessThanEqualsInteger'memory'arguments" 'PrefixI 'False) (U1TypeType) :+: C1 ('MetaCons "LessThanInteger'cpu'arguments'intercept" 'PrefixI 'False) (U1TypeType)) :+: (C1 ('MetaCons "LessThanInteger'cpu'arguments'slope" 'PrefixI 'False) (U1TypeType) :+: (C1 ('MetaCons "LessThanInteger'memory'arguments" 'PrefixI 'False) (U1TypeType) :+: C1 ('MetaCons "ListData'cpu'arguments" 'PrefixI 'False) (U1TypeType)))) :+: ((C1 ('MetaCons "ListData'memory'arguments" 'PrefixI 'False) (U1TypeType) :+: C1 ('MetaCons "MapData'cpu'arguments" 'PrefixI 'False) (U1TypeType)) :+: (C1 ('MetaCons "MapData'memory'arguments" 'PrefixI 'False) (U1TypeType) :+: (C1 ('MetaCons "MkCons'cpu'arguments" 'PrefixI 'False) (U1TypeType) :+: C1 ('MetaCons "MkCons'memory'arguments" 'PrefixI 'False) (U1TypeType)))))) :+: ((((C1 ('MetaCons "MkNilData'cpu'arguments" 'PrefixI 'False) (U1TypeType) :+: C1 ('MetaCons "MkNilData'memory'arguments" 'PrefixI 'False) (U1TypeType)) :+: (C1 ('MetaCons "MkNilPairData'cpu'arguments" 'PrefixI 'False) (U1TypeType) :+: (C1 ('MetaCons "MkNilPairData'memory'arguments" 'PrefixI 'False) (U1TypeType) :+: C1 ('MetaCons "MkPairData'cpu'arguments" 'PrefixI 'False) (U1TypeType)))) :+: ((C1 ('MetaCons "MkPairData'memory'arguments" 'PrefixI 'False) (U1TypeType) :+: C1 ('MetaCons "ModInteger'cpu'arguments'constant" 'PrefixI 'False) (U1TypeType)) :+: (C1 ('MetaCons "ModInteger'cpu'arguments'model'arguments'intercept" 'PrefixI 'False) (U1TypeType) :+: (C1 ('MetaCons "ModInteger'cpu'arguments'model'arguments'slope" 'PrefixI 'False) (U1TypeType) :+: C1 ('MetaCons "ModInteger'memory'arguments'intercept" 'PrefixI 'False) (U1TypeType))))) :+: (((C1 ('MetaCons "ModInteger'memory'arguments'minimum" 'PrefixI 'False) (U1TypeType) :+: C1 ('MetaCons "ModInteger'memory'arguments'slope" 'PrefixI 'False) (U1TypeType)) :+: (C1 ('MetaCons "MultiplyInteger'cpu'arguments'intercept" 'PrefixI 'False) (U1TypeType) :+: (C1 ('MetaCons "MultiplyInteger'cpu'arguments'slope" 'PrefixI 'False) (U1TypeType) :+: C1 ('MetaCons "MultiplyInteger'memory'arguments'intercept" 'PrefixI 'False) (U1TypeType)))) :+: ((C1 ('MetaCons "MultiplyInteger'memory'arguments'slope" 'PrefixI 'False) (U1TypeType) :+: (C1 ('MetaCons "NullList'cpu'arguments" 'PrefixI 'False) (U1TypeType) :+: C1 ('MetaCons "NullList'memory'arguments" 'PrefixI 'False) (U1TypeType))) :+: (C1 ('MetaCons "QuotientInteger'cpu'arguments'constant" 'PrefixI 'False) (U1TypeType) :+: (C1 ('MetaCons "QuotientInteger'cpu'arguments'model'arguments'intercept" 'PrefixI 'False) (U1TypeType) :+: C1 ('MetaCons "QuotientInteger'cpu'arguments'model'arguments'slope" 'PrefixI 'False) (U1TypeType))))))) :+: (((((C1 ('MetaCons "QuotientInteger'memory'arguments'intercept" 'PrefixI 'False) (U1TypeType) :+: C1 ('MetaCons "QuotientInteger'memory'arguments'minimum" 'PrefixI 'False) (U1TypeType)) :+: (C1 ('MetaCons "QuotientInteger'memory'arguments'slope" 'PrefixI 'False) (U1TypeType) :+: (C1 ('MetaCons "RemainderInteger'cpu'arguments'constant" 'PrefixI 'False) (U1TypeType) :+: C1 ('MetaCons "RemainderInteger'cpu'arguments'model'arguments'intercept" 'PrefixI 'False) (U1TypeType)))) :+: ((C1 ('MetaCons "RemainderInteger'cpu'arguments'model'arguments'slope" 'PrefixI 'False) (U1TypeType) :+: C1 ('MetaCons "RemainderInteger'memory'arguments'intercept" 'PrefixI 'False) (U1TypeType)) :+: (C1 ('MetaCons "RemainderInteger'memory'arguments'minimum" 'PrefixI 'False) (U1TypeType) :+: (C1 ('MetaCons "RemainderInteger'memory'arguments'slope" 'PrefixI 'False) (U1TypeType) :+: C1 ('MetaCons "Sha2_256'cpu'arguments'intercept" 'PrefixI 'False) (U1TypeType))))) :+: (((C1 ('MetaCons "Sha2_256'cpu'arguments'slope" 'PrefixI 'False) (U1TypeType) :+: C1 ('MetaCons "Sha2_256'memory'arguments" 'PrefixI 'False) (U1TypeType)) :+: (C1 ('MetaCons "Sha3_256'cpu'arguments'intercept" 'PrefixI 'False) (U1TypeType) :+: (C1 ('MetaCons "Sha3_256'cpu'arguments'slope" 'PrefixI 'False) (U1TypeType) :+: C1 ('MetaCons "Sha3_256'memory'arguments" 'PrefixI 'False) (U1TypeType)))) :+: ((C1 ('MetaCons "SliceByteString'cpu'arguments'intercept" 'PrefixI 'False) (U1TypeType) :+: (C1 ('MetaCons "SliceByteString'cpu'arguments'slope" 'PrefixI 'False) (U1TypeType) :+: C1 ('MetaCons "SliceByteString'memory'arguments'intercept" 'PrefixI 'False) (U1TypeType))) :+: (C1 ('MetaCons "SliceByteString'memory'arguments'slope" 'PrefixI 'False) (U1TypeType) :+: (C1 ('MetaCons "SndPair'cpu'arguments" 'PrefixI 'False) (U1TypeType) :+: C1 ('MetaCons "SndPair'memory'arguments" 'PrefixI 'False) (U1TypeType)))))) :+: ((((C1 ('MetaCons "SubtractInteger'cpu'arguments'intercept" 'PrefixI 'False) (U1TypeType) :+: C1 ('MetaCons "SubtractInteger'cpu'arguments'slope" 'PrefixI 'False) (U1TypeType)) :+: (C1 ('MetaCons "SubtractInteger'memory'arguments'intercept" 'PrefixI 'False) (U1TypeType) :+: (C1 ('MetaCons "SubtractInteger'memory'arguments'slope" 'PrefixI 'False) (U1TypeType) :+: C1 ('MetaCons "TailList'cpu'arguments" 'PrefixI 'False) (U1TypeType)))) :+: ((C1 ('MetaCons "TailList'memory'arguments" 'PrefixI 'False) (U1TypeType) :+: C1 ('MetaCons "Trace'cpu'arguments" 'PrefixI 'False) (U1TypeType)) :+: (C1 ('MetaCons "Trace'memory'arguments" 'PrefixI 'False) (U1TypeType) :+: (C1 ('MetaCons "UnBData'cpu'arguments" 'PrefixI 'False) (U1TypeType) :+: C1 ('MetaCons "UnBData'memory'arguments" 'PrefixI 'False) (U1TypeType))))) :+: (((C1 ('MetaCons "UnConstrData'cpu'arguments" 'PrefixI 'False) (U1TypeType) :+: C1 ('MetaCons "UnConstrData'memory'arguments" 'PrefixI 'False) (U1TypeType)) :+: (C1 ('MetaCons "UnIData'cpu'arguments" 'PrefixI 'False) (U1TypeType) :+: (C1 ('MetaCons "UnIData'memory'arguments" 'PrefixI 'False) (U1TypeType) :+: C1 ('MetaCons "UnListData'cpu'arguments" 'PrefixI 'False) (U1TypeType)))) :+: ((C1 ('MetaCons "UnListData'memory'arguments" 'PrefixI 'False) (U1TypeType) :+: (C1 ('MetaCons "UnMapData'cpu'arguments" 'PrefixI 'False) (U1TypeType) :+: C1 ('MetaCons "UnMapData'memory'arguments" 'PrefixI 'False) (U1TypeType))) :+: (C1 ('MetaCons "VerifyEd25519Signature'cpu'arguments'intercept" 'PrefixI 'False) (U1TypeType) :+: (C1 ('MetaCons "VerifyEd25519Signature'cpu'arguments'slope" 'PrefixI 'False) (U1TypeType) :+: C1 ('MetaCons "VerifyEd25519Signature'memory'arguments" 'PrefixI 'False) (U1TypeType)))))))))

tagWithParamNames ∷ ∀ k m. (Enum k, Bounded k, MonadError CostModelApplyError m, MonadWriter [CostModelApplyWarn] m) ⇒ [Int64] → m [(k, Int64)] Source #

Given an ordered list of parameter values, tag them with their parameter names. If the passed parameter values are more than expected: the function will ignore the extraneous values at the tail of the list, if the passed values are less than expected: the function will throw an error; for more information, see Note [Cost model parameters from the ledger's point of view]

Evaluation

data EvaluationError Source #

Errors that can be thrown when evaluating a Plutus script.

Constructors

CekError !(CekEvaluationException NamedDeBruijn DefaultUni DefaultFun)

An error from the evaluator itself

DeBruijnError !FreeVariableError

An error in the pre-evaluation step of converting from de-Bruijn indices

CodecError !ScriptDecodeError

A deserialisation error TODO: make this error more informative when we have more information about what went wrong

CostModelParameterMismatch

An error indicating that the cost model parameters didn't match what we expected

InvalidReturnValue

The script evaluated to a value that is not a valid return value.

data EvaluationContext Source #

An opaque type that contains all the static parameters that the evaluator needs to evaluate a script. This is so that they can be computed once and cached, rather than being recomputed on every evaluation.

Different protocol versions may require different bundles of machine parameters, which allows us for example to tweak the shape of the costing function of a builtin, so that the builtin costs less. Currently this means that we have to create multiple DefaultMachineParameters per language version, which we put into a cache (represented by an association list) in order to avoid costly recomputation of machine parameters.

In order to get the appropriate DefaultMachineParameters at validation time we look it up in the cache using a semantics variant as a key. We compute the semantics variant from the protocol version using the stored function. Note that the semantics variant depends on the language version too, but the latter is known statically (because each language version has its own evaluation context), hence there's no reason to require it to be provided at runtime.

To say it differently, there's a matrix of semantics variants indexed by (LL, PV) pairs and we cache its particular row corresponding to the statically given LL in an EvaluationContext.

The reason why we associate a DefaultMachineParameters with a semantics variant rather than a protocol version are

  1. generally there are far more protocol versions than semantics variants supported by a specific language version, so we save on pointless duplication of bundles of machine parameters
  2. builtins don't know anything about protocol versions, only semantics variants. It is therefore more semantically precise to associate bundles of machine parameters with semantics variants than with protocol versions

Instances

Instances details
Generic EvaluationContext Source # 
Instance details

Defined in PlutusLedgerApi.Common.Eval

Associated Types

type Rep EvaluationContextTypeType Source #

NFData EvaluationContext Source # 
Instance details

Defined in PlutusLedgerApi.Common.Eval

Methods

rnfEvaluationContext → () Source #

NoThunks EvaluationContext Source # 
Instance details

Defined in PlutusLedgerApi.Common.Eval

type Rep EvaluationContext Source # 
Instance details

Defined in PlutusLedgerApi.Common.Eval

type Rep EvaluationContext = D1 ('MetaData "EvaluationContext" "PlutusLedgerApi.Common.Eval" "plutus-ledger-api-1.39.0.0-inplace" 'False) (C1 ('MetaCons "EvaluationContext" 'PrefixI 'True) (S1 ('MetaSel ('Just "_evalCtxLedgerLang") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 PlutusLedgerLanguage) :*: (S1 ('MetaSel ('Just "_evalCtxToSemVar") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (MajorProtocolVersionBuiltinSemanticsVariant DefaultFun)) :*: S1 ('MetaSel ('Just "_evalCtxMachParsCache") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 [(BuiltinSemanticsVariant DefaultFun, DefaultMachineParameters)]))))

class AsScriptDecodeError r where Source #

Minimal complete definition

_ScriptDecodeError

type LogOutput = [Text] Source #

The type of the executed script's accumulated log output: a list of Text.

It will be an empty list if the VerboseMode is set to Quiet.

data VerboseMode Source #

A simple toggle indicating whether or not we should accumulate logs during script execution.

Constructors

Verbose

accumulate all traces

Quiet

don't accumulate anything

Instances

Instances details
Eq VerboseMode Source # 
Instance details

Defined in PlutusLedgerApi.Common.Eval

evaluateTermExBudgetMode cost DefaultUni DefaultFunMajorProtocolVersionVerboseModeEvaluationContextTerm NamedDeBruijn DefaultUni DefaultFun () → (Either (CekEvaluationException NamedDeBruijn DefaultUni DefaultFun) (Term NamedDeBruijn DefaultUni DefaultFun ()), cost, [Text]) Source #

Evaluate a fully-applied term using the CEK machine. Useful for mimicking the behaviour of the on-chain evaluator.

mkDynEvaluationContextMonadError CostModelApplyError m ⇒ PlutusLedgerLanguage → [BuiltinSemanticsVariant DefaultFun] → (MajorProtocolVersionBuiltinSemanticsVariant DefaultFun) → CostModelParams → m EvaluationContext Source #

Create an EvaluationContext given all builtin semantics variants supported by the provided language version.

The input is a Map of Texts to cost integer values (aka CostModelParams, CostModel) See Note [Inlining meanings of builtins].

IMPORTANT: the toSemVar argument computes the semantics variant for each MajorProtocolVersion and it must only return semantics variants from the semVars list, as well as cover ANY MajorProtocolVersion, including those that do not exist yet (i.e. toSemVar must never fail).

IMPORTANT: The evaluation context of every Plutus version must be recreated upon a protocol update with the updated cost model parameters.

mkTermToEvaluate Source #

Arguments

MonadError EvaluationError m 
PlutusLedgerLanguage

the Plutus ledger language of the script under execution.

MajorProtocolVersion

which major protocol version to run the operation in

ScriptForEvaluation

the script to evaluate

→ [Data]

the arguments that the script's underlying term will be applied to

→ m (Term NamedDeBruijn DefaultUni DefaultFun ()) 

Shared helper for the evaluation functions: evaluateScriptCounting and evaluateScriptRestricting,

Given a ScriptForEvaluation:

1) applies the term to a list of Data arguments (e.g. Datum, Redeemer, ScriptContext) 2) checks that the applied-term is well-scoped 3) returns the applied-term

Evaluation context

mkEvaluationContext Source #

Arguments

∷ (MonadError CostModelApplyError m, MonadWriter [CostModelApplyWarn] m) 
⇒ [Int64]

the (updated) cost model parameters of the protocol

→ m EvaluationContext 

Build the EvaluationContext.

The input is a list of cost model parameters (which are integer values) passed from the ledger.

IMPORTANT: the cost model parameters MUST appear in the correct order, matching the names in ParamName. If the parameters are supplied in the wrong order then script cost calculations will be incorrect.

IMPORTANT: The evaluation context of every Plutus version must be recreated upon a protocol update with the updated cost model parameters.

type CostModelParams = Map Text Int64 Source #

A raw representation of the ledger's cost model parameters.

The associated keys/names to the parameter values are arbitrarily set by the plutus team; the ledger does not hold any such names.

See Note [Cost model parameters]

data CostModelApplyError Source #

A fatal error when trying to create a cost given some plain costmodel parameters.

Constructors

CMUnknownParamError !Text

a costmodel parameter with the give name does not exist in the costmodel to be applied upon

CMInternalReadError

internal error when we are transforming the applyParams' input to json (should not happen)

CMInternalWriteError !String

internal error when we are transforming the applied params from json with given jsonstring error (should not happen)

Instances

Instances details
Data CostModelApplyError 
Instance details

Defined in PlutusCore.Evaluation.Machine.CostModelInterface

Methods

gfoldl ∷ (∀ d b. Data d ⇒ c (d → b) → d → c b) → (∀ g. g → c g) → CostModelApplyError → c CostModelApplyError Source #

gunfold ∷ (∀ b r. Data b ⇒ c (b → r) → c r) → (∀ r. r → c r) → Constr → c CostModelApplyError Source #

toConstrCostModelApplyErrorConstr Source #

dataTypeOfCostModelApplyErrorDataType Source #

dataCast1Typeable t ⇒ (∀ d. Data d ⇒ c (t d)) → Maybe (c CostModelApplyError) Source #

dataCast2Typeable t ⇒ (∀ d e. (Data d, Data e) ⇒ c (t d e)) → Maybe (c CostModelApplyError) Source #

gmapT ∷ (∀ b. Data b ⇒ b → b) → CostModelApplyErrorCostModelApplyError Source #

gmapQl ∷ (r → r' → r) → r → (∀ d. Data d ⇒ d → r') → CostModelApplyError → r Source #

gmapQr ∷ ∀ r r'. (r' → r → r) → r → (∀ d. Data d ⇒ d → r') → CostModelApplyError → r Source #

gmapQ ∷ (∀ d. Data d ⇒ d → u) → CostModelApplyError → [u] Source #

gmapQiInt → (∀ d. Data d ⇒ d → u) → CostModelApplyError → u Source #

gmapMMonad m ⇒ (∀ d. Data d ⇒ d → m d) → CostModelApplyError → m CostModelApplyError Source #

gmapMpMonadPlus m ⇒ (∀ d. Data d ⇒ d → m d) → CostModelApplyError → m CostModelApplyError Source #

gmapMoMonadPlus m ⇒ (∀ d. Data d ⇒ d → m d) → CostModelApplyError → m CostModelApplyError Source #

Exception CostModelApplyError 
Instance details

Defined in PlutusCore.Evaluation.Machine.CostModelInterface

Generic CostModelApplyError 
Instance details

Defined in PlutusCore.Evaluation.Machine.CostModelInterface

Associated Types

type Rep CostModelApplyErrorTypeType Source #

Show CostModelApplyError 
Instance details

Defined in PlutusCore.Evaluation.Machine.CostModelInterface

NFData CostModelApplyError 
Instance details

Defined in PlutusCore.Evaluation.Machine.CostModelInterface

Methods

rnfCostModelApplyError → () Source #

Eq CostModelApplyError 
Instance details

Defined in PlutusCore.Evaluation.Machine.CostModelInterface

NoThunks CostModelApplyError 
Instance details

Defined in PlutusCore.Evaluation.Machine.CostModelInterface

Pretty CostModelApplyError 
Instance details

Defined in PlutusCore.Evaluation.Machine.CostModelInterface

type Rep CostModelApplyError 
Instance details

Defined in PlutusCore.Evaluation.Machine.CostModelInterface

type Rep CostModelApplyError = D1 ('MetaData "CostModelApplyError" "PlutusCore.Evaluation.Machine.CostModelInterface" "plutus-core-1.39.0.0-inplace" 'False) (C1 ('MetaCons "CMUnknownParamError" 'PrefixI 'False) (S1 ('MetaSel ('NothingMaybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Text)) :+: (C1 ('MetaCons "CMInternalReadError" 'PrefixI 'False) (U1TypeType) :+: C1 ('MetaCons "CMInternalWriteError" 'PrefixI 'False) (S1 ('MetaSel ('NothingMaybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 String))))

Script Context

data TxInfo Source #

A pending transaction. This is the view as seen by validator scripts, so some details are stripped out.

Constructors

TxInfo 

Fields

Instances

Instances details
Generic TxInfo Source # 
Instance details

Defined in PlutusLedgerApi.V1.Contexts

Associated Types

type Rep TxInfoTypeType Source #

Methods

fromTxInfoRep TxInfo x Source #

toRep TxInfo x → TxInfo Source #

Show TxInfo Source # 
Instance details

Defined in PlutusLedgerApi.V1.Contexts

Eq TxInfo Source # 
Instance details

Defined in PlutusLedgerApi.V1.Contexts

Methods

(==)TxInfoTxInfoBool Source #

(/=)TxInfoTxInfoBool Source #

HasBlueprintDefinition TxInfo Source # 
Instance details

Defined in PlutusLedgerApi.V1.Contexts

Associated Types

type Unroll TxInfo ∷ [Type] Source #

Eq TxInfo Source # 
Instance details

Defined in PlutusLedgerApi.V1.Contexts

Methods

(==)TxInfoTxInfoBool Source #

FromData TxInfo Source # 
Instance details

Defined in PlutusLedgerApi.V1.Contexts

ToData TxInfo Source # 
Instance details

Defined in PlutusLedgerApi.V1.Contexts

UnsafeFromData TxInfo Source # 
Instance details

Defined in PlutusLedgerApi.V1.Contexts

Pretty TxInfo Source # 
Instance details

Defined in PlutusLedgerApi.V1.Contexts

Methods

prettyTxInfoDoc ann Source #

prettyList ∷ [TxInfo] → Doc ann Source #

(HasSchemaDefinition [TxInInfo] referencedTypes, HasSchemaDefinition [TxOut] referencedTypes, HasSchemaDefinition Value referencedTypes, HasSchemaDefinition [DCert] referencedTypes, HasSchemaDefinition [(StakingCredential, Integer)] referencedTypes, HasSchemaDefinition POSIXTimeRange referencedTypes, HasSchemaDefinition [PubKeyHash] referencedTypes, HasSchemaDefinition [(DatumHash, Datum)] referencedTypes, HasSchemaDefinition TxId referencedTypes) ⇒ HasBlueprintSchema TxInfo referencedTypes Source # 
Instance details

Defined in PlutusLedgerApi.V1.Contexts

Methods

schemaSchema referencedTypes Source #

Lift DefaultUni TxInfo Source # 
Instance details

Defined in PlutusLedgerApi.V1.Contexts

Typeable DefaultUni TxInfo Source # 
Instance details

Defined in PlutusLedgerApi.V1.Contexts

type Rep TxInfo Source # 
Instance details

Defined in PlutusLedgerApi.V1.Contexts

type Unroll TxInfo Source # 
Instance details

Defined in PlutusLedgerApi.V1.Contexts

data ScriptContext Source #

The context that the currently-executing script can access.

Constructors

ScriptContext 

Fields

Instances

Instances details
Generic ScriptContext Source # 
Instance details

Defined in PlutusLedgerApi.V1.Contexts

Associated Types

type Rep ScriptContextTypeType Source #

Show ScriptContext Source # 
Instance details

Defined in PlutusLedgerApi.V1.Contexts

Eq ScriptContext Source # 
Instance details

Defined in PlutusLedgerApi.V1.Contexts

Eq ScriptContext Source # 
Instance details

Defined in PlutusLedgerApi.V1.Contexts

FromData ScriptContext Source # 
Instance details

Defined in PlutusLedgerApi.V1.Contexts

ToData ScriptContext Source # 
Instance details

Defined in PlutusLedgerApi.V1.Contexts

UnsafeFromData ScriptContext Source # 
Instance details

Defined in PlutusLedgerApi.V1.Contexts

Pretty ScriptContext Source # 
Instance details

Defined in PlutusLedgerApi.V1.Contexts

(HasSchemaDefinition TxInfo referencedTypes, HasSchemaDefinition ScriptPurpose referencedTypes) ⇒ HasBlueprintSchema ScriptContext referencedTypes Source # 
Instance details

Defined in PlutusLedgerApi.V1.Contexts

Methods

schemaSchema referencedTypes Source #

Lift DefaultUni ScriptContext Source # 
Instance details

Defined in PlutusLedgerApi.V1.Contexts

Typeable DefaultUni ScriptContext Source # 
Instance details

Defined in PlutusLedgerApi.V1.Contexts

type Rep ScriptContext Source # 
Instance details

Defined in PlutusLedgerApi.V1.Contexts

type Rep ScriptContext = D1 ('MetaData "ScriptContext" "PlutusLedgerApi.V1.Contexts" "plutus-ledger-api-1.39.0.0-inplace" 'False) (C1 ('MetaCons "ScriptContext" 'PrefixI 'True) (S1 ('MetaSel ('Just "scriptContextTxInfo") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 TxInfo) :*: S1 ('MetaSel ('Just "scriptContextPurpose") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 ScriptPurpose)))

data ScriptPurpose Source #

Purpose of the script that is currently running

Instances

Instances details
Generic ScriptPurpose Source # 
Instance details

Defined in PlutusLedgerApi.V1.Contexts

Associated Types

type Rep ScriptPurposeTypeType Source #

Show ScriptPurpose Source # 
Instance details

Defined in PlutusLedgerApi.V1.Contexts

Eq ScriptPurpose Source # 
Instance details

Defined in PlutusLedgerApi.V1.Contexts

Ord ScriptPurpose Source # 
Instance details

Defined in PlutusLedgerApi.V1.Contexts

HasBlueprintDefinition ScriptPurpose Source # 
Instance details

Defined in PlutusLedgerApi.V1.Contexts

Associated Types

type Unroll ScriptPurpose ∷ [Type] Source #

Eq ScriptPurpose Source # 
Instance details

Defined in PlutusLedgerApi.V1.Contexts

FromData ScriptPurpose Source # 
Instance details

Defined in PlutusLedgerApi.V1.Contexts

ToData ScriptPurpose Source # 
Instance details

Defined in PlutusLedgerApi.V1.Contexts

UnsafeFromData ScriptPurpose Source # 
Instance details

Defined in PlutusLedgerApi.V1.Contexts

Pretty ScriptPurpose Source # 
Instance details

Defined in PlutusLedgerApi.V1.Contexts

(HasSchemaDefinition CurrencySymbol referencedTypes, HasSchemaDefinition TxOutRef referencedTypes, HasSchemaDefinition StakingCredential referencedTypes, HasSchemaDefinition DCert referencedTypes) ⇒ HasBlueprintSchema ScriptPurpose referencedTypes Source # 
Instance details

Defined in PlutusLedgerApi.V1.Contexts

Methods

schemaSchema referencedTypes Source #

Lift DefaultUni ScriptPurpose Source # 
Instance details

Defined in PlutusLedgerApi.V1.Contexts

Typeable DefaultUni ScriptPurpose Source # 
Instance details

Defined in PlutusLedgerApi.V1.Contexts

type Rep ScriptPurpose Source # 
Instance details

Defined in PlutusLedgerApi.V1.Contexts

type Unroll ScriptPurpose Source # 
Instance details

Defined in PlutusLedgerApi.V1.Contexts

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.

Constructors

TxId 

Instances

Instances details
IsString TxId Source #

from hex encoding

Instance details

Defined in PlutusLedgerApi.V1.Tx

Methods

fromStringStringTxId Source #

Generic TxId Source # 
Instance details

Defined in PlutusLedgerApi.V1.Tx

Associated Types

type Rep TxIdTypeType Source #

Methods

fromTxIdRep TxId x Source #

toRep TxId x → TxId Source #

Show TxId Source #

using hex encoding

Instance details

Defined in PlutusLedgerApi.V1.Tx

Methods

showsPrecIntTxIdShowS Source #

showTxIdString Source #

showList ∷ [TxId] → ShowS Source #

NFData TxId Source # 
Instance details

Defined in PlutusLedgerApi.V1.Tx

Methods

rnfTxId → () Source #

Eq TxId Source # 
Instance details

Defined in PlutusLedgerApi.V1.Tx

Methods

(==)TxIdTxIdBool Source #

(/=)TxIdTxIdBool Source #

Ord TxId Source # 
Instance details

Defined in PlutusLedgerApi.V1.Tx

Methods

compareTxIdTxIdOrdering Source #

(<)TxIdTxIdBool Source #

(<=)TxIdTxIdBool Source #

(>)TxIdTxIdBool Source #

(>=)TxIdTxIdBool Source #

maxTxIdTxIdTxId Source #

minTxIdTxIdTxId Source #

HasBlueprintDefinition TxId Source # 
Instance details

Defined in PlutusLedgerApi.V1.Tx

Associated Types

type Unroll TxId ∷ [Type] Source #

Eq TxId Source # 
Instance details

Defined in PlutusLedgerApi.V1.Tx

Methods

(==)TxIdTxIdBool Source #

FromData TxId Source # 
Instance details

Defined in PlutusLedgerApi.V1.Tx

ToData TxId Source # 
Instance details

Defined in PlutusLedgerApi.V1.Tx

UnsafeFromData TxId Source # 
Instance details

Defined in PlutusLedgerApi.V1.Tx

Ord TxId Source # 
Instance details

Defined in PlutusLedgerApi.V1.Tx

Methods

compareTxIdTxIdOrdering Source #

(<)TxIdTxIdBool Source #

(<=)TxIdTxIdBool Source #

(>)TxIdTxIdBool Source #

(>=)TxIdTxIdBool Source #

maxTxIdTxIdTxId Source #

minTxIdTxIdTxId Source #

Pretty TxId Source #

using hex encoding

Instance details

Defined in PlutusLedgerApi.V1.Tx

Methods

prettyTxIdDoc ann Source #

prettyList ∷ [TxId] → Doc ann Source #

HasSchemaDefinition BuiltinByteString referencedTypes ⇒ HasBlueprintSchema TxId referencedTypes Source # 
Instance details

Defined in PlutusLedgerApi.V1.Tx

Methods

schemaSchema referencedTypes Source #

Lift DefaultUni TxId Source # 
Instance details

Defined in PlutusLedgerApi.V1.Tx

Typeable DefaultUni TxId Source # 
Instance details

Defined in PlutusLedgerApi.V1.Tx

type Rep TxId Source # 
Instance details

Defined in PlutusLedgerApi.V1.Tx

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

Defined in PlutusLedgerApi.V1.Tx

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.Tx

Associated Types

type Rep TxOutTypeType Source #

Methods

fromTxOutRep TxOut x Source #

toRep TxOut x → TxOut Source #

Show TxOut Source # 
Instance details

Defined in PlutusLedgerApi.V1.Tx

NFData TxOut Source # 
Instance details

Defined in PlutusLedgerApi.V1.Tx

Methods

rnfTxOut → () Source #

Eq TxOut Source # 
Instance details

Defined in PlutusLedgerApi.V1.Tx

Methods

(==)TxOutTxOutBool Source #

(/=)TxOutTxOutBool Source #

HasBlueprintDefinition TxOut Source # 
Instance details

Defined in PlutusLedgerApi.V1.Tx

Associated Types

type Unroll TxOut ∷ [Type] Source #

Eq TxOut Source # 
Instance details

Defined in PlutusLedgerApi.V1.Tx

Methods

(==)TxOutTxOutBool Source #

FromData TxOut Source # 
Instance details

Defined in PlutusLedgerApi.V1.Tx

ToData TxOut Source # 
Instance details

Defined in PlutusLedgerApi.V1.Tx

UnsafeFromData TxOut Source # 
Instance details

Defined in PlutusLedgerApi.V1.Tx

Pretty TxOut Source # 
Instance details

Defined in PlutusLedgerApi.V1.Tx

Methods

prettyTxOutDoc ann Source #

prettyList ∷ [TxOut] → Doc ann Source #

(HasSchemaDefinition Address referencedTypes, HasSchemaDefinition Value referencedTypes, HasSchemaDefinition (Maybe DatumHash) referencedTypes) ⇒ HasBlueprintSchema TxOut referencedTypes Source # 
Instance details

Defined in PlutusLedgerApi.V1.Tx

Methods

schemaSchema referencedTypes Source #

Lift DefaultUni TxOut Source # 
Instance details

Defined in PlutusLedgerApi.V1.Tx

Typeable DefaultUni TxOut Source # 
Instance details

Defined in PlutusLedgerApi.V1.Tx

type Rep TxOut Source # 
Instance details

Defined in PlutusLedgerApi.V1.Tx

type Rep TxOut = D1 ('MetaData "TxOut" "PlutusLedgerApi.V1.Tx" "plutus-ledger-api-1.39.0.0-inplace" 'False) (C1 ('MetaCons "TxOut" 'PrefixI 'True) (S1 ('MetaSel ('Just "txOutAddress") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Address) :*: (S1 ('MetaSel ('Just "txOutValue") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Value) :*: S1 ('MetaSel ('Just "txOutDatumHash") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe DatumHash)))))
type Unroll TxOut Source # 
Instance details

Defined in PlutusLedgerApi.V1.Tx

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.

Constructors

TxOutRef 

Fields

Instances

Instances details
Generic TxOutRef Source # 
Instance details

Defined in PlutusLedgerApi.V1.Tx

Associated Types

type Rep TxOutRefTypeType Source #

Show TxOutRef Source # 
Instance details

Defined in PlutusLedgerApi.V1.Tx

NFData TxOutRef Source # 
Instance details

Defined in PlutusLedgerApi.V1.Tx

Methods

rnfTxOutRef → () Source #

Eq TxOutRef Source # 
Instance details

Defined in PlutusLedgerApi.V1.Tx

Ord TxOutRef Source # 
Instance details

Defined in PlutusLedgerApi.V1.Tx

HasBlueprintDefinition TxOutRef Source # 
Instance details

Defined in PlutusLedgerApi.V1.Tx

Associated Types

type Unroll TxOutRef ∷ [Type] Source #

Eq TxOutRef Source # 
Instance details

Defined in PlutusLedgerApi.V1.Tx

Methods

(==)TxOutRefTxOutRefBool Source #

FromData TxOutRef Source # 
Instance details

Defined in PlutusLedgerApi.V1.Tx

ToData TxOutRef Source # 
Instance details

Defined in PlutusLedgerApi.V1.Tx

UnsafeFromData TxOutRef Source # 
Instance details

Defined in PlutusLedgerApi.V1.Tx

Pretty TxOutRef Source # 
Instance details

Defined in PlutusLedgerApi.V1.Tx

Methods

prettyTxOutRefDoc ann Source #

prettyList ∷ [TxOutRef] → Doc ann Source #

(HasSchemaDefinition TxId referencedTypes, HasSchemaDefinition Integer referencedTypes) ⇒ HasBlueprintSchema TxOutRef referencedTypes Source # 
Instance details

Defined in PlutusLedgerApi.V1.Tx

Methods

schemaSchema referencedTypes Source #

Lift DefaultUni TxOutRef Source # 
Instance details

Defined in PlutusLedgerApi.V1.Tx

Typeable DefaultUni TxOutRef Source # 
Instance details

Defined in PlutusLedgerApi.V1.Tx

type Rep TxOutRef Source # 
Instance details

Defined in PlutusLedgerApi.V1.Tx

type Rep TxOutRef = D1 ('MetaData "TxOutRef" "PlutusLedgerApi.V1.Tx" "plutus-ledger-api-1.39.0.0-inplace" 'False) (C1 ('MetaCons "TxOutRef" 'PrefixI 'True) (S1 ('MetaSel ('Just "txOutRefId") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 TxId) :*: S1 ('MetaSel ('Just "txOutRefIdx") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Integer)))
type Unroll TxOutRef Source # 
Instance details

Defined in PlutusLedgerApi.V1.Tx

data TxInInfo Source #

An input of a pending transaction.

Constructors

TxInInfo 

Instances

Instances details
Generic TxInInfo Source # 
Instance details

Defined in PlutusLedgerApi.V1.Contexts

Associated Types

type Rep TxInInfoTypeType Source #

Show TxInInfo Source # 
Instance details

Defined in PlutusLedgerApi.V1.Contexts

Eq TxInInfo Source # 
Instance details

Defined in PlutusLedgerApi.V1.Contexts

HasBlueprintDefinition TxInInfo Source # 
Instance details

Defined in PlutusLedgerApi.V1.Contexts

Associated Types

type Unroll TxInInfo ∷ [Type] Source #

Eq TxInInfo Source # 
Instance details

Defined in PlutusLedgerApi.V1.Contexts

Methods

(==)TxInInfoTxInInfoBool Source #

FromData TxInInfo Source # 
Instance details

Defined in PlutusLedgerApi.V1.Contexts

ToData TxInInfo Source # 
Instance details

Defined in PlutusLedgerApi.V1.Contexts

UnsafeFromData TxInInfo Source # 
Instance details

Defined in PlutusLedgerApi.V1.Contexts

Pretty TxInInfo Source # 
Instance details

Defined in PlutusLedgerApi.V1.Contexts

Methods

prettyTxInInfoDoc ann Source #

prettyList ∷ [TxInInfo] → Doc ann Source #

(HasSchemaDefinition TxOutRef referencedTypes, HasSchemaDefinition TxOut referencedTypes) ⇒ HasBlueprintSchema TxInInfo referencedTypes Source # 
Instance details

Defined in PlutusLedgerApi.V1.Contexts

Methods

schemaSchema referencedTypes Source #

Lift DefaultUni TxInInfo Source # 
Instance details

Defined in PlutusLedgerApi.V1.Contexts

Typeable DefaultUni TxInInfo Source # 
Instance details

Defined in PlutusLedgerApi.V1.Contexts

type Rep TxInInfo Source # 
Instance details

Defined in PlutusLedgerApi.V1.Contexts

type Rep TxInInfo = D1 ('MetaData "TxInInfo" "PlutusLedgerApi.V1.Contexts" "plutus-ledger-api-1.39.0.0-inplace" 'False) (C1 ('MetaCons "TxInInfo" 'PrefixI 'True) (S1 ('MetaSel ('Just "txInInfoOutRef") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 TxOutRef) :*: S1 ('MetaSel ('Just "txInInfoResolved") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 TxOut)))
type Unroll TxInInfo Source # 
Instance details

Defined in PlutusLedgerApi.V1.Contexts

findOwnInputScriptContextMaybe TxInInfo Source #

Find the input currently being validated.

findDatumDatumHashTxInfoMaybe Datum Source #

Find the data corresponding to a data hash, if there is one

findDatumHashDatumTxInfoMaybe DatumHash Source #

Find the hash of a datum, if it is part of the pending transaction's hashes

findTxInByTxOutRefTxOutRefTxInfoMaybe TxInInfo Source #

Given a UTXO reference and a transaction (TxInfo), resolve it to one of the transaction's inputs (TxInInfo).

findContinuingOutputsScriptContext → [Integer] Source #

Finds all the outputs that pay to the same script address that we are currently spending from, if any.

getContinuingOutputsScriptContext → [TxOut] Source #

Get all the outputs that pay to the same script address we are currently spending from, if any.

pubKeyOutputsAtPubKeyHashTxInfo → [Value] Source #

Get the values paid to a public key address by a pending transaction.

valuePaidToTxInfoPubKeyHashValue Source #

Get the total value paid to a public key address by a pending transaction.

spendsOutputTxInfoTxIdIntegerBool Source #

Check if the pending transaction spends a specific transaction output (identified by the hash of a transaction and an index into that transactions' outputs)

txSignedByTxInfoPubKeyHashBool Source #

Check if a transaction was signed by the given public key.

valueSpentTxInfoValue Source #

Get the total value of inputs spent by this transaction.

valueProducedTxInfoValue Source #

Get the total value of outputs produced by this transaction.

ownCurrencySymbolScriptContextCurrencySymbol Source #

The CurrencySymbol of the current validator script.

Builtins

data BuiltinByteString Source #

An opaque type representing Plutus Core ByteStrings.

Instances

Instances details
Data BuiltinByteString 
Instance details

Defined in PlutusTx.Builtins.Internal

Methods

gfoldl ∷ (∀ d b. Data d ⇒ c (d → b) → d → c b) → (∀ g. g → c g) → BuiltinByteString → c BuiltinByteString Source #

gunfold ∷ (∀ b r. Data b ⇒ c (b → r) → c r) → (∀ r. r → c r) → Constr → c BuiltinByteString Source #

toConstrBuiltinByteStringConstr Source #

dataTypeOfBuiltinByteStringDataType Source #

dataCast1Typeable t ⇒ (∀ d. Data d ⇒ c (t d)) → Maybe (c BuiltinByteString) Source #

dataCast2Typeable t ⇒ (∀ d e. (Data d, Data e) ⇒ c (t d e)) → Maybe (c BuiltinByteString) Source #

gmapT ∷ (∀ b. Data b ⇒ b → b) → BuiltinByteStringBuiltinByteString Source #

gmapQl ∷ (r → r' → r) → r → (∀ d. Data d ⇒ d → r') → BuiltinByteString → r Source #

gmapQr ∷ ∀ r r'. (r' → r → r) → r → (∀ d. Data d ⇒ d → r') → BuiltinByteString → r Source #

gmapQ ∷ (∀ d. Data d ⇒ d → u) → BuiltinByteString → [u] Source #

gmapQiInt → (∀ d. Data d ⇒ d → u) → BuiltinByteString → u Source #

gmapMMonad m ⇒ (∀ d. Data d ⇒ d → m d) → BuiltinByteString → m BuiltinByteString Source #

gmapMpMonadPlus m ⇒ (∀ d. Data d ⇒ d → m d) → BuiltinByteString → m BuiltinByteString Source #

gmapMoMonadPlus m ⇒ (∀ d. Data d ⇒ d → m d) → BuiltinByteString → m BuiltinByteString Source #

Monoid BuiltinByteString 
Instance details

Defined in PlutusTx.Builtins.Internal

Semigroup BuiltinByteString 
Instance details

Defined in PlutusTx.Builtins.Internal

Show BuiltinByteString 
Instance details

Defined in PlutusTx.Builtins.Internal

NFData BuiltinByteString 
Instance details

Defined in PlutusTx.Builtins.Internal

Methods

rnfBuiltinByteString → () Source #

Eq BuiltinByteString 
Instance details

Defined in PlutusTx.Builtins.Internal

Ord BuiltinByteString 
Instance details

Defined in PlutusTx.Builtins.Internal

Hashable BuiltinByteString 
Instance details

Defined in PlutusTx.Builtins.Internal

ByteArray BuiltinByteString 
Instance details

Defined in PlutusTx.Builtins.Internal

Methods

allocRetInt → (Ptr p → IO a) → IO (a, BuiltinByteString) Source #

ByteArrayAccess BuiltinByteString 
Instance details

Defined in PlutusTx.Builtins.Internal

HasBlueprintDefinition BuiltinByteString 
Instance details

Defined in PlutusTx.Blueprint.Definition.Unroll

Associated Types

type Unroll BuiltinByteString ∷ [Type] Source #

HasFromBuiltin BuiltinByteString 
Instance details

Defined in PlutusTx.Builtins.HasBuiltin

Associated Types

type FromBuiltin BuiltinByteString Source #

Eq BuiltinByteString 
Instance details

Defined in PlutusTx.Eq

FromData BuiltinByteString 
Instance details

Defined in PlutusTx.IsData.Class

ToData BuiltinByteString 
Instance details

Defined in PlutusTx.IsData.Class

UnsafeFromData BuiltinByteString 
Instance details

Defined in PlutusTx.IsData.Class

Monoid BuiltinByteString 
Instance details

Defined in PlutusTx.Monoid

Ord BuiltinByteString 
Instance details

Defined in PlutusTx.Ord

Semigroup BuiltinByteString 
Instance details

Defined in PlutusTx.Semigroup

Pretty BuiltinByteString 
Instance details

Defined in PlutusTx.Builtins.Internal

Serialise BuiltinByteString 
Instance details

Defined in PlutusTx.Builtins.Internal

HasBlueprintSchema BuiltinByteString referencedTypes 
Instance details

Defined in PlutusTx.Blueprint.Class

Methods

schemaSchema referencedTypes Source #

HasFromOpaque BuiltinByteString BuiltinByteString 
Instance details

Defined in PlutusTx.Builtins.HasOpaque

HasToOpaque BuiltinByteString BuiltinByteString 
Instance details

Defined in PlutusTx.Builtins.HasOpaque

HasTermLevel uni ByteStringLift uni BuiltinByteString 
Instance details

Defined in PlutusTx.Lift.Class

Methods

liftBuiltinByteStringRTCompile uni fun (Term TyName Name uni fun ()) Source #

HasTypeLevel uni ByteStringTypeable uni BuiltinByteString 
Instance details

Defined in PlutusTx.Lift.Class

Methods

typeRepProxy BuiltinByteStringRTCompile uni fun (Type TyName uni ()) Source #

type Unroll BuiltinByteString 
Instance details

Defined in PlutusTx.Blueprint.Definition.Unroll

type FromBuiltin BuiltinByteString 
Instance details

Defined in PlutusTx.Builtins.HasBuiltin

fromBuiltinHasFromBuiltin arep ⇒ arep → FromBuiltin arep Source #

toOpaqueHasToOpaque a arep ⇒ a → arep Source #

fromOpaqueHasFromOpaque arep a ⇒ arep → a Source #

Bytes

newtype LedgerBytes Source #

Instances

Instances details
IsString LedgerBytes Source #

Read in arbitrary LedgerBytes as a "string" (of characters).

This is mostly used together with GHC's OverloadedStrings extension to specify at the source code any LedgerBytes constants, by utilizing Haskell's double-quoted string syntax.

IMPORTANT: the LedgerBytes are expected to be already hex-encoded (base16); otherwise, LedgerBytesError will be raised as an Exception.

Instance details

Defined in PlutusLedgerApi.V1.Bytes

Generic LedgerBytes Source # 
Instance details

Defined in PlutusLedgerApi.V1.Bytes

Associated Types

type Rep LedgerBytesTypeType Source #

Show LedgerBytes Source #

The Show instance of LedgerBytes is its Base16/Hex encoded bytestring, decoded with UTF-8, unpacked to String.

Instance details

Defined in PlutusLedgerApi.V1.Bytes

NFData LedgerBytes Source # 
Instance details

Defined in PlutusLedgerApi.V1.Bytes

Methods

rnfLedgerBytes → () Source #

Eq LedgerBytes Source # 
Instance details

Defined in PlutusLedgerApi.V1.Bytes

Ord LedgerBytes Source # 
Instance details

Defined in PlutusLedgerApi.V1.Bytes

HasBlueprintDefinition LedgerBytes Source # 
Instance details

Defined in PlutusLedgerApi.V1.Bytes

Associated Types

type Unroll LedgerBytes ∷ [Type] Source #

Eq LedgerBytes Source # 
Instance details

Defined in PlutusLedgerApi.V1.Bytes

FromData LedgerBytes Source # 
Instance details

Defined in PlutusLedgerApi.V1.Bytes

ToData LedgerBytes Source # 
Instance details

Defined in PlutusLedgerApi.V1.Bytes

UnsafeFromData LedgerBytes Source # 
Instance details

Defined in PlutusLedgerApi.V1.Bytes

Ord LedgerBytes Source # 
Instance details

Defined in PlutusLedgerApi.V1.Bytes

Pretty LedgerBytes Source # 
Instance details

Defined in PlutusLedgerApi.V1.Bytes

Methods

prettyLedgerBytesDoc ann Source #

prettyList ∷ [LedgerBytes] → Doc ann Source #

HasBlueprintSchema LedgerBytes referencedTypes Source # 
Instance details

Defined in PlutusLedgerApi.V1.Bytes

Methods

schemaSchema referencedTypes Source #

Lift DefaultUni LedgerBytes Source # 
Instance details

Defined in PlutusLedgerApi.V1.Bytes

Typeable DefaultUni LedgerBytes Source # 
Instance details

Defined in PlutusLedgerApi.V1.Bytes

type Rep LedgerBytes Source # 
Instance details

Defined in PlutusLedgerApi.V1.Bytes

type Rep LedgerBytes = D1 ('MetaData "LedgerBytes" "PlutusLedgerApi.V1.Bytes" "plutus-ledger-api-1.39.0.0-inplace" 'True) (C1 ('MetaCons "LedgerBytes" 'PrefixI 'True) (S1 ('MetaSel ('Just "getLedgerBytes") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 BuiltinByteString)))
type Unroll LedgerBytes Source # 
Instance details

Defined in PlutusLedgerApi.V1.Bytes

data LedgerBytesError Source #

An error that is encountered when converting a ByteString to a LedgerBytes.

Constructors

UnpairedDigit

Odd number of bytes in the original bytestring.

NotHexit !Char

A non-hex digit character ([^A-Fa-f0-9]) encountered during decoding.

fromBytesByteStringLedgerBytes Source #

Lift a Haskell bytestring to the Plutus abstraction LedgerBytes

fromHexByteStringEither LedgerBytesError LedgerBytes Source #

Convert a hex-encoded (Base16) ByteString to a LedgerBytes. May return an error (LedgerBytesError).

bytesLedgerBytesByteString Source #

Extract the Haskell bytestring from inside the Plutus opaque LedgerBytes.

encodeByteStringByteStringText Source #

Encode a ByteString value to Base16 (i.e. hexadecimal), then decode with UTF-8 to a Text.

Certificates

data DCert Source #

A representation of the ledger DCert. Some information is digested, and not included

Constructors

DCertDelegRegKey StakingCredential 
DCertDelegDeRegKey StakingCredential 
DCertDelegDelegate 

Fields

DCertPoolRegister

A digest of the PoolParams

Fields

DCertPoolRetire PubKeyHash Integer

The retirement certificate and the Epoch in which the retirement will take place

DCertGenesis

A really terse Digest

DCertMir

Another really terse Digest

Instances

Instances details
Generic DCert Source # 
Instance details

Defined in PlutusLedgerApi.V1.DCert

Associated Types

type Rep DCertTypeType Source #

Methods

fromDCertRep DCert x Source #

toRep DCert x → DCert Source #

Show DCert Source # 
Instance details

Defined in PlutusLedgerApi.V1.DCert

NFData DCert Source # 
Instance details

Defined in PlutusLedgerApi.V1.DCert

Methods

rnfDCert → () Source #

Eq DCert Source # 
Instance details

Defined in PlutusLedgerApi.V1.DCert

Methods

(==)DCertDCertBool Source #

(/=)DCertDCertBool Source #

Ord DCert Source # 
Instance details

Defined in PlutusLedgerApi.V1.DCert

Methods

compareDCertDCertOrdering Source #

(<)DCertDCertBool Source #

(<=)DCertDCertBool Source #

(>)DCertDCertBool Source #

(>=)DCertDCertBool Source #

maxDCertDCertDCert Source #

minDCertDCertDCert Source #

HasBlueprintDefinition DCert Source # 
Instance details

Defined in PlutusLedgerApi.V1.DCert

Associated Types

type Unroll DCert ∷ [Type] Source #

Eq DCert Source # 
Instance details

Defined in PlutusLedgerApi.V1.DCert

Methods

(==)DCertDCertBool Source #

FromData DCert Source # 
Instance details

Defined in PlutusLedgerApi.V1.DCert

ToData DCert Source # 
Instance details

Defined in PlutusLedgerApi.V1.DCert

UnsafeFromData DCert Source # 
Instance details

Defined in PlutusLedgerApi.V1.DCert

Show DCert Source # 
Instance details

Defined in PlutusLedgerApi.V1.DCert

Pretty DCert Source # 
Instance details

Defined in PlutusLedgerApi.V1.DCert

Methods

prettyDCertDoc ann Source #

prettyList ∷ [DCert] → Doc ann Source #

(HasSchemaDefinition StakingCredential referencedTypes, HasSchemaDefinition PubKeyHash referencedTypes, HasSchemaDefinition Integer referencedTypes) ⇒ HasBlueprintSchema DCert referencedTypes Source # 
Instance details

Defined in PlutusLedgerApi.V1.DCert

Methods

schemaSchema referencedTypes Source #

Lift DefaultUni DCert Source # 
Instance details

Defined in PlutusLedgerApi.V1.DCert

Typeable DefaultUni DCert Source # 
Instance details

Defined in PlutusLedgerApi.V1.DCert

type Rep DCert Source # 
Instance details

Defined in PlutusLedgerApi.V1.DCert

type Unroll DCert Source # 
Instance details

Defined in PlutusLedgerApi.V1.DCert

Credentials

data StakingCredential Source #

Staking credential used to assign rewards.

Constructors

StakingHash Credential

The staking hash is the Credential required to unlock a transaction output. Either a public key credential (PubKeyHash) or a script credential (ScriptHash). Both are hashed with BLAKE2b-244. 28 byte.

StakingPtr

The certificate pointer, constructed by the given slot number, transaction and certificate indices. NB: The fields should really be all Word64, as they are implemented in Word64, but Integer is our only integral type so we need to use it instead.

Fields

  • Integer

    the slot number

  • Integer

    the transaction index (within the block)

  • Integer

    the certificate index (within the transaction)

Instances

Instances details
Generic StakingCredential Source # 
Instance details

Defined in PlutusLedgerApi.V1.Credential

Associated Types

type Rep StakingCredentialTypeType Source #

Show StakingCredential Source # 
Instance details

Defined in PlutusLedgerApi.V1.Credential

NFData StakingCredential Source # 
Instance details

Defined in PlutusLedgerApi.V1.Credential

Methods

rnfStakingCredential → () Source #

Eq StakingCredential Source # 
Instance details

Defined in PlutusLedgerApi.V1.Credential

Ord StakingCredential Source # 
Instance details

Defined in PlutusLedgerApi.V1.Credential

HasBlueprintDefinition StakingCredential Source # 
Instance details

Defined in PlutusLedgerApi.V1.Credential

Associated Types

type Unroll StakingCredential ∷ [Type] Source #

Eq StakingCredential Source # 
Instance details

Defined in PlutusLedgerApi.V1.Credential

FromData StakingCredential Source # 
Instance details

Defined in PlutusLedgerApi.V1.Credential

ToData StakingCredential Source # 
Instance details

Defined in PlutusLedgerApi.V1.Credential

UnsafeFromData StakingCredential Source # 
Instance details

Defined in PlutusLedgerApi.V1.Credential

Show StakingCredential Source # 
Instance details

Defined in PlutusLedgerApi.V1.Credential

Pretty StakingCredential Source # 
Instance details

Defined in PlutusLedgerApi.V1.Credential

(HasSchemaDefinition Credential referencedTypes, HasSchemaDefinition Integer referencedTypes) ⇒ HasBlueprintSchema StakingCredential referencedTypes Source # 
Instance details

Defined in PlutusLedgerApi.V1.Credential

Methods

schemaSchema referencedTypes Source #

Lift DefaultUni StakingCredential Source # 
Instance details

Defined in PlutusLedgerApi.V1.Credential

Typeable DefaultUni StakingCredential Source # 
Instance details

Defined in PlutusLedgerApi.V1.Credential

type Rep StakingCredential Source # 
Instance details

Defined in PlutusLedgerApi.V1.Credential

type Unroll StakingCredential Source # 
Instance details

Defined in PlutusLedgerApi.V1.Credential

data Credential Source #

Credentials required to unlock a transaction output.

Constructors

PubKeyCredential PubKeyHash

The transaction that spends this output must be signed by the private key. See PubKeyHash.

ScriptCredential ScriptHash

The transaction that spends this output must include the validator script and be accepted by the validator. See ScriptHash.

Instances

Instances details
Generic Credential Source # 
Instance details

Defined in PlutusLedgerApi.V1.Credential

Associated Types

type Rep CredentialTypeType Source #

Show Credential Source # 
Instance details

Defined in PlutusLedgerApi.V1.Credential

NFData Credential Source # 
Instance details

Defined in PlutusLedgerApi.V1.Credential

Methods

rnfCredential → () Source #

Eq Credential Source # 
Instance details

Defined in PlutusLedgerApi.V1.Credential

Ord Credential Source # 
Instance details

Defined in PlutusLedgerApi.V1.Credential

HasBlueprintDefinition Credential Source # 
Instance details

Defined in PlutusLedgerApi.V1.Credential

Associated Types

type Unroll Credential ∷ [Type] Source #

Eq Credential Source # 
Instance details

Defined in PlutusLedgerApi.V1.Credential

Methods

(==)CredentialCredentialBool Source #

FromData Credential Source # 
Instance details

Defined in PlutusLedgerApi.V1.Credential

ToData Credential Source # 
Instance details

Defined in PlutusLedgerApi.V1.Credential

UnsafeFromData Credential Source # 
Instance details

Defined in PlutusLedgerApi.V1.Credential

Show Credential Source # 
Instance details

Defined in PlutusLedgerApi.V1.Credential

Pretty Credential Source # 
Instance details

Defined in PlutusLedgerApi.V1.Credential

Methods

prettyCredentialDoc ann Source #

prettyList ∷ [Credential] → Doc ann Source #

(HasSchemaDefinition PubKeyHash referencedTypes, HasSchemaDefinition ScriptHash referencedTypes) ⇒ HasBlueprintSchema Credential referencedTypes Source # 
Instance details

Defined in PlutusLedgerApi.V1.Credential

Methods

schemaSchema referencedTypes Source #

Lift DefaultUni Credential Source # 
Instance details

Defined in PlutusLedgerApi.V1.Credential

Typeable DefaultUni Credential Source # 
Instance details

Defined in PlutusLedgerApi.V1.Credential

type Rep Credential Source # 
Instance details

Defined in PlutusLedgerApi.V1.Credential

type Rep Credential = D1 ('MetaData "Credential" "PlutusLedgerApi.V1.Credential" "plutus-ledger-api-1.39.0.0-inplace" 'False) (C1 ('MetaCons "PubKeyCredential" 'PrefixI 'False) (S1 ('MetaSel ('NothingMaybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 PubKeyHash)) :+: C1 ('MetaCons "ScriptCredential" 'PrefixI 'False) (S1 ('MetaSel ('NothingMaybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 ScriptHash)))
type Unroll Credential Source # 
Instance details

Defined in PlutusLedgerApi.V1.Credential

Value

newtype Value Source #

The Value type represents a collection of amounts of different currencies. We can think of Value as a vector space whose dimensions are currencies.

Operations on currencies are usually implemented pointwise. That is, we apply the operation to the quantities for each currency in turn. So when we add two Values the resulting Value has, for each currency, the sum of the quantities of that particular currency in the argument Value. The effect of this is that the currencies in the Value are "independent", and are operated on separately.

Whenever we need to get the quantity of a currency in a Value where there is no explicit quantity of that currency in the Value, then the quantity is taken to be zero.

There is no 'Ord Value' instance since Value is only a partial order, so compare can't do the right thing in some cases.

Constructors

Value 

Instances

Instances details
Data Value Source # 
Instance details

Defined in PlutusLedgerApi.V1.Value

Methods

gfoldl ∷ (∀ d b. Data d ⇒ c (d → b) → d → c b) → (∀ g. g → c g) → Value → c Value Source #

gunfold ∷ (∀ b r. Data b ⇒ c (b → r) → c r) → (∀ r. r → c r) → Constr → c Value Source #

toConstrValueConstr Source #

dataTypeOfValueDataType Source #

dataCast1Typeable t ⇒ (∀ d. Data d ⇒ c (t d)) → Maybe (c Value) Source #

dataCast2Typeable t ⇒ (∀ d e. (Data d, Data e) ⇒ c (t d e)) → Maybe (c Value) Source #

gmapT ∷ (∀ b. Data b ⇒ b → b) → ValueValue Source #

gmapQl ∷ (r → r' → r) → r → (∀ d. Data d ⇒ d → r') → Value → r Source #

gmapQr ∷ ∀ r r'. (r' → r → r) → r → (∀ d. Data d ⇒ d → r') → Value → r Source #

gmapQ ∷ (∀ d. Data d ⇒ d → u) → Value → [u] Source #

gmapQiInt → (∀ d. Data d ⇒ d → u) → Value → u Source #

gmapMMonad m ⇒ (∀ d. Data d ⇒ d → m d) → Value → m Value Source #

gmapMpMonadPlus m ⇒ (∀ d. Data d ⇒ d → m d) → Value → m Value Source #

gmapMoMonadPlus m ⇒ (∀ d. Data d ⇒ d → m d) → Value → m Value Source #

Monoid Value Source # 
Instance details

Defined in PlutusLedgerApi.V1.Value

Semigroup Value Source # 
Instance details

Defined in PlutusLedgerApi.V1.Value

Methods

(<>)ValueValueValue Source #

sconcatNonEmpty ValueValue Source #

stimesIntegral b ⇒ b → ValueValue Source #

Generic Value Source # 
Instance details

Defined in PlutusLedgerApi.V1.Value

Associated Types

type Rep ValueTypeType Source #

Methods

fromValueRep Value x Source #

toRep Value x → Value Source #

Show Value Source # 
Instance details

Defined in PlutusLedgerApi.V1.Value

NFData Value Source # 
Instance details

Defined in PlutusLedgerApi.V1.Value

Methods

rnfValue → () Source #

Eq Value Source # 
Instance details

Defined in PlutusLedgerApi.V1.Value

Methods

(==)ValueValueBool Source #

(/=)ValueValueBool Source #

HasBlueprintDefinition Value Source # 
Instance details

Defined in PlutusLedgerApi.V1.Value

Associated Types

type Unroll Value ∷ [Type] Source #

Eq Value Source # 
Instance details

Defined in PlutusLedgerApi.V1.Value

Methods

(==)ValueValueBool Source #

FromData Value Source # 
Instance details

Defined in PlutusLedgerApi.V1.Value

ToData Value Source # 
Instance details

Defined in PlutusLedgerApi.V1.Value

UnsafeFromData Value Source # 
Instance details

Defined in PlutusLedgerApi.V1.Value

JoinSemiLattice Value Source # 
Instance details

Defined in PlutusLedgerApi.V1.Value

Methods

(\/)ValueValueValue Source #

MeetSemiLattice Value Source # 
Instance details

Defined in PlutusLedgerApi.V1.Value

Methods

(/\)ValueValueValue Source #

Group Value Source # 
Instance details

Defined in PlutusLedgerApi.V1.Value

Methods

invValueValue Source #

Monoid Value Source # 
Instance details

Defined in PlutusLedgerApi.V1.Value

Methods

memptyValue Source #

AdditiveGroup Value Source # 
Instance details

Defined in PlutusLedgerApi.V1.Value

Methods

(-)ValueValueValue Source #

AdditiveMonoid Value Source # 
Instance details

Defined in PlutusLedgerApi.V1.Value

Methods

zeroValue Source #

AdditiveSemigroup Value Source # 
Instance details

Defined in PlutusLedgerApi.V1.Value

Methods

(+)ValueValueValue Source #

Semigroup Value Source # 
Instance details

Defined in PlutusLedgerApi.V1.Value

Methods

(<>)ValueValueValue Source #

Pretty Value Source # 
Instance details

Defined in PlutusLedgerApi.V1.Value

Methods

prettyValueDoc ann Source #

prettyList ∷ [Value] → Doc ann Source #

HasBlueprintSchema Value referencedTypes Source # 
Instance details

Defined in PlutusLedgerApi.V1.Value

Methods

schemaSchema referencedTypes Source #

Lift DefaultUni Value Source # 
Instance details

Defined in PlutusLedgerApi.V1.Value

Module Integer Value Source # 
Instance details

Defined in PlutusLedgerApi.V1.Value

Methods

scaleIntegerValueValue Source #

Typeable DefaultUni Value Source # 
Instance details

Defined in PlutusLedgerApi.V1.Value

type Rep Value Source # 
Instance details

Defined in PlutusLedgerApi.V1.Value

type Rep Value = D1 ('MetaData "Value" "PlutusLedgerApi.V1.Value" "plutus-ledger-api-1.39.0.0-inplace" 'True) (C1 ('MetaCons "Value" 'PrefixI 'True) (S1 ('MetaSel ('Just "getValue") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Map CurrencySymbol (Map TokenName Integer)))))
type Unroll Value Source # 
Instance details

Defined in PlutusLedgerApi.V1.Value

newtype Lovelace Source #

Constructors

Lovelace 

Fields

Instances

Instances details
Enum Lovelace Source # 
Instance details

Defined in PlutusLedgerApi.V1.Value

Generic Lovelace Source # 
Instance details

Defined in PlutusLedgerApi.V1.Value

Associated Types

type Rep LovelaceTypeType Source #

Num Lovelace Source # 
Instance details

Defined in PlutusLedgerApi.V1.Value

Real Lovelace Source # 
Instance details

Defined in PlutusLedgerApi.V1.Value

Show Lovelace Source # 
Instance details

Defined in PlutusLedgerApi.V1.Value

Eq Lovelace Source # 
Instance details

Defined in PlutusLedgerApi.V1.Value

Ord Lovelace Source # 
Instance details

Defined in PlutusLedgerApi.V1.Value

HasBlueprintDefinition Lovelace Source # 
Instance details

Defined in PlutusLedgerApi.V1.Value

Associated Types

type Unroll Lovelace ∷ [Type] Source #

Eq Lovelace Source # 
Instance details

Defined in PlutusLedgerApi.V1.Value

Methods

(==)LovelaceLovelaceBool Source #

FromData Lovelace Source # 
Instance details

Defined in PlutusLedgerApi.V1.Value

ToData Lovelace Source # 
Instance details

Defined in PlutusLedgerApi.V1.Value

UnsafeFromData Lovelace Source # 
Instance details

Defined in PlutusLedgerApi.V1.Value

AdditiveGroup Lovelace Source # 
Instance details

Defined in PlutusLedgerApi.V1.Value

Methods

(-)LovelaceLovelaceLovelace Source #

AdditiveMonoid Lovelace Source # 
Instance details

Defined in PlutusLedgerApi.V1.Value

Methods

zeroLovelace Source #

AdditiveSemigroup Lovelace Source # 
Instance details

Defined in PlutusLedgerApi.V1.Value

Methods

(+)LovelaceLovelaceLovelace Source #

Ord Lovelace Source # 
Instance details

Defined in PlutusLedgerApi.V1.Value

Show Lovelace Source # 
Instance details

Defined in PlutusLedgerApi.V1.Value

Pretty Lovelace Source # 
Instance details

Defined in PlutusLedgerApi.V1.Value

Methods

prettyLovelaceDoc ann Source #

prettyList ∷ [Lovelace] → Doc ann Source #

HasBlueprintSchema Lovelace referencedTypes Source # 
Instance details

Defined in PlutusLedgerApi.V1.Value

Methods

schemaSchema referencedTypes Source #

Lift DefaultUni Lovelace Source # 
Instance details

Defined in PlutusLedgerApi.V1.Value

Typeable DefaultUni Lovelace Source # 
Instance details

Defined in PlutusLedgerApi.V1.Value

type Rep Lovelace Source # 
Instance details

Defined in PlutusLedgerApi.V1.Value

type Rep Lovelace = D1 ('MetaData "Lovelace" "PlutusLedgerApi.V1.Value" "plutus-ledger-api-1.39.0.0-inplace" 'True) (C1 ('MetaCons "Lovelace" 'PrefixI 'True) (S1 ('MetaSel ('Just "getLovelace") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Integer)))
type Unroll Lovelace Source # 
Instance details

Defined in PlutusLedgerApi.V1.Value

currencySymbolValueOfValueCurrencySymbolInteger Source #

Get the total value of the currency symbol in the Value map. Assumes that the underlying map doesn't contain duplicate keys.

Note that each token of the currency symbol may have a value that is positive, zero or negative.

flattenValueValue → [(CurrencySymbol, TokenName, Integer)] Source #

Convert a Value to a simple list, keeping only the non-zero amounts. Note that the result isn't sorted, meaning v1 == v2 doesn't generally imply flattenValue v1 == flattenValue v2. Also assumes that there are no duplicate keys in the Value Map.

isZeroValueBool Source #

Check whether a Value is zero.

lovelaceValueLovelaceValue Source #

A Value containing the given quantity of Lovelace.

lovelaceValueOfValueLovelace Source #

Get the quantity of Lovelace in the Value.

scaleModule s v ⇒ s → v → v Source #

singletonCurrencySymbolTokenNameIntegerValue Source #

Make a Value containing only the given quantity of the given currency.

splitValue → (Value, Value) Source #

Split a Value into its positive and negative parts. The first element of the tuple contains the negative parts of the Value, the second element contains the positive parts.

negate (fst (split a)) plus (snd (split a)) == a

unionWith ∷ (IntegerIntegerInteger) → ValueValueValue Source #

Combine two Value maps with the argument function. Assumes the well-definedness of the two maps.

valueOfValueCurrencySymbolTokenNameInteger Source #

Get the quantity of the given currency in the Value. Assumes that the underlying map doesn't contain duplicate keys.

Currency symbols

newtype CurrencySymbol Source #

ByteString representing the currency, hashed with BLAKE2b-224. It is empty for Ada, 28 bytes for MintingPolicyHash. Forms an AssetClass along with TokenName. A Value is a map from CurrencySymbol's to a map from TokenName to an Integer.

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.

Instances

Instances details
Data CurrencySymbol Source # 
Instance details

Defined in PlutusLedgerApi.V1.Value

Methods

gfoldl ∷ (∀ d b. Data d ⇒ c (d → b) → d → c b) → (∀ g. g → c g) → CurrencySymbol → c CurrencySymbol Source #

gunfold ∷ (∀ b r. Data b ⇒ c (b → r) → c r) → (∀ r. r → c r) → Constr → c CurrencySymbol Source #

toConstrCurrencySymbolConstr Source #

dataTypeOfCurrencySymbolDataType Source #

dataCast1Typeable t ⇒ (∀ d. Data d ⇒ c (t d)) → Maybe (c CurrencySymbol) Source #

dataCast2Typeable t ⇒ (∀ d e. (Data d, Data e) ⇒ c (t d e)) → Maybe (c CurrencySymbol) Source #

gmapT ∷ (∀ b. Data b ⇒ b → b) → CurrencySymbolCurrencySymbol Source #

gmapQl ∷ (r → r' → r) → r → (∀ d. Data d ⇒ d → r') → CurrencySymbol → r Source #

gmapQr ∷ ∀ r r'. (r' → r → r) → r → (∀ d. Data d ⇒ d → r') → CurrencySymbol → r Source #

gmapQ ∷ (∀ d. Data d ⇒ d → u) → CurrencySymbol → [u] Source #

gmapQiInt → (∀ d. Data d ⇒ d → u) → CurrencySymbol → u Source #

gmapMMonad m ⇒ (∀ d. Data d ⇒ d → m d) → CurrencySymbol → m CurrencySymbol Source #

gmapMpMonadPlus m ⇒ (∀ d. Data d ⇒ d → m d) → CurrencySymbol → m CurrencySymbol Source #

gmapMoMonadPlus m ⇒ (∀ d. Data d ⇒ d → m d) → CurrencySymbol → m CurrencySymbol Source #

Generic CurrencySymbol Source # 
Instance details

Defined in PlutusLedgerApi.V1.Value

Associated Types

type Rep CurrencySymbolTypeType Source #

Show CurrencySymbol Source #

using hex encoding

Instance details

Defined in PlutusLedgerApi.V1.Value

NFData CurrencySymbol Source # 
Instance details

Defined in PlutusLedgerApi.V1.Value

Methods

rnfCurrencySymbol → () Source #

Eq CurrencySymbol Source # 
Instance details

Defined in PlutusLedgerApi.V1.Value

Ord CurrencySymbol Source # 
Instance details

Defined in PlutusLedgerApi.V1.Value

HasBlueprintDefinition CurrencySymbol Source # 
Instance details

Defined in PlutusLedgerApi.V1.Value

Associated Types

type Unroll CurrencySymbol ∷ [Type] Source #

Eq CurrencySymbol Source # 
Instance details

Defined in PlutusLedgerApi.V1.Value

FromData CurrencySymbol Source # 
Instance details

Defined in PlutusLedgerApi.V1.Value

ToData CurrencySymbol Source # 
Instance details

Defined in PlutusLedgerApi.V1.Value

UnsafeFromData CurrencySymbol Source # 
Instance details

Defined in PlutusLedgerApi.V1.Value

Ord CurrencySymbol Source # 
Instance details

Defined in PlutusLedgerApi.V1.Value

Pretty CurrencySymbol Source #

using hex encoding

Instance details

Defined in PlutusLedgerApi.V1.Value

HasBlueprintSchema CurrencySymbol referencedTypes Source # 
Instance details

Defined in PlutusLedgerApi.V1.Value

Methods

schemaSchema referencedTypes Source #

Lift DefaultUni CurrencySymbol Source # 
Instance details

Defined in PlutusLedgerApi.V1.Value

Typeable DefaultUni CurrencySymbol Source # 
Instance details

Defined in PlutusLedgerApi.V1.Value

type Rep CurrencySymbol Source # 
Instance details

Defined in PlutusLedgerApi.V1.Value

type Rep CurrencySymbol = D1 ('MetaData "CurrencySymbol" "PlutusLedgerApi.V1.Value" "plutus-ledger-api-1.39.0.0-inplace" 'True) (C1 ('MetaCons "CurrencySymbol" 'PrefixI 'True) (S1 ('MetaSel ('Just "unCurrencySymbol") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 BuiltinByteString)))
type Unroll CurrencySymbol Source # 
Instance details

Defined in PlutusLedgerApi.V1.Value

currencySymbolByteStringCurrencySymbol Source #

Creates CurrencySymbol from raw ByteString.

adaSymbolCurrencySymbol Source #

The CurrencySymbol of the Ada currency.

Token names

newtype TokenName Source #

ByteString of a name of a token. Shown as UTF-8 string when possible. Should be no longer than 32 bytes, empty for Ada. Forms an AssetClass along with a CurrencySymbol.

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.

Constructors

TokenName 

Instances

Instances details
Data TokenName Source # 
Instance details

Defined in PlutusLedgerApi.V1.Value

Methods

gfoldl ∷ (∀ d b. Data d ⇒ c (d → b) → d → c b) → (∀ g. g → c g) → TokenName → c TokenName Source #

gunfold ∷ (∀ b r. Data b ⇒ c (b → r) → c r) → (∀ r. r → c r) → Constr → c TokenName Source #

toConstrTokenNameConstr Source #

dataTypeOfTokenNameDataType Source #

dataCast1Typeable t ⇒ (∀ d. Data d ⇒ c (t d)) → Maybe (c TokenName) Source #

dataCast2Typeable t ⇒ (∀ d e. (Data d, Data e) ⇒ c (t d e)) → Maybe (c TokenName) Source #

gmapT ∷ (∀ b. Data b ⇒ b → b) → TokenNameTokenName Source #

gmapQl ∷ (r → r' → r) → r → (∀ d. Data d ⇒ d → r') → TokenName → r Source #

gmapQr ∷ ∀ r r'. (r' → r → r) → r → (∀ d. Data d ⇒ d → r') → TokenName → r Source #

gmapQ ∷ (∀ d. Data d ⇒ d → u) → TokenName → [u] Source #

gmapQiInt → (∀ d. Data d ⇒ d → u) → TokenName → u Source #

gmapMMonad m ⇒ (∀ d. Data d ⇒ d → m d) → TokenName → m TokenName Source #

gmapMpMonadPlus m ⇒ (∀ d. Data d ⇒ d → m d) → TokenName → m TokenName Source #

gmapMoMonadPlus m ⇒ (∀ d. Data d ⇒ d → m d) → TokenName → m TokenName Source #

Generic TokenName Source # 
Instance details

Defined in PlutusLedgerApi.V1.Value

Associated Types

type Rep TokenNameTypeType Source #

Show TokenName Source # 
Instance details

Defined in PlutusLedgerApi.V1.Value

NFData TokenName Source # 
Instance details

Defined in PlutusLedgerApi.V1.Value

Methods

rnfTokenName → () Source #

Eq TokenName Source # 
Instance details

Defined in PlutusLedgerApi.V1.Value

Ord TokenName Source # 
Instance details

Defined in PlutusLedgerApi.V1.Value

HasBlueprintDefinition TokenName Source # 
Instance details

Defined in PlutusLedgerApi.V1.Value

Associated Types

type Unroll TokenName ∷ [Type] Source #

Eq TokenName Source # 
Instance details

Defined in PlutusLedgerApi.V1.Value

Methods

(==)TokenNameTokenNameBool Source #

FromData TokenName Source # 
Instance details

Defined in PlutusLedgerApi.V1.Value

ToData TokenName Source # 
Instance details

Defined in PlutusLedgerApi.V1.Value

UnsafeFromData TokenName Source # 
Instance details

Defined in PlutusLedgerApi.V1.Value

Ord TokenName Source # 
Instance details

Defined in PlutusLedgerApi.V1.Value

Pretty TokenName Source # 
Instance details

Defined in PlutusLedgerApi.V1.Value

Methods

prettyTokenNameDoc ann Source #

prettyList ∷ [TokenName] → Doc ann Source #

HasBlueprintSchema TokenName referencedTypes Source # 
Instance details

Defined in PlutusLedgerApi.V1.Value

Methods

schemaSchema referencedTypes Source #

Lift DefaultUni TokenName Source # 
Instance details

Defined in PlutusLedgerApi.V1.Value

Typeable DefaultUni TokenName Source # 
Instance details

Defined in PlutusLedgerApi.V1.Value

type Rep TokenName Source # 
Instance details

Defined in PlutusLedgerApi.V1.Value

type Rep TokenName = D1 ('MetaData "TokenName" "PlutusLedgerApi.V1.Value" "plutus-ledger-api-1.39.0.0-inplace" 'True) (C1 ('MetaCons "TokenName" 'PrefixI 'True) (S1 ('MetaSel ('Just "unTokenName") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 BuiltinByteString)))
type Unroll TokenName Source # 
Instance details

Defined in PlutusLedgerApi.V1.Value

adaTokenTokenName Source #

The TokenName of the Ada currency.

Asset classes

newtype AssetClass Source #

An asset class, identified by a CurrencySymbol and a TokenName.

Constructors

AssetClass 

Instances

Instances details
Data AssetClass Source # 
Instance details

Defined in PlutusLedgerApi.V1.Value

Methods

gfoldl ∷ (∀ d b. Data d ⇒ c (d → b) → d → c b) → (∀ g. g → c g) → AssetClass → c AssetClass Source #

gunfold ∷ (∀ b r. Data b ⇒ c (b → r) → c r) → (∀ r. r → c r) → Constr → c AssetClass Source #

toConstrAssetClassConstr Source #

dataTypeOfAssetClassDataType Source #

dataCast1Typeable t ⇒ (∀ d. Data d ⇒ c (t d)) → Maybe (c AssetClass) Source #

dataCast2Typeable t ⇒ (∀ d e. (Data d, Data e) ⇒ c (t d e)) → Maybe (c AssetClass) Source #

gmapT ∷ (∀ b. Data b ⇒ b → b) → AssetClassAssetClass Source #

gmapQl ∷ (r → r' → r) → r → (∀ d. Data d ⇒ d → r') → AssetClass → r Source #

gmapQr ∷ ∀ r r'. (r' → r → r) → r → (∀ d. Data d ⇒ d → r') → AssetClass → r Source #

gmapQ ∷ (∀ d. Data d ⇒ d → u) → AssetClass → [u] Source #

gmapQiInt → (∀ d. Data d ⇒ d → u) → AssetClass → u Source #

gmapMMonad m ⇒ (∀ d. Data d ⇒ d → m d) → AssetClass → m AssetClass Source #

gmapMpMonadPlus m ⇒ (∀ d. Data d ⇒ d → m d) → AssetClass → m AssetClass Source #

gmapMoMonadPlus m ⇒ (∀ d. Data d ⇒ d → m d) → AssetClass → m AssetClass Source #

Generic AssetClass Source # 
Instance details

Defined in PlutusLedgerApi.V1.Value

Associated Types

type Rep AssetClassTypeType Source #

Show AssetClass Source # 
Instance details

Defined in PlutusLedgerApi.V1.Value

NFData AssetClass Source # 
Instance details

Defined in PlutusLedgerApi.V1.Value

Methods

rnfAssetClass → () Source #

Eq AssetClass Source # 
Instance details

Defined in PlutusLedgerApi.V1.Value

Ord AssetClass Source # 
Instance details

Defined in PlutusLedgerApi.V1.Value

HasBlueprintDefinition AssetClass Source # 
Instance details

Defined in PlutusLedgerApi.V1.Value

Associated Types

type Unroll AssetClass ∷ [Type] Source #

Eq AssetClass Source # 
Instance details

Defined in PlutusLedgerApi.V1.Value

Methods

(==)AssetClassAssetClassBool Source #

FromData AssetClass Source # 
Instance details

Defined in PlutusLedgerApi.V1.Value

ToData AssetClass Source # 
Instance details

Defined in PlutusLedgerApi.V1.Value

UnsafeFromData AssetClass Source # 
Instance details

Defined in PlutusLedgerApi.V1.Value

Ord AssetClass Source # 
Instance details

Defined in PlutusLedgerApi.V1.Value

Pretty AssetClass Source # 
Instance details

Defined in PlutusLedgerApi.V1.Value

Methods

prettyAssetClassDoc ann Source #

prettyList ∷ [AssetClass] → Doc ann Source #

HasBlueprintSchema AssetClass referencedTypes Source # 
Instance details

Defined in PlutusLedgerApi.V1.Value

Methods

schemaSchema referencedTypes Source #

Lift DefaultUni AssetClass Source # 
Instance details

Defined in PlutusLedgerApi.V1.Value

Typeable DefaultUni AssetClass Source # 
Instance details

Defined in PlutusLedgerApi.V1.Value

type Rep AssetClass Source # 
Instance details

Defined in PlutusLedgerApi.V1.Value

type Rep AssetClass = D1 ('MetaData "AssetClass" "PlutusLedgerApi.V1.Value" "plutus-ledger-api-1.39.0.0-inplace" 'True) (C1 ('MetaCons "AssetClass" 'PrefixI 'True) (S1 ('MetaSel ('Just "unAssetClass") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (CurrencySymbol, TokenName))))
type Unroll AssetClass Source # 
Instance details

Defined in PlutusLedgerApi.V1.Value

assetClassCurrencySymbolTokenNameAssetClass Source #

The curried version of AssetClass constructor

assetClassValueAssetClassIntegerValue Source #

A Value containing the given amount of the asset class.

assetClassValueOfValueAssetClassInteger Source #

Get the quantity of the given AssetClass class in the Value.

Addresses

data Address Source #

An address may contain two credentials, the payment credential and optionally a StakingCredential.

Constructors

Address 

Fields

Instances

Instances details
Generic Address Source # 
Instance details

Defined in PlutusLedgerApi.V1.Address

Associated Types

type Rep AddressTypeType Source #

Methods

fromAddressRep Address x Source #

toRep Address x → Address Source #

Show Address Source # 
Instance details

Defined in PlutusLedgerApi.V1.Address

NFData Address Source # 
Instance details

Defined in PlutusLedgerApi.V1.Address

Methods

rnfAddress → () Source #

Eq Address Source # 
Instance details

Defined in PlutusLedgerApi.V1.Address

Methods

(==)AddressAddressBool Source #

(/=)AddressAddressBool Source #

Ord Address Source # 
Instance details

Defined in PlutusLedgerApi.V1.Address

HasBlueprintDefinition Address Source # 
Instance details

Defined in PlutusLedgerApi.V1.Address

Associated Types

type Unroll Address ∷ [Type] Source #

Eq Address Source # 
Instance details

Defined in PlutusLedgerApi.V1.Address

Methods

(==)AddressAddressBool Source #

FromData Address Source # 
Instance details

Defined in PlutusLedgerApi.V1.Address

ToData Address Source # 
Instance details

Defined in PlutusLedgerApi.V1.Address

UnsafeFromData Address Source # 
Instance details

Defined in PlutusLedgerApi.V1.Address

Pretty Address Source # 
Instance details

Defined in PlutusLedgerApi.V1.Address

Methods

prettyAddressDoc ann Source #

prettyList ∷ [Address] → Doc ann Source #

(HasSchemaDefinition Credential referencedTypes, HasSchemaDefinition (Maybe StakingCredential) referencedTypes) ⇒ HasBlueprintSchema Address referencedTypes Source # 
Instance details

Defined in PlutusLedgerApi.V1.Address

Methods

schemaSchema referencedTypes Source #

Lift DefaultUni Address Source # 
Instance details

Defined in PlutusLedgerApi.V1.Address

Typeable DefaultUni Address Source # 
Instance details

Defined in PlutusLedgerApi.V1.Address

type Rep Address Source # 
Instance details

Defined in PlutusLedgerApi.V1.Address

type Rep Address = D1 ('MetaData "Address" "PlutusLedgerApi.V1.Address" "plutus-ledger-api-1.39.0.0-inplace" 'False) (C1 ('MetaCons "Address" 'PrefixI 'True) (S1 ('MetaSel ('Just "addressCredential") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Credential) :*: S1 ('MetaSel ('Just "addressStakingCredential") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe StakingCredential))))
type Unroll Address Source # 
Instance details

Defined in PlutusLedgerApi.V1.Address

pubKeyHashAddressPubKeyHashAddress Source #

The address that should be targeted by a transaction output locked by the public key with the given hash.

toPubKeyHashAddressMaybe PubKeyHash Source #

The PubKeyHash of the address, if any

toScriptHashAddressMaybe ScriptHash Source #

The validator hash of the address, if any

scriptHashAddressScriptHashAddress Source #

The address that should be used by a transaction output locked by the given validator script hash.

stakingCredentialAddressMaybe StakingCredential Source #

The staking credential of an address (if any)

Crypto

newtype PubKeyHash Source #

The hash of a public key. This is frequently used to identify the public key, rather than the key itself. Hashed with BLAKE2b-224. 28 bytes.

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.

Constructors

PubKeyHash 

Instances

Instances details
IsString PubKeyHash Source #

from hex encoding

Instance details

Defined in PlutusLedgerApi.V1.Crypto

Generic PubKeyHash Source # 
Instance details

Defined in PlutusLedgerApi.V1.Crypto

Associated Types

type Rep PubKeyHashTypeType Source #

Show PubKeyHash Source #

using hex encoding

Instance details

Defined in PlutusLedgerApi.V1.Crypto

NFData PubKeyHash Source # 
Instance details

Defined in PlutusLedgerApi.V1.Crypto

Methods

rnfPubKeyHash → () Source #

Eq PubKeyHash Source # 
Instance details

Defined in PlutusLedgerApi.V1.Crypto

Ord PubKeyHash Source # 
Instance details

Defined in PlutusLedgerApi.V1.Crypto

HasBlueprintDefinition PubKeyHash Source # 
Instance details

Defined in PlutusLedgerApi.V1.Crypto

Associated Types

type Unroll PubKeyHash ∷ [Type] Source #

Eq PubKeyHash Source # 
Instance details

Defined in PlutusLedgerApi.V1.Crypto

Methods

(==)PubKeyHashPubKeyHashBool Source #

FromData PubKeyHash Source # 
Instance details

Defined in PlutusLedgerApi.V1.Crypto

ToData PubKeyHash Source # 
Instance details

Defined in PlutusLedgerApi.V1.Crypto

UnsafeFromData PubKeyHash Source # 
Instance details

Defined in PlutusLedgerApi.V1.Crypto

Ord PubKeyHash Source # 
Instance details

Defined in PlutusLedgerApi.V1.Crypto

Show PubKeyHash Source # 
Instance details

Defined in PlutusLedgerApi.V1.Crypto

Pretty PubKeyHash Source #

using hex encoding

Instance details

Defined in PlutusLedgerApi.V1.Crypto

Methods

prettyPubKeyHashDoc ann Source #

prettyList ∷ [PubKeyHash] → Doc ann Source #

HasBlueprintSchema PubKeyHash referenedTypes Source # 
Instance details

Defined in PlutusLedgerApi.V1.Crypto

Methods

schemaSchema referenedTypes Source #

Lift DefaultUni PubKeyHash Source # 
Instance details

Defined in PlutusLedgerApi.V1.Crypto

Typeable DefaultUni PubKeyHash Source # 
Instance details

Defined in PlutusLedgerApi.V1.Crypto

type Rep PubKeyHash Source # 
Instance details

Defined in PlutusLedgerApi.V1.Crypto

type Rep PubKeyHash = D1 ('MetaData "PubKeyHash" "PlutusLedgerApi.V1.Crypto" "plutus-ledger-api-1.39.0.0-inplace" 'True) (C1 ('MetaCons "PubKeyHash" 'PrefixI 'True) (S1 ('MetaSel ('Just "getPubKeyHash") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 BuiltinByteString)))
type Unroll PubKeyHash Source # 
Instance details

Defined in PlutusLedgerApi.V1.Crypto

Time

newtype POSIXTime Source #

POSIX time is measured as the number of milliseconds since 1970-01-01T00:00:00Z. This is not the same as Haskell's POSIXTime

Constructors

POSIXTime 

Fields

Instances

Instances details
Enum POSIXTime Source # 
Instance details

Defined in PlutusLedgerApi.V1.Time

Generic POSIXTime Source # 
Instance details

Defined in PlutusLedgerApi.V1.Time

Associated Types

type Rep POSIXTimeTypeType Source #

Num POSIXTime Source # 
Instance details

Defined in PlutusLedgerApi.V1.Time

Integral POSIXTime Source # 
Instance details

Defined in PlutusLedgerApi.V1.Time

Real POSIXTime Source # 
Instance details

Defined in PlutusLedgerApi.V1.Time

Show POSIXTime Source # 
Instance details

Defined in PlutusLedgerApi.V1.Time

NFData POSIXTime Source # 
Instance details

Defined in PlutusLedgerApi.V1.Time

Methods

rnfPOSIXTime → () Source #

Eq POSIXTime Source # 
Instance details

Defined in PlutusLedgerApi.V1.Time

Ord POSIXTime Source # 
Instance details

Defined in PlutusLedgerApi.V1.Time

HasBlueprintDefinition POSIXTime Source # 
Instance details

Defined in PlutusLedgerApi.V1.Time

Associated Types

type Unroll POSIXTime ∷ [Type] Source #

Enum POSIXTime Source # 
Instance details

Defined in PlutusLedgerApi.V1.Time

Eq POSIXTime Source # 
Instance details

Defined in PlutusLedgerApi.V1.Time

Methods

(==)POSIXTimePOSIXTimeBool Source #

FromData POSIXTime Source # 
Instance details

Defined in PlutusLedgerApi.V1.Time

ToData POSIXTime Source # 
Instance details

Defined in PlutusLedgerApi.V1.Time

UnsafeFromData POSIXTime Source # 
Instance details

Defined in PlutusLedgerApi.V1.Time

AdditiveGroup POSIXTime Source # 
Instance details

Defined in PlutusLedgerApi.V1.Time

AdditiveMonoid POSIXTime Source # 
Instance details

Defined in PlutusLedgerApi.V1.Time

Methods

zeroPOSIXTime Source #

AdditiveSemigroup POSIXTime Source # 
Instance details

Defined in PlutusLedgerApi.V1.Time

Ord POSIXTime Source # 
Instance details

Defined in PlutusLedgerApi.V1.Time

Pretty POSIXTime Source # 
Instance details

Defined in PlutusLedgerApi.V1.Time

Methods

prettyPOSIXTimeDoc ann Source #

prettyList ∷ [POSIXTime] → Doc ann Source #

HasBlueprintSchema POSIXTime referencedTypes Source # 
Instance details

Defined in PlutusLedgerApi.V1.Time

Methods

schemaSchema referencedTypes Source #

Lift DefaultUni POSIXTime Source # 
Instance details

Defined in PlutusLedgerApi.V1.Time

Typeable DefaultUni POSIXTime Source # 
Instance details

Defined in PlutusLedgerApi.V1.Time

type Rep POSIXTime Source # 
Instance details

Defined in PlutusLedgerApi.V1.Time

type Rep POSIXTime = D1 ('MetaData "POSIXTime" "PlutusLedgerApi.V1.Time" "plutus-ledger-api-1.39.0.0-inplace" 'True) (C1 ('MetaCons "POSIXTime" 'PrefixI 'True) (S1 ('MetaSel ('Just "getPOSIXTime") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Integer)))
type Unroll POSIXTime Source # 
Instance details

Defined in PlutusLedgerApi.V1.Time

newtype DiffMilliSeconds Source #

This is a length of time, as measured by a number of milliseconds.

Instances

Instances details
Enum DiffMilliSeconds Source # 
Instance details

Defined in PlutusLedgerApi.V1.Time

Generic DiffMilliSeconds Source # 
Instance details

Defined in PlutusLedgerApi.V1.Time

Associated Types

type Rep DiffMilliSecondsTypeType Source #

Num DiffMilliSeconds Source # 
Instance details

Defined in PlutusLedgerApi.V1.Time

Integral DiffMilliSeconds Source # 
Instance details

Defined in PlutusLedgerApi.V1.Time

Real DiffMilliSeconds Source # 
Instance details

Defined in PlutusLedgerApi.V1.Time

Show DiffMilliSeconds Source # 
Instance details

Defined in PlutusLedgerApi.V1.Time

NFData DiffMilliSeconds Source # 
Instance details

Defined in PlutusLedgerApi.V1.Time

Methods

rnfDiffMilliSeconds → () Source #

Eq DiffMilliSeconds Source # 
Instance details

Defined in PlutusLedgerApi.V1.Time

Ord DiffMilliSeconds Source # 
Instance details

Defined in PlutusLedgerApi.V1.Time

HasBlueprintDefinition DiffMilliSeconds Source # 
Instance details

Defined in PlutusLedgerApi.V1.Time

Associated Types

type Unroll DiffMilliSeconds ∷ [Type] Source #

Eq DiffMilliSeconds Source # 
Instance details

Defined in PlutusLedgerApi.V1.Time

FromData DiffMilliSeconds Source # 
Instance details

Defined in PlutusLedgerApi.V1.Time

ToData DiffMilliSeconds Source # 
Instance details

Defined in PlutusLedgerApi.V1.Time

UnsafeFromData DiffMilliSeconds Source # 
Instance details

Defined in PlutusLedgerApi.V1.Time

AdditiveGroup DiffMilliSeconds Source # 
Instance details

Defined in PlutusLedgerApi.V1.Time

AdditiveMonoid DiffMilliSeconds Source # 
Instance details

Defined in PlutusLedgerApi.V1.Time

AdditiveSemigroup DiffMilliSeconds Source # 
Instance details

Defined in PlutusLedgerApi.V1.Time

Ord DiffMilliSeconds Source # 
Instance details

Defined in PlutusLedgerApi.V1.Time

HasBlueprintSchema DiffMilliSeconds referencedTypes Source # 
Instance details

Defined in PlutusLedgerApi.V1.Time

Methods

schemaSchema referencedTypes Source #

Lift DefaultUni DiffMilliSeconds Source # 
Instance details

Defined in PlutusLedgerApi.V1.Time

Typeable DefaultUni DiffMilliSeconds Source # 
Instance details

Defined in PlutusLedgerApi.V1.Time

type Rep DiffMilliSeconds Source # 
Instance details

Defined in PlutusLedgerApi.V1.Time

type Rep DiffMilliSeconds = D1 ('MetaData "DiffMilliSeconds" "PlutusLedgerApi.V1.Time" "plutus-ledger-api-1.39.0.0-inplace" 'True) (C1 ('MetaCons "DiffMilliSeconds" 'PrefixI 'False) (S1 ('MetaSel ('NothingMaybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Integer)))
type Unroll DiffMilliSeconds Source # 
Instance details

Defined in PlutusLedgerApi.V1.Time

Intervals

data Interval a Source #

An interval of as.

The interval may be either closed or open at either end, meaning that the endpoints may or may not be included in the interval.

The interval can also be unbounded on either side.

The Eq instance gives equality of the intervals, not structural equality. There is no Ord instance, but contains gives a partial order.

Note that some of the functions on Interval rely on Enum in order to handle non-inclusive endpoints. For this reason, it may not be safe to use Intervals with non-inclusive endpoints on types whose Enum instances have partial methods.

Constructors

Interval 

Fields

Instances

Instances details
Functor Interval Source # 
Instance details

Defined in PlutusLedgerApi.V1.Interval

Methods

fmap ∷ (a → b) → Interval a → Interval b Source #

(Typeable DefaultUni a, Lift DefaultUni (LowerBound a), Lift DefaultUni (UpperBound a)) ⇒ Lift DefaultUni (Interval a) Source # 
Instance details

Defined in PlutusLedgerApi.V1.Interval

Generic (Interval a) Source # 
Instance details

Defined in PlutusLedgerApi.V1.Interval

Associated Types

type Rep (Interval a) ∷ TypeType Source #

Methods

fromInterval a → Rep (Interval a) x Source #

toRep (Interval a) x → Interval a Source #

Show a ⇒ Show (Interval a) Source # 
Instance details

Defined in PlutusLedgerApi.V1.Interval

NFData a ⇒ NFData (Interval a) Source # 
Instance details

Defined in PlutusLedgerApi.V1.Interval

Methods

rnfInterval a → () Source #

(Enum a, Ord a) ⇒ Eq (Interval a) Source # 
Instance details

Defined in PlutusLedgerApi.V1.Interval

Methods

(==)Interval a → Interval a → Bool Source #

(/=)Interval a → Interval a → Bool Source #

HasBlueprintDefinition a ⇒ HasBlueprintDefinition (Interval a) Source # 
Instance details

Defined in PlutusLedgerApi.V1.Interval

Associated Types

type Unroll (Interval a) ∷ [Type] Source #

(Enum a, Ord a) ⇒ Eq (Interval a) Source # 
Instance details

Defined in PlutusLedgerApi.V1.Interval

Methods

(==)Interval a → Interval a → Bool Source #

FromData a ⇒ FromData (Interval a) Source # 
Instance details

Defined in PlutusLedgerApi.V1.Interval

ToData a ⇒ ToData (Interval a) Source # 
Instance details

Defined in PlutusLedgerApi.V1.Interval

UnsafeFromData a ⇒ UnsafeFromData (Interval a) Source # 
Instance details

Defined in PlutusLedgerApi.V1.Interval

(Enum a, Ord a) ⇒ BoundedJoinSemiLattice (Interval a) Source # 
Instance details

Defined in PlutusLedgerApi.V1.Interval

Methods

bottomInterval a Source #

(Enum a, Ord a) ⇒ BoundedMeetSemiLattice (Interval a) Source # 
Instance details

Defined in PlutusLedgerApi.V1.Interval

Methods

topInterval a Source #

(Enum a, Ord a) ⇒ JoinSemiLattice (Interval a) Source # 
Instance details

Defined in PlutusLedgerApi.V1.Interval

Methods

(\/)Interval a → Interval a → Interval a Source #

(Enum a, Ord a) ⇒ MeetSemiLattice (Interval a) Source # 
Instance details

Defined in PlutusLedgerApi.V1.Interval

Methods

(/\)Interval a → Interval a → Interval a Source #

Pretty a ⇒ Pretty (Interval a) Source # 
Instance details

Defined in PlutusLedgerApi.V1.Interval

Methods

prettyInterval a → Doc ann Source #

prettyList ∷ [Interval a] → Doc ann Source #

(HasBlueprintDefinition a, HasSchemaDefinition (LowerBound a) referencedTypes, HasSchemaDefinition (UpperBound a) referencedTypes) ⇒ HasBlueprintSchema (Interval a) referencedTypes Source # 
Instance details

Defined in PlutusLedgerApi.V1.Interval

Methods

schemaSchema referencedTypes Source #

Typeable DefaultUni Interval Source # 
Instance details

Defined in PlutusLedgerApi.V1.Interval

type Rep (Interval a) Source # 
Instance details

Defined in PlutusLedgerApi.V1.Interval

type Rep (Interval a) = D1 ('MetaData "Interval" "PlutusLedgerApi.V1.Interval" "plutus-ledger-api-1.39.0.0-inplace" 'False) (C1 ('MetaCons "Interval" 'PrefixI 'True) (S1 ('MetaSel ('Just "ivFrom") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (LowerBound a)) :*: S1 ('MetaSel ('Just "ivTo") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (UpperBound a))))
type Unroll (Interval a) Source # 
Instance details

Defined in PlutusLedgerApi.V1.Interval

data Extended a Source #

A set extended with a positive and negative infinity.

Constructors

NegInf 
Finite a 
PosInf 

Instances

Instances details
Functor Extended Source # 
Instance details

Defined in PlutusLedgerApi.V1.Interval

Methods

fmap ∷ (a → b) → Extended a → Extended b Source #

(Typeable DefaultUni a, Lift DefaultUni a) ⇒ Lift DefaultUni (Extended a) Source # 
Instance details

Defined in PlutusLedgerApi.V1.Interval

Generic (Extended a) Source # 
Instance details

Defined in PlutusLedgerApi.V1.Interval

Associated Types

type Rep (Extended a) ∷ TypeType Source #

Methods

fromExtended a → Rep (Extended a) x Source #

toRep (Extended a) x → Extended a Source #

Show a ⇒ Show (Extended a) Source # 
Instance details

Defined in PlutusLedgerApi.V1.Interval

NFData a ⇒ NFData (Extended a) Source # 
Instance details

Defined in PlutusLedgerApi.V1.Interval

Methods

rnfExtended a → () Source #

Eq a ⇒ Eq (Extended a) Source # 
Instance details

Defined in PlutusLedgerApi.V1.Interval

Methods

(==)Extended a → Extended a → Bool Source #

(/=)Extended a → Extended a → Bool Source #

Ord a ⇒ Ord (Extended a) Source # 
Instance details

Defined in PlutusLedgerApi.V1.Interval

Methods

compareExtended a → Extended a → Ordering Source #

(<)Extended a → Extended a → Bool Source #

(<=)Extended a → Extended a → Bool Source #

(>)Extended a → Extended a → Bool Source #

(>=)Extended a → Extended a → Bool Source #

maxExtended a → Extended a → Extended a Source #

minExtended a → Extended a → Extended a Source #

HasBlueprintDefinition a ⇒ HasBlueprintDefinition (Extended a) Source # 
Instance details

Defined in PlutusLedgerApi.V1.Interval

Associated Types

type Unroll (Extended a) ∷ [Type] Source #

Eq a ⇒ Eq (Extended a) Source # 
Instance details

Defined in PlutusLedgerApi.V1.Interval

Methods

(==)Extended a → Extended a → Bool Source #

FromData a ⇒ FromData (Extended a) Source # 
Instance details

Defined in PlutusLedgerApi.V1.Interval

ToData a ⇒ ToData (Extended a) Source # 
Instance details

Defined in PlutusLedgerApi.V1.Interval

UnsafeFromData a ⇒ UnsafeFromData (Extended a) Source # 
Instance details

Defined in PlutusLedgerApi.V1.Interval

Ord a ⇒ Ord (Extended a) Source # 
Instance details

Defined in PlutusLedgerApi.V1.Interval

Methods

compareExtended a → Extended a → Ordering Source #

(<)Extended a → Extended a → Bool Source #

(<=)Extended a → Extended a → Bool Source #

(>)Extended a → Extended a → Bool Source #

(>=)Extended a → Extended a → Bool Source #

maxExtended a → Extended a → Extended a Source #

minExtended a → Extended a → Extended a Source #

Pretty a ⇒ Pretty (Extended a) Source # 
Instance details

Defined in PlutusLedgerApi.V1.Interval

Methods

prettyExtended a → Doc ann Source #

prettyList ∷ [Extended a] → Doc ann Source #

(HasBlueprintDefinition a, HasSchemaDefinition a referencedTypes) ⇒ HasBlueprintSchema (Extended a) referencedTypes Source # 
Instance details

Defined in PlutusLedgerApi.V1.Interval

Methods

schemaSchema referencedTypes Source #

Typeable DefaultUni Extended Source # 
Instance details

Defined in PlutusLedgerApi.V1.Interval

type Rep (Extended a) Source # 
Instance details

Defined in PlutusLedgerApi.V1.Interval

type Rep (Extended a) = D1 ('MetaData "Extended" "PlutusLedgerApi.V1.Interval" "plutus-ledger-api-1.39.0.0-inplace" 'False) (C1 ('MetaCons "NegInf" 'PrefixI 'False) (U1TypeType) :+: (C1 ('MetaCons "Finite" 'PrefixI 'False) (S1 ('MetaSel ('NothingMaybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 a)) :+: C1 ('MetaCons "PosInf" 'PrefixI 'False) (U1TypeType)))
type Unroll (Extended a) Source # 
Instance details

Defined in PlutusLedgerApi.V1.Interval

type Unroll (Extended a) = Extended a ': Unrolled a

type Closure = Bool Source #

Whether a bound is inclusive or not.

data UpperBound a Source #

The upper bound of an interval.

Constructors

UpperBound (Extended a) Closure 

Instances

Instances details
Functor UpperBound Source # 
Instance details

Defined in PlutusLedgerApi.V1.Interval

Methods

fmap ∷ (a → b) → UpperBound a → UpperBound b Source #

(Typeable DefaultUni a, Lift DefaultUni (Extended a)) ⇒ Lift DefaultUni (UpperBound a) Source # 
Instance details

Defined in PlutusLedgerApi.V1.Interval

Generic (UpperBound a) Source # 
Instance details

Defined in PlutusLedgerApi.V1.Interval

Associated Types

type Rep (UpperBound a) ∷ TypeType Source #

Methods

fromUpperBound a → Rep (UpperBound a) x Source #

toRep (UpperBound a) x → UpperBound a Source #

Show a ⇒ Show (UpperBound a) Source # 
Instance details

Defined in PlutusLedgerApi.V1.Interval

NFData a ⇒ NFData (UpperBound a) Source # 
Instance details

Defined in PlutusLedgerApi.V1.Interval

Methods

rnfUpperBound a → () Source #

(Enum a, Eq a) ⇒ Eq (UpperBound a) Source # 
Instance details

Defined in PlutusLedgerApi.V1.Interval

Methods

(==)UpperBound a → UpperBound a → Bool Source #

(/=)UpperBound a → UpperBound a → Bool Source #

(Enum a, Ord a) ⇒ Ord (UpperBound a) Source # 
Instance details

Defined in PlutusLedgerApi.V1.Interval

HasBlueprintDefinition (Extended a) ⇒ HasBlueprintDefinition (UpperBound a) Source # 
Instance details

Defined in PlutusLedgerApi.V1.Interval

Associated Types

type Unroll (UpperBound a) ∷ [Type] Source #

(Enum a, Eq a) ⇒ Eq (UpperBound a) Source # 
Instance details

Defined in PlutusLedgerApi.V1.Interval

Methods

(==)UpperBound a → UpperBound a → Bool Source #

FromData a ⇒ FromData (UpperBound a) Source # 
Instance details

Defined in PlutusLedgerApi.V1.Interval

ToData a ⇒ ToData (UpperBound a) Source # 
Instance details

Defined in PlutusLedgerApi.V1.Interval

UnsafeFromData a ⇒ UnsafeFromData (UpperBound a) Source # 
Instance details

Defined in PlutusLedgerApi.V1.Interval

(Enum a, Ord a) ⇒ Ord (UpperBound a) Source # 
Instance details

Defined in PlutusLedgerApi.V1.Interval

Pretty a ⇒ Pretty (UpperBound a) Source # 
Instance details

Defined in PlutusLedgerApi.V1.Interval

Methods

prettyUpperBound a → Doc ann Source #

prettyList ∷ [UpperBound a] → Doc ann Source #

(HasSchemaDefinition a referencedTypes, HasBlueprintDefinition a, HasSchemaDefinition (Extended a) referencedTypes, HasSchemaDefinition Closure referencedTypes) ⇒ HasBlueprintSchema (UpperBound a) referencedTypes Source # 
Instance details

Defined in PlutusLedgerApi.V1.Interval

Methods

schemaSchema referencedTypes Source #

Typeable DefaultUni UpperBound Source # 
Instance details

Defined in PlutusLedgerApi.V1.Interval

type Rep (UpperBound a) Source # 
Instance details

Defined in PlutusLedgerApi.V1.Interval

type Rep (UpperBound a) = D1 ('MetaData "UpperBound" "PlutusLedgerApi.V1.Interval" "plutus-ledger-api-1.39.0.0-inplace" 'False) (C1 ('MetaCons "UpperBound" 'PrefixI 'False) (S1 ('MetaSel ('NothingMaybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Extended a)) :*: S1 ('MetaSel ('NothingMaybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Closure)))
type Unroll (UpperBound a) Source # 
Instance details

Defined in PlutusLedgerApi.V1.Interval

data LowerBound a Source #

The lower bound of an interval.

Constructors

LowerBound (Extended a) Closure 

Instances

Instances details
Functor LowerBound Source # 
Instance details

Defined in PlutusLedgerApi.V1.Interval

Methods

fmap ∷ (a → b) → LowerBound a → LowerBound b Source #

(Typeable DefaultUni a, Lift DefaultUni (Extended a)) ⇒ Lift DefaultUni (LowerBound a) Source # 
Instance details

Defined in PlutusLedgerApi.V1.Interval

Generic (LowerBound a) Source # 
Instance details

Defined in PlutusLedgerApi.V1.Interval

Associated Types

type Rep (LowerBound a) ∷ TypeType Source #

Methods

fromLowerBound a → Rep (LowerBound a) x Source #

toRep (LowerBound a) x → LowerBound a Source #

Show a ⇒ Show (LowerBound a) Source # 
Instance details

Defined in PlutusLedgerApi.V1.Interval

NFData a ⇒ NFData (LowerBound a) Source # 
Instance details

Defined in PlutusLedgerApi.V1.Interval

Methods

rnfLowerBound a → () Source #

(Enum a, Eq a) ⇒ Eq (LowerBound a) Source # 
Instance details

Defined in PlutusLedgerApi.V1.Interval

Methods

(==)LowerBound a → LowerBound a → Bool Source #

(/=)LowerBound a → LowerBound a → Bool Source #

(Enum a, Ord a) ⇒ Ord (LowerBound a) Source # 
Instance details

Defined in PlutusLedgerApi.V1.Interval

HasBlueprintDefinition (Extended a) ⇒ HasBlueprintDefinition (LowerBound a) Source # 
Instance details

Defined in PlutusLedgerApi.V1.Interval

Associated Types

type Unroll (LowerBound a) ∷ [Type] Source #

(Enum a, Eq a) ⇒ Eq (LowerBound a) Source # 
Instance details

Defined in PlutusLedgerApi.V1.Interval

Methods

(==)LowerBound a → LowerBound a → Bool Source #

FromData a ⇒ FromData (LowerBound a) Source # 
Instance details

Defined in PlutusLedgerApi.V1.Interval

ToData a ⇒ ToData (LowerBound a) Source # 
Instance details

Defined in PlutusLedgerApi.V1.Interval

UnsafeFromData a ⇒ UnsafeFromData (LowerBound a) Source # 
Instance details

Defined in PlutusLedgerApi.V1.Interval

(Enum a, Ord a) ⇒ Ord (LowerBound a) Source # 
Instance details

Defined in PlutusLedgerApi.V1.Interval

Pretty a ⇒ Pretty (LowerBound a) Source # 
Instance details

Defined in PlutusLedgerApi.V1.Interval

Methods

prettyLowerBound a → Doc ann Source #

prettyList ∷ [LowerBound a] → Doc ann Source #

(HasSchemaDefinition a referencedTypes, HasBlueprintDefinition a, HasSchemaDefinition (Extended a) referencedTypes, HasSchemaDefinition Closure referencedTypes) ⇒ HasBlueprintSchema (LowerBound a) referencedTypes Source # 
Instance details

Defined in PlutusLedgerApi.V1.Interval

Methods

schemaSchema referencedTypes Source #

Typeable DefaultUni LowerBound Source # 
Instance details

Defined in PlutusLedgerApi.V1.Interval

type Rep (LowerBound a) Source # 
Instance details

Defined in PlutusLedgerApi.V1.Interval

type Rep (LowerBound a) = D1 ('MetaData "LowerBound" "PlutusLedgerApi.V1.Interval" "plutus-ledger-api-1.39.0.0-inplace" 'False) (C1 ('MetaCons "LowerBound" 'PrefixI 'False) (S1 ('MetaSel ('NothingMaybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Extended a)) :*: S1 ('MetaSel ('NothingMaybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Closure)))
type Unroll (LowerBound a) Source # 
Instance details

Defined in PlutusLedgerApi.V1.Interval

neverInterval a Source #

An Interval that is empty. There can be many empty intervals, see isEmpty. The empty interval never is arbitrarily set to [+∞,-∞].

alwaysInterval a Source #

An Interval that covers every slot. In math. notation [-∞,+∞]

from ∷ a → Interval a Source #

from a is an Interval that includes all values that are greater than or equal to a. In math. notation: [a,+∞]

to ∷ a → Interval a Source #

to a is an Interval that includes all values that are smaller than or equal to a. In math. notation: [-∞,a]

lowerBound ∷ a → LowerBound a Source #

Construct a lower bound from a value. The resulting bound includes all values that are equal or greater than the input value.

upperBound ∷ a → UpperBound a Source #

Construct an upper bound from a value. The resulting bound includes all values that are equal or smaller than the input value.

strictLowerBound ∷ a → LowerBound a Source #

Construct a strict lower bound from a value. The resulting bound includes all values that are (strictly) greater than the input value.

strictUpperBound ∷ a → UpperBound a Source #

Construct a strict upper bound from a value. The resulting bound includes all values that are (strictly) smaller than the input value.

member ∷ (Enum a, Ord a) ⇒ a → Interval a → Bool Source #

Check whether a value is in an interval.

interval ∷ a → a → Interval a Source #

interval a b includes all values that are greater than or equal to a and smaller than or equal to b. Therefore it includes a and b. In math. notation: [a,b]

hull ∷ (Enum a, Ord a) ⇒ Interval a → Interval a → Interval a Source #

'hull a b' is the smallest interval containing a and b.

intersection ∷ (Enum a, Ord a) ⇒ Interval a → Interval a → Interval a Source #

'intersection a b' is the largest interval that is contained in a and in b, if it exists.

overlaps ∷ (Enum a, Ord a) ⇒ Interval a → Interval a → Bool Source #

Check whether two intervals overlap, that is, whether there is a value that is a member of both intervals.

contains ∷ (Enum a, Ord a) ⇒ Interval a → Interval a → Bool Source #

a contains b is true if the Interval b is entirely contained in a. That is, a contains b if for every entry s, if member s b then member s a.

isEmpty ∷ (Enum a, Ord a) ⇒ Interval a → Bool Source #

Check if an Interval is empty.

before ∷ (Enum a, Ord a) ⇒ a → Interval a → Bool Source #

Check if a value is earlier than the beginning of an Interval.

after ∷ (Enum a, Ord a) ⇒ a → Interval a → Bool Source #

Check if a value is later than the end of an Interval.

Data

data Data Source #

A generic "data" type.

The main constructor Constr represents a datatype value in sum-of-products form: Constr i args represents a use of the ith constructor along with its arguments.

The other constructors are various primitives.

Constructors

Constr Integer [Data] 
Map [(Data, Data)] 
List [Data] 
I Integer 
B ByteString 

Instances

Instances details
Data Data 
Instance details

Defined in PlutusCore.Data

Methods

gfoldl ∷ (∀ d b. Data0 d ⇒ c (d → b) → d → c b) → (∀ g. g → c g) → Data → c Data Source #

gunfold ∷ (∀ b r. Data0 b ⇒ c (b → r) → c r) → (∀ r. r → c r) → Constr → c Data Source #

toConstrDataConstr Source #

dataTypeOfDataDataType Source #

dataCast1Typeable t ⇒ (∀ d. Data0 d ⇒ c (t d)) → Maybe (c Data) Source #

dataCast2Typeable t ⇒ (∀ d e. (Data0 d, Data0 e) ⇒ c (t d e)) → Maybe (c Data) Source #

gmapT ∷ (∀ b. Data0 b ⇒ b → b) → DataData Source #

gmapQl ∷ (r → r' → r) → r → (∀ d. Data0 d ⇒ d → r') → Data → r Source #

gmapQr ∷ ∀ r r'. (r' → r → r) → r → (∀ d. Data0 d ⇒ d → r') → Data → r Source #

gmapQ ∷ (∀ d. Data0 d ⇒ d → u) → Data → [u] Source #

gmapQiInt → (∀ d. Data0 d ⇒ d → u) → Data → u Source #

gmapMMonad m ⇒ (∀ d. Data0 d ⇒ d → m d) → Data → m Data Source #

gmapMpMonadPlus m ⇒ (∀ d. Data0 d ⇒ d → m d) → Data → m Data Source #

gmapMoMonadPlus m ⇒ (∀ d. Data0 d ⇒ d → m d) → Data → m Data Source #

Generic Data 
Instance details

Defined in PlutusCore.Data

Associated Types

type Rep DataTypeType Source #

Methods

fromDataRep Data x Source #

toRep Data x → Data Source #

Read Data 
Instance details

Defined in PlutusCore.Data

Show Data 
Instance details

Defined in PlutusCore.Data

Methods

showsPrecIntDataShowS Source #

showDataString Source #

showList ∷ [Data] → ShowS Source #

NFData Data 
Instance details

Defined in PlutusCore.Data

Methods

rnfData → () Source #

Eq Data 
Instance details

Defined in PlutusCore.Data

Methods

(==)DataDataBool Source #

(/=)DataDataBool Source #

Ord Data 
Instance details

Defined in PlutusCore.Data

Methods

compareDataDataOrdering Source #

(<)DataDataBool Source #

(<=)DataDataBool Source #

(>)DataDataBool Source #

(>=)DataDataBool Source #

maxDataDataData Source #

minDataDataData Source #

Hashable Data 
Instance details

Defined in PlutusCore.Data

Methods

hashWithSaltIntDataInt Source #

hashDataInt Source #

NoThunks Data 
Instance details

Defined in PlutusCore.Data

HasToBuiltin Data 
Instance details

Defined in PlutusTx.Builtins.HasBuiltin

Associated Types

type ToBuiltin Data Source #

Pretty Data 
Instance details

Defined in PlutusCore.Data

Methods

prettyDataDoc ann Source #

prettyList ∷ [Data] → Doc ann Source #

Serialise Data 
Instance details

Defined in PlutusCore.Data

PrettyBy ConstConfig Data 
Instance details

Defined in PlutusCore.Pretty.PrettyConst

Methods

prettyByConstConfigDataDoc ann Source #

prettyListByConstConfig → [Data] → Doc ann Source #

KnownBuiltinTypeIn DefaultUni term DataMakeKnownIn DefaultUni term Data 
Instance details

Defined in PlutusCore.Default.Universe

KnownBuiltinTypeIn DefaultUni term DataReadKnownIn DefaultUni term Data 
Instance details

Defined in PlutusCore.Default.Universe

Methods

readKnown ∷ term → ReadKnownM Data Source #

Contains DefaultUni Data 
Instance details

Defined in PlutusCore.Default.Universe

KnownBuiltinTypeAst tyname DefaultUni DataKnownTypeAst tyname DefaultUni Data 
Instance details

Defined in PlutusCore.Default.Universe

Associated Types

type IsBuiltin DefaultUni DataBool Source #

type ToHoles DefaultUni hole Data ∷ [Hole] Source #

type ToBinds DefaultUni acc Data ∷ [Some TyNameRep] Source #

Methods

typeAstType tyname DefaultUni () Source #

type Rep Data 
Instance details

Defined in PlutusCore.Data

type ToBuiltin Data 
Instance details

Defined in PlutusTx.Builtins.HasBuiltin

type IsBuiltin DefaultUni Data 
Instance details

Defined in PlutusCore.Default.Universe

type ToBinds DefaultUni acc Data 
Instance details

Defined in PlutusCore.Default.Universe

type ToHoles DefaultUni hole Data 
Instance details

Defined in PlutusCore.Default.Universe

data BuiltinData Source #

A type corresponding to the Plutus Core builtin equivalent of Data.

The point of this type is to be an opaque equivalent of Data, so as to ensure that it is only used in ways that the compiler can handle.

As such, you should use this type in your on-chain code, and in any data structures that you want to be representable on-chain.

For off-chain usage, there are conversion functions builtinDataToData and dataToBuiltinData, but note that these will not work on-chain.

Constructors

BuiltinData ~Data 

Instances

Instances details
Data BuiltinData 
Instance details

Defined in PlutusTx.Builtins.Internal

Methods

gfoldl ∷ (∀ d b. Data d ⇒ c (d → b) → d → c b) → (∀ g. g → c g) → BuiltinData → c BuiltinData Source #

gunfold ∷ (∀ b r. Data b ⇒ c (b → r) → c r) → (∀ r. r → c r) → Constr → c BuiltinData Source #

toConstrBuiltinDataConstr Source #

dataTypeOfBuiltinDataDataType Source #

dataCast1Typeable t ⇒ (∀ d. Data d ⇒ c (t d)) → Maybe (c BuiltinData) Source #

dataCast2Typeable t ⇒ (∀ d e. (Data d, Data e) ⇒ c (t d e)) → Maybe (c BuiltinData) Source #

gmapT ∷ (∀ b. Data b ⇒ b → b) → BuiltinDataBuiltinData Source #

gmapQl ∷ (r → r' → r) → r → (∀ d. Data d ⇒ d → r') → BuiltinData → r Source #

gmapQr ∷ ∀ r r'. (r' → r → r) → r → (∀ d. Data d ⇒ d → r') → BuiltinData → r Source #

gmapQ ∷ (∀ d. Data d ⇒ d → u) → BuiltinData → [u] Source #

gmapQiInt → (∀ d. Data d ⇒ d → u) → BuiltinData → u Source #

gmapMMonad m ⇒ (∀ d. Data d ⇒ d → m d) → BuiltinData → m BuiltinData Source #

gmapMpMonadPlus m ⇒ (∀ d. Data d ⇒ d → m d) → BuiltinData → m BuiltinData Source #

gmapMoMonadPlus m ⇒ (∀ d. Data d ⇒ d → m d) → BuiltinData → m BuiltinData Source #

Generic BuiltinData 
Instance details

Defined in PlutusTx.Builtins.Internal

Associated Types

type Rep BuiltinDataTypeType Source #

Show BuiltinData 
Instance details

Defined in PlutusTx.Builtins.Internal

NFData BuiltinData 
Instance details

Defined in PlutusTx.Builtins.Internal

Methods

rnfBuiltinData → () Source #

Eq BuiltinData 
Instance details

Defined in PlutusTx.Builtins.Internal

Ord BuiltinData 
Instance details

Defined in PlutusTx.Builtins.Internal

HasBlueprintDefinition BuiltinData 
Instance details

Defined in PlutusTx.Blueprint.Definition.Unroll

Associated Types

type Unroll BuiltinData ∷ [Type] Source #

HasFromBuiltin BuiltinData 
Instance details

Defined in PlutusTx.Builtins.HasBuiltin

Associated Types

type FromBuiltin BuiltinData Source #

MkNil BuiltinData 
Instance details

Defined in PlutusTx.Builtins.HasOpaque

Eq BuiltinData 
Instance details

Defined in PlutusTx.Eq

FromData BuiltinData 
Instance details

Defined in PlutusTx.IsData.Class

ToData BuiltinData 
Instance details

Defined in PlutusTx.IsData.Class

UnsafeFromData BuiltinData 
Instance details

Defined in PlutusTx.IsData.Class

Pretty BuiltinData 
Instance details

Defined in PlutusTx.Builtins.Internal

Methods

prettyBuiltinDataDoc ann Source #

prettyList ∷ [BuiltinData] → Doc ann Source #

HasBlueprintSchema BuiltinData referencedTypes 
Instance details

Defined in PlutusTx.Blueprint.Class

Methods

schemaSchema referencedTypes Source #

HasFromOpaque BuiltinData BuiltinData 
Instance details

Defined in PlutusTx.Builtins.HasOpaque

HasToOpaque BuiltinData BuiltinData 
Instance details

Defined in PlutusTx.Builtins.HasOpaque

HasTermLevel uni DataLift uni BuiltinData 
Instance details

Defined in PlutusTx.Lift.Class

Methods

liftBuiltinDataRTCompile uni fun (Term TyName Name uni fun ()) Source #

HasTypeLevel uni DataTypeable uni BuiltinData 
Instance details

Defined in PlutusTx.Lift.Class

Methods

typeRepProxy BuiltinDataRTCompile uni fun (Type TyName uni ()) Source #

MkNil (BuiltinPair BuiltinData BuiltinData) 
Instance details

Defined in PlutusTx.Builtins.HasOpaque

HasToOpaque (BuiltinData, BuiltinData) (BuiltinPair BuiltinData BuiltinData) 
Instance details

Defined in PlutusTx.Builtins.HasOpaque

type Rep BuiltinData 
Instance details

Defined in PlutusTx.Builtins.Internal

type Rep BuiltinData = D1 ('MetaData "BuiltinData" "PlutusTx.Builtins.Internal" "plutus-tx-1.39.0.0-inplace" 'False) (C1 ('MetaCons "BuiltinData" 'PrefixI 'False) (S1 ('MetaSel ('NothingMaybe Symbol) 'NoSourceUnpackedness 'SourceLazy 'DecidedLazy) (Rec0 Data)))
type Unroll BuiltinData 
Instance details

Defined in PlutusTx.Blueprint.Definition.Unroll

type FromBuiltin BuiltinData 
Instance details

Defined in PlutusTx.Builtins.HasBuiltin

class ToData a where Source #

A typeclass for types that can be converted to and from BuiltinData.

Methods

toBuiltinData ∷ a → BuiltinData Source #

Convert a value to BuiltinData.

Instances

Instances details
ToData Void 
Instance details

Defined in PlutusTx.IsData.Class

ToData Address Source # 
Instance details

Defined in PlutusLedgerApi.V1.Address

ToData LedgerBytes Source # 
Instance details

Defined in PlutusLedgerApi.V1.Bytes

ToData ScriptContext Source # 
Instance details

Defined in PlutusLedgerApi.V1.Contexts

ToData ScriptPurpose Source # 
Instance details

Defined in PlutusLedgerApi.V1.Contexts

ToData TxInInfo Source # 
Instance details

Defined in PlutusLedgerApi.V1.Contexts

ToData TxInfo Source # 
Instance details

Defined in PlutusLedgerApi.V1.Contexts

ToData Credential Source # 
Instance details

Defined in PlutusLedgerApi.V1.Credential

ToData StakingCredential Source # 
Instance details

Defined in PlutusLedgerApi.V1.Credential

ToData PubKeyHash Source # 
Instance details

Defined in PlutusLedgerApi.V1.Crypto

ToData DCert Source # 
Instance details

Defined in PlutusLedgerApi.V1.DCert

ToData Address Source # 
Instance details

Defined in PlutusLedgerApi.V1.Data.Address

ToData ScriptContext Source # 
Instance details

Defined in PlutusLedgerApi.V1.Data.Contexts

ToData ScriptPurpose Source # 
Instance details

Defined in PlutusLedgerApi.V1.Data.Contexts

ToData TxInInfo Source # 
Instance details

Defined in PlutusLedgerApi.V1.Data.Contexts

ToData TxInfo Source # 
Instance details

Defined in PlutusLedgerApi.V1.Data.Contexts

ToData Credential Source # 
Instance details

Defined in PlutusLedgerApi.V1.Data.Credential

ToData StakingCredential Source # 
Instance details

Defined in PlutusLedgerApi.V1.Data.Credential

ToData DCert Source # 
Instance details

Defined in PlutusLedgerApi.V1.Data.DCert

ToData DiffMilliSeconds Source # 
Instance details

Defined in PlutusLedgerApi.V1.Data.Time

ToData POSIXTime Source # 
Instance details

Defined in PlutusLedgerApi.V1.Data.Time

ToData TxId Source # 
Instance details

Defined in PlutusLedgerApi.V1.Data.Tx

ToData TxOut Source # 
Instance details

Defined in PlutusLedgerApi.V1.Data.Tx

ToData TxOutRef Source # 
Instance details

Defined in PlutusLedgerApi.V1.Data.Tx

ToData AssetClass Source # 
Instance details

Defined in PlutusLedgerApi.V1.Data.Value

ToData CurrencySymbol Source # 
Instance details

Defined in PlutusLedgerApi.V1.Data.Value

ToData Lovelace Source # 
Instance details

Defined in PlutusLedgerApi.V1.Data.Value

ToData TokenName Source # 
Instance details

Defined in PlutusLedgerApi.V1.Data.Value

ToData Value Source # 
Instance details

Defined in PlutusLedgerApi.V1.Data.Value

ToData Datum Source # 
Instance details

Defined in PlutusLedgerApi.V1.Scripts

ToData DatumHash Source # 
Instance details

Defined in PlutusLedgerApi.V1.Scripts

ToData Redeemer Source # 
Instance details

Defined in PlutusLedgerApi.V1.Scripts

ToData RedeemerHash Source # 
Instance details

Defined in PlutusLedgerApi.V1.Scripts

ToData ScriptHash Source # 
Instance details

Defined in PlutusLedgerApi.V1.Scripts

ToData DiffMilliSeconds Source # 
Instance details

Defined in PlutusLedgerApi.V1.Time

ToData POSIXTime Source # 
Instance details

Defined in PlutusLedgerApi.V1.Time

ToData RedeemerPtr Source # 
Instance details

Defined in PlutusLedgerApi.V1.Tx

ToData ScriptTag Source # 
Instance details

Defined in PlutusLedgerApi.V1.Tx

ToData TxId Source # 
Instance details

Defined in PlutusLedgerApi.V1.Tx

ToData TxOut Source # 
Instance details

Defined in PlutusLedgerApi.V1.Tx

ToData TxOutRef Source # 
Instance details

Defined in PlutusLedgerApi.V1.Tx

ToData AssetClass Source # 
Instance details

Defined in PlutusLedgerApi.V1.Value

ToData CurrencySymbol Source # 
Instance details

Defined in PlutusLedgerApi.V1.Value

ToData Lovelace Source # 
Instance details

Defined in PlutusLedgerApi.V1.Value

ToData TokenName Source # 
Instance details

Defined in PlutusLedgerApi.V1.Value

ToData Value Source # 
Instance details

Defined in PlutusLedgerApi.V1.Value

ToData ScriptContext Source # 
Instance details

Defined in PlutusLedgerApi.V2.Contexts

ToData TxInInfo Source # 
Instance details

Defined in PlutusLedgerApi.V2.Contexts

ToData TxInfo Source # 
Instance details

Defined in PlutusLedgerApi.V2.Contexts

ToData ScriptContext Source # 
Instance details

Defined in PlutusLedgerApi.V2.Data.Contexts

ToData TxInInfo Source # 
Instance details

Defined in PlutusLedgerApi.V2.Data.Contexts

ToData TxInfo Source # 
Instance details

Defined in PlutusLedgerApi.V2.Data.Contexts

ToData OutputDatum Source # 
Instance details

Defined in PlutusLedgerApi.V2.Data.Tx

ToData TxOut Source # 
Instance details

Defined in PlutusLedgerApi.V2.Data.Tx

ToData OutputDatum Source # 
Instance details

Defined in PlutusLedgerApi.V2.Tx

ToData TxOut Source # 
Instance details

Defined in PlutusLedgerApi.V2.Tx

ToData ChangedParameters Source # 
Instance details

Defined in PlutusLedgerApi.V3.Contexts

ToData ColdCommitteeCredential Source # 
Instance details

Defined in PlutusLedgerApi.V3.Contexts

ToData Committee Source # 
Instance details

Defined in PlutusLedgerApi.V3.Contexts

ToData Constitution Source # 
Instance details

Defined in PlutusLedgerApi.V3.Contexts

ToData DRep Source # 
Instance details

Defined in PlutusLedgerApi.V3.Contexts

ToData DRepCredential Source # 
Instance details

Defined in PlutusLedgerApi.V3.Contexts

ToData Delegatee Source # 
Instance details

Defined in PlutusLedgerApi.V3.Contexts

ToData GovernanceAction Source # 
Instance details

Defined in PlutusLedgerApi.V3.Contexts

ToData GovernanceActionId Source # 
Instance details

Defined in PlutusLedgerApi.V3.Contexts

ToData HotCommitteeCredential Source # 
Instance details

Defined in PlutusLedgerApi.V3.Contexts

ToData ProposalProcedure Source # 
Instance details

Defined in PlutusLedgerApi.V3.Contexts

ToData ProtocolVersion Source # 
Instance details

Defined in PlutusLedgerApi.V3.Contexts

ToData ScriptContext Source # 
Instance details

Defined in PlutusLedgerApi.V3.Contexts

ToData ScriptInfo Source # 
Instance details

Defined in PlutusLedgerApi.V3.Contexts

ToData ScriptPurpose Source # 
Instance details

Defined in PlutusLedgerApi.V3.Contexts

ToData TxCert Source # 
Instance details

Defined in PlutusLedgerApi.V3.Contexts

ToData TxInInfo Source # 
Instance details

Defined in PlutusLedgerApi.V3.Contexts

ToData TxInfo Source # 
Instance details

Defined in PlutusLedgerApi.V3.Contexts

ToData Vote Source # 
Instance details

Defined in PlutusLedgerApi.V3.Contexts

ToData Voter Source # 
Instance details

Defined in PlutusLedgerApi.V3.Contexts

ToData ChangedParameters Source # 
Instance details

Defined in PlutusLedgerApi.V3.Data.Contexts

ToData ColdCommitteeCredential Source # 
Instance details

Defined in PlutusLedgerApi.V3.Data.Contexts

ToData Committee Source # 
Instance details

Defined in PlutusLedgerApi.V3.Data.Contexts

ToData Constitution Source # 
Instance details

Defined in PlutusLedgerApi.V3.Data.Contexts

ToData DRep Source # 
Instance details

Defined in PlutusLedgerApi.V3.Data.Contexts

ToData DRepCredential Source # 
Instance details

Defined in PlutusLedgerApi.V3.Data.Contexts

ToData Delegatee Source # 
Instance details

Defined in PlutusLedgerApi.V3.Data.Contexts

ToData GovernanceAction Source # 
Instance details

Defined in PlutusLedgerApi.V3.Data.Contexts

ToData GovernanceActionId Source # 
Instance details

Defined in PlutusLedgerApi.V3.Data.Contexts

ToData HotCommitteeCredential Source # 
Instance details

Defined in PlutusLedgerApi.V3.Data.Contexts

ToData ProposalProcedure Source # 
Instance details

Defined in PlutusLedgerApi.V3.Data.Contexts

ToData ProtocolVersion Source # 
Instance details

Defined in PlutusLedgerApi.V3.Data.Contexts

ToData ScriptContext Source # 
Instance details

Defined in PlutusLedgerApi.V3.Data.Contexts

ToData ScriptInfo Source # 
Instance details

Defined in PlutusLedgerApi.V3.Data.Contexts

ToData ScriptPurpose Source # 
Instance details

Defined in PlutusLedgerApi.V3.Data.Contexts

ToData TxCert Source # 
Instance details

Defined in PlutusLedgerApi.V3.Data.Contexts

ToData TxInInfo Source # 
Instance details

Defined in PlutusLedgerApi.V3.Data.Contexts

ToData TxInfo Source # 
Instance details

Defined in PlutusLedgerApi.V3.Data.Contexts

ToData Vote Source # 
Instance details

Defined in PlutusLedgerApi.V3.Data.Contexts

ToData Voter Source # 
Instance details

Defined in PlutusLedgerApi.V3.Data.Contexts

ToData TxId Source # 
Instance details

Defined in PlutusLedgerApi.V3.Data.Tx

ToData TxOutRef Source # 
Instance details

Defined in PlutusLedgerApi.V3.Data.Tx

ToData MintValue Source # 
Instance details

Defined in PlutusLedgerApi.V3.MintValue

ToData TxId Source # 
Instance details

Defined in PlutusLedgerApi.V3.Tx

ToData TxOutRef Source # 
Instance details

Defined in PlutusLedgerApi.V3.Tx

ToData BuiltinBLS12_381_G1_Element

For the BLS12-381 G1 and G2 types we use the compress functions to convert to a ByteString and then encode that as Data as usual. We have to be more careful going the other way because we decode a Data object to (possibly) get a BuiltinByteString and then uncompress the underlying ByteString to get a group element. However uncompression can fail so we have to check what happens: we don't use bls12_381_G?_uncompress because that invokes error if something goes wrong (but we do use it for unsafeFromData).

Instance details

Defined in PlutusTx.IsData.Class

ToData BuiltinBLS12_381_G2_Element 
Instance details

Defined in PlutusTx.IsData.Class

(TypeError ('Text "toBuiltinData is not supported for BuiltinBLS12_381_MlResult") ∷ Constraint) ⇒ ToData BuiltinBLS12_381_MlResult

We do not provide instances of any of these classes for BuiltinBLS12_381_MlResult since there is no serialisation format: we expect that values of that type will only occur as the result of on-chain computations.

Instance details

Defined in PlutusTx.IsData.Class

ToData BuiltinByteString 
Instance details

Defined in PlutusTx.IsData.Class

ToData BuiltinData 
Instance details

Defined in PlutusTx.IsData.Class

ToData Rational 
Instance details

Defined in PlutusTx.Ratio

ToData Integer 
Instance details

Defined in PlutusTx.IsData.Class

(TypeError ('Text "Int is not supported, use Integer instead") ∷ Constraint) ⇒ ToData Int 
Instance details

Defined in PlutusTx.IsData.Class

ToData (Extended a) Source # 
Instance details

Defined in PlutusLedgerApi.V1.Data.Interval

ToData (Interval a) Source # 
Instance details

Defined in PlutusLedgerApi.V1.Data.Interval

ToData (LowerBound a) Source # 
Instance details

Defined in PlutusLedgerApi.V1.Data.Interval

ToData (UpperBound a) Source # 
Instance details

Defined in PlutusLedgerApi.V1.Data.Interval

ToData a ⇒ ToData (Extended a) Source # 
Instance details

Defined in PlutusLedgerApi.V1.Interval

ToData a ⇒ ToData (Interval a) Source # 
Instance details

Defined in PlutusLedgerApi.V1.Interval

ToData a ⇒ ToData (LowerBound a) Source # 
Instance details

Defined in PlutusLedgerApi.V1.Interval

ToData a ⇒ ToData (UpperBound a) Source # 
Instance details

Defined in PlutusLedgerApi.V1.Interval

ToData (List a) 
Instance details

Defined in PlutusTx.Data.List

ToData a ⇒ ToData [a] 
Instance details

Defined in PlutusTx.IsData.Class

Methods

toBuiltinData ∷ [a] → BuiltinData Source #

(ToData k, ToData v) ⇒ ToData (Map k v)

Hand-written instances to use the underlying Map type in Data, and to be reasonably efficient.

Instance details

Defined in PlutusTx.AssocMap

Methods

toBuiltinDataMap k v → BuiltinData Source #

ToData (Map k a) 
Instance details

Defined in PlutusTx.Data.AssocMap

Methods

toBuiltinDataMap k a → BuiltinData Source #

class FromData a where Source #

Methods

fromBuiltinDataBuiltinDataMaybe a Source #

Convert a value from BuiltinData, returning Nothing if this fails.

Instances

Instances details
FromData Void 
Instance details

Defined in PlutusTx.IsData.Class

FromData Address Source # 
Instance details

Defined in PlutusLedgerApi.V1.Address

FromData LedgerBytes Source # 
Instance details

Defined in PlutusLedgerApi.V1.Bytes

FromData ScriptContext Source # 
Instance details

Defined in PlutusLedgerApi.V1.Contexts

FromData ScriptPurpose Source # 
Instance details

Defined in PlutusLedgerApi.V1.Contexts

FromData TxInInfo Source # 
Instance details

Defined in PlutusLedgerApi.V1.Contexts

FromData TxInfo Source # 
Instance details

Defined in PlutusLedgerApi.V1.Contexts

FromData Credential Source # 
Instance details

Defined in PlutusLedgerApi.V1.Credential

FromData StakingCredential Source # 
Instance details

Defined in PlutusLedgerApi.V1.Credential

FromData PubKeyHash Source # 
Instance details

Defined in PlutusLedgerApi.V1.Crypto

FromData DCert Source # 
Instance details

Defined in PlutusLedgerApi.V1.DCert

FromData Address Source # 
Instance details

Defined in PlutusLedgerApi.V1.Data.Address

FromData ScriptContext Source # 
Instance details

Defined in PlutusLedgerApi.V1.Data.Contexts

FromData ScriptPurpose Source # 
Instance details

Defined in PlutusLedgerApi.V1.Data.Contexts

FromData TxInInfo Source # 
Instance details

Defined in PlutusLedgerApi.V1.Data.Contexts

FromData TxInfo Source # 
Instance details

Defined in PlutusLedgerApi.V1.Data.Contexts

FromData Credential Source # 
Instance details

Defined in PlutusLedgerApi.V1.Data.Credential

FromData StakingCredential Source # 
Instance details

Defined in PlutusLedgerApi.V1.Data.Credential

FromData DCert Source # 
Instance details

Defined in PlutusLedgerApi.V1.Data.DCert

FromData DiffMilliSeconds Source # 
Instance details

Defined in PlutusLedgerApi.V1.Data.Time

FromData POSIXTime Source # 
Instance details

Defined in PlutusLedgerApi.V1.Data.Time

FromData TxId Source # 
Instance details

Defined in PlutusLedgerApi.V1.Data.Tx

FromData TxOut Source # 
Instance details

Defined in PlutusLedgerApi.V1.Data.Tx

FromData TxOutRef Source # 
Instance details

Defined in PlutusLedgerApi.V1.Data.Tx

FromData AssetClass Source # 
Instance details

Defined in PlutusLedgerApi.V1.Data.Value

FromData CurrencySymbol Source # 
Instance details

Defined in PlutusLedgerApi.V1.Data.Value

FromData Lovelace Source # 
Instance details

Defined in PlutusLedgerApi.V1.Data.Value

FromData TokenName Source # 
Instance details

Defined in PlutusLedgerApi.V1.Data.Value

FromData Value Source # 
Instance details

Defined in PlutusLedgerApi.V1.Data.Value

FromData Datum Source # 
Instance details

Defined in PlutusLedgerApi.V1.Scripts

FromData DatumHash Source # 
Instance details

Defined in PlutusLedgerApi.V1.Scripts

FromData Redeemer Source # 
Instance details

Defined in PlutusLedgerApi.V1.Scripts

FromData RedeemerHash Source # 
Instance details

Defined in PlutusLedgerApi.V1.Scripts

FromData ScriptHash Source # 
Instance details

Defined in PlutusLedgerApi.V1.Scripts

FromData DiffMilliSeconds Source # 
Instance details

Defined in PlutusLedgerApi.V1.Time

FromData POSIXTime Source # 
Instance details

Defined in PlutusLedgerApi.V1.Time

FromData RedeemerPtr Source # 
Instance details

Defined in PlutusLedgerApi.V1.Tx

FromData ScriptTag Source # 
Instance details

Defined in PlutusLedgerApi.V1.Tx

FromData TxId Source # 
Instance details

Defined in PlutusLedgerApi.V1.Tx

FromData TxOut Source # 
Instance details

Defined in PlutusLedgerApi.V1.Tx

FromData TxOutRef Source # 
Instance details

Defined in PlutusLedgerApi.V1.Tx

FromData AssetClass Source # 
Instance details

Defined in PlutusLedgerApi.V1.Value

FromData CurrencySymbol Source # 
Instance details

Defined in PlutusLedgerApi.V1.Value

FromData Lovelace Source # 
Instance details

Defined in PlutusLedgerApi.V1.Value

FromData TokenName Source # 
Instance details

Defined in PlutusLedgerApi.V1.Value

FromData Value Source # 
Instance details

Defined in PlutusLedgerApi.V1.Value

FromData ScriptContext Source # 
Instance details

Defined in PlutusLedgerApi.V2.Contexts

FromData TxInInfo Source # 
Instance details

Defined in PlutusLedgerApi.V2.Contexts

FromData TxInfo Source # 
Instance details

Defined in PlutusLedgerApi.V2.Contexts

FromData ScriptContext Source # 
Instance details

Defined in PlutusLedgerApi.V2.Data.Contexts

FromData TxInInfo Source # 
Instance details

Defined in PlutusLedgerApi.V2.Data.Contexts

FromData TxInfo Source # 
Instance details

Defined in PlutusLedgerApi.V2.Data.Contexts

FromData OutputDatum Source # 
Instance details

Defined in PlutusLedgerApi.V2.Data.Tx

FromData TxOut Source # 
Instance details

Defined in PlutusLedgerApi.V2.Data.Tx

FromData OutputDatum Source # 
Instance details

Defined in PlutusLedgerApi.V2.Tx

FromData TxOut Source # 
Instance details

Defined in PlutusLedgerApi.V2.Tx

FromData ChangedParameters Source # 
Instance details

Defined in PlutusLedgerApi.V3.Contexts

FromData ColdCommitteeCredential Source # 
Instance details

Defined in PlutusLedgerApi.V3.Contexts

FromData Committee Source # 
Instance details

Defined in PlutusLedgerApi.V3.Contexts

FromData Constitution Source # 
Instance details

Defined in PlutusLedgerApi.V3.Contexts

FromData DRep Source # 
Instance details

Defined in PlutusLedgerApi.V3.Contexts

FromData DRepCredential Source # 
Instance details

Defined in PlutusLedgerApi.V3.Contexts

FromData Delegatee Source # 
Instance details

Defined in PlutusLedgerApi.V3.Contexts

FromData GovernanceAction Source # 
Instance details

Defined in PlutusLedgerApi.V3.Contexts

FromData GovernanceActionId Source # 
Instance details

Defined in PlutusLedgerApi.V3.Contexts

FromData HotCommitteeCredential Source # 
Instance details

Defined in PlutusLedgerApi.V3.Contexts

FromData ProposalProcedure Source # 
Instance details

Defined in PlutusLedgerApi.V3.Contexts

FromData ProtocolVersion Source # 
Instance details

Defined in PlutusLedgerApi.V3.Contexts

FromData ScriptContext Source # 
Instance details

Defined in PlutusLedgerApi.V3.Contexts

FromData ScriptInfo Source # 
Instance details

Defined in PlutusLedgerApi.V3.Contexts

FromData ScriptPurpose Source # 
Instance details

Defined in PlutusLedgerApi.V3.Contexts

FromData TxCert Source # 
Instance details

Defined in PlutusLedgerApi.V3.Contexts

FromData TxInInfo Source # 
Instance details

Defined in PlutusLedgerApi.V3.Contexts

FromData TxInfo Source # 
Instance details

Defined in PlutusLedgerApi.V3.Contexts

FromData Vote Source # 
Instance details

Defined in PlutusLedgerApi.V3.Contexts

FromData Voter Source # 
Instance details

Defined in PlutusLedgerApi.V3.Contexts

FromData ChangedParameters Source # 
Instance details

Defined in PlutusLedgerApi.V3.Data.Contexts

FromData ColdCommitteeCredential Source # 
Instance details

Defined in PlutusLedgerApi.V3.Data.Contexts

FromData Committee Source # 
Instance details

Defined in PlutusLedgerApi.V3.Data.Contexts

FromData Constitution Source # 
Instance details

Defined in PlutusLedgerApi.V3.Data.Contexts

FromData DRep Source # 
Instance details

Defined in PlutusLedgerApi.V3.Data.Contexts

FromData DRepCredential Source # 
Instance details

Defined in PlutusLedgerApi.V3.Data.Contexts

FromData Delegatee Source # 
Instance details

Defined in PlutusLedgerApi.V3.Data.Contexts

FromData GovernanceAction Source # 
Instance details

Defined in PlutusLedgerApi.V3.Data.Contexts

FromData GovernanceActionId Source # 
Instance details

Defined in PlutusLedgerApi.V3.Data.Contexts

FromData HotCommitteeCredential Source # 
Instance details

Defined in PlutusLedgerApi.V3.Data.Contexts

FromData ProposalProcedure Source # 
Instance details

Defined in PlutusLedgerApi.V3.Data.Contexts

FromData ProtocolVersion Source # 
Instance details

Defined in PlutusLedgerApi.V3.Data.Contexts

FromData ScriptContext Source # 
Instance details

Defined in PlutusLedgerApi.V3.Data.Contexts

FromData ScriptInfo Source # 
Instance details

Defined in PlutusLedgerApi.V3.Data.Contexts

FromData ScriptPurpose Source # 
Instance details

Defined in PlutusLedgerApi.V3.Data.Contexts

FromData TxCert Source # 
Instance details

Defined in PlutusLedgerApi.V3.Data.Contexts

FromData TxInInfo Source # 
Instance details

Defined in PlutusLedgerApi.V3.Data.Contexts

FromData TxInfo Source # 
Instance details

Defined in PlutusLedgerApi.V3.Data.Contexts

FromData Vote Source # 
Instance details

Defined in PlutusLedgerApi.V3.Data.Contexts

FromData Voter Source # 
Instance details

Defined in PlutusLedgerApi.V3.Data.Contexts

FromData TxId Source # 
Instance details

Defined in PlutusLedgerApi.V3.Data.Tx

FromData TxOutRef Source # 
Instance details

Defined in PlutusLedgerApi.V3.Data.Tx

FromData MintValue Source # 
Instance details

Defined in PlutusLedgerApi.V3.MintValue

FromData TxId Source # 
Instance details

Defined in PlutusLedgerApi.V3.Tx

FromData TxOutRef Source # 
Instance details

Defined in PlutusLedgerApi.V3.Tx

FromData BuiltinBLS12_381_G1_Element 
Instance details

Defined in PlutusTx.IsData.Class

FromData BuiltinBLS12_381_G2_Element 
Instance details

Defined in PlutusTx.IsData.Class

(TypeError ('Text "fromBuiltinData is not supported for BuiltinBLS12_381_MlResult") ∷ Constraint) ⇒ FromData BuiltinBLS12_381_MlResult 
Instance details

Defined in PlutusTx.IsData.Class

FromData BuiltinByteString 
Instance details

Defined in PlutusTx.IsData.Class

FromData BuiltinData 
Instance details

Defined in PlutusTx.IsData.Class

FromData Rational 
Instance details

Defined in PlutusTx.Ratio

FromData Integer 
Instance details

Defined in PlutusTx.IsData.Class

(TypeError ('Text "Int is not supported, use Integer instead") ∷ Constraint) ⇒ FromData Int 
Instance details

Defined in PlutusTx.IsData.Class

FromData (Extended a) Source # 
Instance details

Defined in PlutusLedgerApi.V1.Data.Interval

FromData (Interval a) Source # 
Instance details

Defined in PlutusLedgerApi.V1.Data.Interval

FromData (LowerBound a) Source # 
Instance details

Defined in PlutusLedgerApi.V1.Data.Interval

FromData (UpperBound a) Source # 
Instance details

Defined in PlutusLedgerApi.V1.Data.Interval

FromData a ⇒ FromData (Extended a) Source # 
Instance details

Defined in PlutusLedgerApi.V1.Interval

FromData a ⇒ FromData (Interval a) Source # 
Instance details

Defined in PlutusLedgerApi.V1.Interval

FromData a ⇒ FromData (LowerBound a) Source # 
Instance details

Defined in PlutusLedgerApi.V1.Interval

FromData a ⇒ FromData (UpperBound a) Source # 
Instance details

Defined in PlutusLedgerApi.V1.Interval

FromData (List a) 
Instance details

Defined in PlutusTx.Data.List

FromData a ⇒ FromData [a] 
Instance details

Defined in PlutusTx.IsData.Class

(FromData k, FromData v) ⇒ FromData (Map k v)

A hand-written transformation from Data to Map. Compared to unsafeFromBuiltinData, it is safe to call when it is unknown if the Data is built with Datas Map constructor. Note that it is, however, unsafe in the sense that it assumes that any map encoded in the Data is well-formed, i.e. fromBuiltinData does not perform any deduplication of keys or of key-value pairs!

Instance details

Defined in PlutusTx.AssocMap

FromData (Map k a) 
Instance details

Defined in PlutusTx.Data.AssocMap

class UnsafeFromData a where Source #

Methods

unsafeFromBuiltinDataBuiltinData → a Source #

Convert a value from BuiltinData, calling error if this fails. This is typically much faster than fromBuiltinData.

When implementing this function, make sure to call unsafeFromBuiltinData rather than fromBuiltinData when converting substructures!

This is a simple type without any validation, use with caution.

Instances

Instances details
UnsafeFromData Void 
Instance details

Defined in PlutusTx.IsData.Class

UnsafeFromData Address Source # 
Instance details

Defined in PlutusLedgerApi.V1.Address

UnsafeFromData LedgerBytes Source # 
Instance details

Defined in PlutusLedgerApi.V1.Bytes

UnsafeFromData ScriptContext Source # 
Instance details

Defined in PlutusLedgerApi.V1.Contexts

UnsafeFromData ScriptPurpose Source # 
Instance details

Defined in PlutusLedgerApi.V1.Contexts

UnsafeFromData TxInInfo Source # 
Instance details

Defined in PlutusLedgerApi.V1.Contexts

UnsafeFromData TxInfo Source # 
Instance details

Defined in PlutusLedgerApi.V1.Contexts

UnsafeFromData Credential Source # 
Instance details

Defined in PlutusLedgerApi.V1.Credential

UnsafeFromData StakingCredential Source # 
Instance details

Defined in PlutusLedgerApi.V1.Credential

UnsafeFromData PubKeyHash Source # 
Instance details

Defined in PlutusLedgerApi.V1.Crypto

UnsafeFromData DCert Source # 
Instance details

Defined in PlutusLedgerApi.V1.DCert

UnsafeFromData Address Source # 
Instance details

Defined in PlutusLedgerApi.V1.Data.Address

UnsafeFromData ScriptContext Source # 
Instance details

Defined in PlutusLedgerApi.V1.Data.Contexts

UnsafeFromData ScriptPurpose Source # 
Instance details

Defined in PlutusLedgerApi.V1.Data.Contexts

UnsafeFromData TxInInfo Source # 
Instance details

Defined in PlutusLedgerApi.V1.Data.Contexts

UnsafeFromData TxInfo Source # 
Instance details

Defined in PlutusLedgerApi.V1.Data.Contexts

UnsafeFromData Credential Source # 
Instance details

Defined in PlutusLedgerApi.V1.Data.Credential

UnsafeFromData StakingCredential Source # 
Instance details

Defined in PlutusLedgerApi.V1.Data.Credential

UnsafeFromData DCert Source # 
Instance details

Defined in PlutusLedgerApi.V1.Data.DCert

UnsafeFromData DiffMilliSeconds Source # 
Instance details

Defined in PlutusLedgerApi.V1.Data.Time

UnsafeFromData POSIXTime Source # 
Instance details

Defined in PlutusLedgerApi.V1.Data.Time

UnsafeFromData TxId Source # 
Instance details

Defined in PlutusLedgerApi.V1.Data.Tx

UnsafeFromData TxOut Source # 
Instance details

Defined in PlutusLedgerApi.V1.Data.Tx

UnsafeFromData TxOutRef Source # 
Instance details

Defined in PlutusLedgerApi.V1.Data.Tx

UnsafeFromData AssetClass Source # 
Instance details

Defined in PlutusLedgerApi.V1.Data.Value

UnsafeFromData CurrencySymbol Source # 
Instance details

Defined in PlutusLedgerApi.V1.Data.Value

UnsafeFromData Lovelace Source # 
Instance details

Defined in PlutusLedgerApi.V1.Data.Value

UnsafeFromData TokenName Source # 
Instance details

Defined in PlutusLedgerApi.V1.Data.Value

UnsafeFromData Value Source # 
Instance details

Defined in PlutusLedgerApi.V1.Data.Value

UnsafeFromData Datum Source # 
Instance details

Defined in PlutusLedgerApi.V1.Scripts

UnsafeFromData DatumHash Source # 
Instance details

Defined in PlutusLedgerApi.V1.Scripts

UnsafeFromData Redeemer Source # 
Instance details

Defined in PlutusLedgerApi.V1.Scripts

UnsafeFromData RedeemerHash Source # 
Instance details

Defined in PlutusLedgerApi.V1.Scripts

UnsafeFromData ScriptHash Source # 
Instance details

Defined in PlutusLedgerApi.V1.Scripts

UnsafeFromData DiffMilliSeconds Source # 
Instance details

Defined in PlutusLedgerApi.V1.Time

UnsafeFromData POSIXTime Source # 
Instance details

Defined in PlutusLedgerApi.V1.Time

UnsafeFromData RedeemerPtr Source # 
Instance details

Defined in PlutusLedgerApi.V1.Tx

UnsafeFromData ScriptTag Source # 
Instance details

Defined in PlutusLedgerApi.V1.Tx

UnsafeFromData TxId Source # 
Instance details

Defined in PlutusLedgerApi.V1.Tx

UnsafeFromData TxOut Source # 
Instance details

Defined in PlutusLedgerApi.V1.Tx

UnsafeFromData TxOutRef Source # 
Instance details

Defined in PlutusLedgerApi.V1.Tx

UnsafeFromData AssetClass Source # 
Instance details

Defined in PlutusLedgerApi.V1.Value

UnsafeFromData CurrencySymbol Source # 
Instance details

Defined in PlutusLedgerApi.V1.Value

UnsafeFromData Lovelace Source # 
Instance details

Defined in PlutusLedgerApi.V1.Value

UnsafeFromData TokenName Source # 
Instance details

Defined in PlutusLedgerApi.V1.Value

UnsafeFromData Value Source # 
Instance details

Defined in PlutusLedgerApi.V1.Value

UnsafeFromData ScriptContext Source # 
Instance details

Defined in PlutusLedgerApi.V2.Contexts

UnsafeFromData TxInInfo Source # 
Instance details

Defined in PlutusLedgerApi.V2.Contexts

UnsafeFromData TxInfo Source # 
Instance details

Defined in PlutusLedgerApi.V2.Contexts

UnsafeFromData ScriptContext Source # 
Instance details

Defined in PlutusLedgerApi.V2.Data.Contexts

UnsafeFromData TxInInfo Source # 
Instance details

Defined in PlutusLedgerApi.V2.Data.Contexts

UnsafeFromData TxInfo Source # 
Instance details

Defined in PlutusLedgerApi.V2.Data.Contexts

UnsafeFromData OutputDatum Source # 
Instance details

Defined in PlutusLedgerApi.V2.Data.Tx

UnsafeFromData TxOut Source # 
Instance details

Defined in PlutusLedgerApi.V2.Data.Tx

UnsafeFromData OutputDatum Source # 
Instance details

Defined in PlutusLedgerApi.V2.Tx

UnsafeFromData TxOut Source # 
Instance details

Defined in PlutusLedgerApi.V2.Tx

UnsafeFromData ChangedParameters Source # 
Instance details

Defined in PlutusLedgerApi.V3.Contexts

UnsafeFromData ColdCommitteeCredential Source # 
Instance details

Defined in PlutusLedgerApi.V3.Contexts

UnsafeFromData Committee Source # 
Instance details

Defined in PlutusLedgerApi.V3.Contexts

UnsafeFromData Constitution Source # 
Instance details

Defined in PlutusLedgerApi.V3.Contexts

UnsafeFromData DRep Source # 
Instance details

Defined in PlutusLedgerApi.V3.Contexts

UnsafeFromData DRepCredential Source # 
Instance details

Defined in PlutusLedgerApi.V3.Contexts

UnsafeFromData Delegatee Source # 
Instance details

Defined in PlutusLedgerApi.V3.Contexts

UnsafeFromData GovernanceAction Source # 
Instance details

Defined in PlutusLedgerApi.V3.Contexts

UnsafeFromData GovernanceActionId Source # 
Instance details

Defined in PlutusLedgerApi.V3.Contexts

UnsafeFromData HotCommitteeCredential Source # 
Instance details

Defined in PlutusLedgerApi.V3.Contexts

UnsafeFromData ProposalProcedure Source # 
Instance details

Defined in PlutusLedgerApi.V3.Contexts

UnsafeFromData ProtocolVersion Source # 
Instance details

Defined in PlutusLedgerApi.V3.Contexts

UnsafeFromData ScriptContext Source # 
Instance details

Defined in PlutusLedgerApi.V3.Contexts

UnsafeFromData ScriptInfo Source # 
Instance details

Defined in PlutusLedgerApi.V3.Contexts

UnsafeFromData ScriptPurpose Source # 
Instance details

Defined in PlutusLedgerApi.V3.Contexts

UnsafeFromData TxCert Source # 
Instance details

Defined in PlutusLedgerApi.V3.Contexts

UnsafeFromData TxInInfo Source # 
Instance details

Defined in PlutusLedgerApi.V3.Contexts

UnsafeFromData TxInfo Source # 
Instance details

Defined in PlutusLedgerApi.V3.Contexts

UnsafeFromData Vote Source # 
Instance details

Defined in PlutusLedgerApi.V3.Contexts

UnsafeFromData Voter Source # 
Instance details

Defined in PlutusLedgerApi.V3.Contexts

UnsafeFromData ChangedParameters Source # 
Instance details

Defined in PlutusLedgerApi.V3.Data.Contexts

UnsafeFromData ColdCommitteeCredential Source # 
Instance details

Defined in PlutusLedgerApi.V3.Data.Contexts

UnsafeFromData Committee Source # 
Instance details

Defined in PlutusLedgerApi.V3.Data.Contexts

UnsafeFromData Constitution Source # 
Instance details

Defined in PlutusLedgerApi.V3.Data.Contexts

UnsafeFromData DRep Source # 
Instance details

Defined in PlutusLedgerApi.V3.Data.Contexts

UnsafeFromData DRepCredential Source # 
Instance details

Defined in PlutusLedgerApi.V3.Data.Contexts

UnsafeFromData Delegatee Source # 
Instance details

Defined in PlutusLedgerApi.V3.Data.Contexts

UnsafeFromData GovernanceAction Source # 
Instance details

Defined in PlutusLedgerApi.V3.Data.Contexts

UnsafeFromData GovernanceActionId Source # 
Instance details

Defined in PlutusLedgerApi.V3.Data.Contexts

UnsafeFromData HotCommitteeCredential Source # 
Instance details

Defined in PlutusLedgerApi.V3.Data.Contexts

UnsafeFromData ProposalProcedure Source # 
Instance details

Defined in PlutusLedgerApi.V3.Data.Contexts

UnsafeFromData ProtocolVersion Source # 
Instance details

Defined in PlutusLedgerApi.V3.Data.Contexts

UnsafeFromData ScriptContext Source # 
Instance details

Defined in PlutusLedgerApi.V3.Data.Contexts

UnsafeFromData ScriptInfo Source # 
Instance details

Defined in PlutusLedgerApi.V3.Data.Contexts

UnsafeFromData ScriptPurpose Source # 
Instance details

Defined in PlutusLedgerApi.V3.Data.Contexts

UnsafeFromData TxCert Source # 
Instance details

Defined in PlutusLedgerApi.V3.Data.Contexts

UnsafeFromData TxInInfo Source # 
Instance details

Defined in PlutusLedgerApi.V3.Data.Contexts

UnsafeFromData TxInfo Source # 
Instance details

Defined in PlutusLedgerApi.V3.Data.Contexts

UnsafeFromData Vote Source # 
Instance details

Defined in PlutusLedgerApi.V3.Data.Contexts

UnsafeFromData Voter Source # 
Instance details

Defined in PlutusLedgerApi.V3.Data.Contexts

UnsafeFromData TxId Source # 
Instance details

Defined in PlutusLedgerApi.V3.Data.Tx

UnsafeFromData TxOutRef Source # 
Instance details

Defined in PlutusLedgerApi.V3.Data.Tx

UnsafeFromData MintValue Source # 
Instance details

Defined in PlutusLedgerApi.V3.MintValue

UnsafeFromData TxId Source # 
Instance details

Defined in PlutusLedgerApi.V3.Tx

UnsafeFromData TxOutRef Source # 
Instance details

Defined in PlutusLedgerApi.V3.Tx

UnsafeFromData BuiltinBLS12_381_G1_Element 
Instance details

Defined in PlutusTx.IsData.Class

UnsafeFromData BuiltinBLS12_381_G2_Element 
Instance details

Defined in PlutusTx.IsData.Class

(TypeError ('Text "unsafeFromBuiltinData is not supported for BuiltinBLS12_381_MlResult") ∷ Constraint) ⇒ UnsafeFromData BuiltinBLS12_381_MlResult 
Instance details

Defined in PlutusTx.IsData.Class

UnsafeFromData BuiltinByteString 
Instance details

Defined in PlutusTx.IsData.Class

UnsafeFromData BuiltinData 
Instance details

Defined in PlutusTx.IsData.Class

UnsafeFromData Rational 
Instance details

Defined in PlutusTx.Ratio

UnsafeFromData Integer 
Instance details

Defined in PlutusTx.IsData.Class

(TypeError ('Text "Int is not supported, use Integer instead") ∷ Constraint) ⇒ UnsafeFromData Int 
Instance details

Defined in PlutusTx.IsData.Class

UnsafeFromData (Extended a) Source # 
Instance details

Defined in PlutusLedgerApi.V1.Data.Interval

UnsafeFromData (Interval a) Source # 
Instance details

Defined in PlutusLedgerApi.V1.Data.Interval

UnsafeFromData (LowerBound a) Source # 
Instance details

Defined in PlutusLedgerApi.V1.Data.Interval

UnsafeFromData (UpperBound a) Source # 
Instance details

Defined in PlutusLedgerApi.V1.Data.Interval

UnsafeFromData a ⇒ UnsafeFromData (Extended a) Source # 
Instance details

Defined in PlutusLedgerApi.V1.Interval

UnsafeFromData a ⇒ UnsafeFromData (Interval a) Source # 
Instance details

Defined in PlutusLedgerApi.V1.Interval

UnsafeFromData a ⇒ UnsafeFromData (LowerBound a) Source # 
Instance details

Defined in PlutusLedgerApi.V1.Interval

UnsafeFromData a ⇒ UnsafeFromData (UpperBound a) Source # 
Instance details

Defined in PlutusLedgerApi.V1.Interval

UnsafeFromData (List a) 
Instance details

Defined in PlutusTx.Data.List

UnsafeFromData a ⇒ UnsafeFromData [a] 
Instance details

Defined in PlutusTx.IsData.Class

(UnsafeFromData k, UnsafeFromData v) ⇒ UnsafeFromData (Map k v)

A hand-written transformation from Data to Map. It is unsafe because the caller must provide the guarantee that the Data is constructed using the Datas Map constructor. Note that it assumes, like the fromBuiltinData transformation, that the map encoded in the Data is well-formed, i.e. unsafeFromBuiltinData does not perform any deduplication of keys or of key-value pairs!

Instance details

Defined in PlutusTx.AssocMap

UnsafeFromData (Map k a) 
Instance details

Defined in PlutusTx.Data.AssocMap

toDataToData a ⇒ a → Data Source #

Convert a value to Data.

fromDataFromData a ⇒ DataMaybe a Source #

Convert a value from Data, returning Nothing if this fails.

unsafeFromDataUnsafeFromData a ⇒ Data → a Source #

Convert a value from Data, throwing if this fails.

dataToBuiltinDataDataBuiltinData Source #

Convert a Data into a BuiltinData. Only works off-chain.

builtinDataToDataBuiltinDataData Source #

Convert a BuiltinData into a Data. Only works off-chain.

Errors

class Monad m ⇒ MonadError e (m ∷ TypeType) | m → e Source #

The strategy of combining computations that can throw exceptions by bypassing bound functions from the point an exception is thrown to the point that it is handled.

Is parameterized over the type of error information and the monad type constructor. It is common to use Either String as the monad type constructor for an error monad in which error descriptions take the form of strings. In that case and many other common cases the resulting monad is already defined as an instance of the MonadError class. You can also define your own error type and/or use a monad type constructor other than Either String or Either IOError. In these cases you will have to explicitly define instances of the MonadError class. (If you are using the deprecated Control.Monad.Error or Control.Monad.Trans.Error, you may also have to define an Error instance.)

Minimal complete definition

throwError, catchError

Instances

Instances details
MonadError IOException IO 
Instance details

Defined in Control.Monad.Error.Class

Methods

throwErrorIOExceptionIO a Source #

catchErrorIO a → (IOExceptionIO a) → IO a Source #

MonadError BuiltinError BuiltinResult

throwError puts every operational unlifting error into the BuiltinFailure logs. This is to compensate for the historical lack of error message content in operational errors (structural ones don't have this problem) in our evaluators (the CK and CEK machines). It would be better to fix the underlying issue and allow operational evaluation errors to carry some form of content, but for now we just fix the symptom in order for the end user to see the error message that they are supposed to see. The fix even makes some sense: what we do here is we emulate logging when the thrown unlifting error is an operational one, i.e. this is similar to what some builtins do manually (like when a crypto builtin fails and puts info about the failure into the logs).

Instance details

Defined in PlutusCore.Builtin.Result

MonadError () EvaluationResult 
Instance details

Defined in PlutusCore.Evaluation.Result

MonadError () Maybe

Since: mtl-2.2.2

Instance details

Defined in Control.Monad.Error.Class

Methods

throwError ∷ () → Maybe a Source #

catchErrorMaybe a → (() → Maybe a) → Maybe a Source #

MonadError e (Either e) 
Instance details

Defined in Control.Monad.Error.Class

Methods

throwError ∷ e → Either e a Source #

catchErrorEither e a → (e → Either e a) → Either e a Source #

MonadError e m ⇒ MonadError e (Free m) 
Instance details

Defined in Control.Monad.Free

Methods

throwError ∷ e → Free m a Source #

catchErrorFree m a → (e → Free m a) → Free m a Source #

MonadError e m ⇒ MonadError e (GenT m) 
Instance details

Defined in Hedgehog.Internal.Gen

Methods

throwError ∷ e → GenT m a Source #

catchErrorGenT m a → (e → GenT m a) → GenT m a Source #

MonadError e m ⇒ MonadError e (PropertyT m) 
Instance details

Defined in Hedgehog.Internal.Property

Methods

throwError ∷ e → PropertyT m a Source #

catchErrorPropertyT m a → (e → PropertyT m a) → PropertyT m a Source #

MonadError e m ⇒ MonadError e (TestT m) 
Instance details

Defined in Hedgehog.Internal.Property

Methods

throwError ∷ e → TestT m a Source #

catchErrorTestT m a → (e → TestT m a) → TestT m a Source #

MonadError e m ⇒ MonadError e (TreeT m) 
Instance details

Defined in Hedgehog.Internal.Tree

Methods

throwError ∷ e → TreeT m a Source #

catchErrorTreeT m a → (e → TreeT m a) → TreeT m a Source #

MonadError e m ⇒ MonadError e (ListT m) 
Instance details

Defined in ListT

Methods

throwError ∷ e → ListT m a Source #

catchError ∷ ListT m a → (e → ListT m a) → ListT m a Source #

MonadError e m ⇒ MonadError e (QuoteT m) 
Instance details

Defined in PlutusCore.Quote

Methods

throwError ∷ e → QuoteT m a Source #

catchErrorQuoteT m a → (e → QuoteT m a) → QuoteT m a Source #

MonadError e m ⇒ MonadError e (ResourceT m) 
Instance details

Defined in Control.Monad.Trans.Resource.Internal

Methods

throwError ∷ e → ResourceT m a Source #

catchError ∷ ResourceT m a → (e → ResourceT m a) → ResourceT m a Source #

MonadError e m ⇒ MonadError e (MaybeT m) 
Instance details

Defined in Control.Monad.Error.Class

Methods

throwError ∷ e → MaybeT m a Source #

catchErrorMaybeT m a → (e → MaybeT m a) → MaybeT m a Source #

(Functor f, MonadError e m) ⇒ MonadError e (FreeT f m) 
Instance details

Defined in Control.Monad.Trans.Free

Methods

throwError ∷ e → FreeT f m a Source #

catchErrorFreeT f m a → (e → FreeT f m a) → FreeT f m a Source #

(Monoid w, MonadError e m) ⇒ MonadError e (AccumT w m)

Since: mtl-2.3

Instance details

Defined in Control.Monad.Error.Class

Methods

throwError ∷ e → AccumT w m a Source #

catchErrorAccumT w m a → (e → AccumT w m a) → AccumT w m a Source #

Monad m ⇒ MonadError e (ExceptT e m)

Since: mtl-2.2

Instance details

Defined in Control.Monad.Error.Class

Methods

throwError ∷ e → ExceptT e m a Source #

catchErrorExceptT e m a → (e → ExceptT e m a) → ExceptT e m a Source #

MonadError e m ⇒ MonadError e (IdentityT m) 
Instance details

Defined in Control.Monad.Error.Class

Methods

throwError ∷ e → IdentityT m a Source #

catchErrorIdentityT m a → (e → IdentityT m a) → IdentityT m a Source #

MonadError e m ⇒ MonadError e (ReaderT r m) 
Instance details

Defined in Control.Monad.Error.Class

Methods

throwError ∷ e → ReaderT r m a Source #

catchErrorReaderT r m a → (e → ReaderT r m a) → ReaderT r m a Source #

MonadError e m ⇒ MonadError e (StateT s m) 
Instance details

Defined in Control.Monad.Error.Class

Methods

throwError ∷ e → StateT s m a Source #

catchErrorStateT s m a → (e → StateT s m a) → StateT s m a Source #

MonadError e m ⇒ MonadError e (StateT s m) 
Instance details

Defined in Control.Monad.Error.Class

Methods

throwError ∷ e → StateT s m a Source #

catchErrorStateT s m a → (e → StateT s m a) → StateT s m a Source #

(Monoid w, MonadError e m) ⇒ MonadError e (WriterT w m)

Since: mtl-2.3

Instance details

Defined in Control.Monad.Error.Class

Methods

throwError ∷ e → WriterT w m a Source #

catchErrorWriterT w m a → (e → WriterT w m a) → WriterT w m a Source #

(Monoid w, MonadError e m) ⇒ MonadError e (WriterT w m) 
Instance details

Defined in Control.Monad.Error.Class

Methods

throwError ∷ e → WriterT w m a Source #

catchErrorWriterT w m a → (e → WriterT w m a) → WriterT w m a Source #

(Monoid w, MonadError e m) ⇒ MonadError e (WriterT w m) 
Instance details

Defined in Control.Monad.Error.Class

Methods

throwError ∷ e → WriterT w m a Source #

catchErrorWriterT w m a → (e → WriterT w m a) → WriterT w m a Source #

(Monoid w, MonadError e m) ⇒ MonadError e (RWST r w s m)

Since: mtl-2.3

Instance details

Defined in Control.Monad.Error.Class

Methods

throwError ∷ e → RWST r w s m a Source #

catchErrorRWST r w s m a → (e → RWST r w s m a) → RWST r w s m a Source #

(Monoid w, MonadError e m) ⇒ MonadError e (RWST r w s m) 
Instance details

Defined in Control.Monad.Error.Class

Methods

throwError ∷ e → RWST r w s m a Source #

catchErrorRWST r w s m a → (e → RWST r w s m a) → RWST r w s m a Source #

(Monoid w, MonadError e m) ⇒ MonadError e (RWST r w s m) 
Instance details

Defined in Control.Monad.Error.Class

Methods

throwError ∷ e → RWST r w s m a Source #

catchErrorRWST r w s m a → (e → RWST r w s m a) → RWST r w s m a Source #

MonadError e m ⇒ MonadError e (DefT key uni fun ann m) 
Instance details

Defined in PlutusIR.Compiler.Definitions

Methods

throwError ∷ e → DefT key uni fun ann m a Source #

catchErrorDefT key uni fun ann m a → (e → DefT key uni fun ann m a) → DefT key uni fun ann m a Source #

ThrowableBuiltins uni fun ⇒ MonadError (CekEvaluationException NamedDeBruijn uni fun) (CekM uni fun s) 
Instance details

Defined in UntypedPlutusCore.Evaluation.Machine.Cek.Internal

Methods

throwErrorCekEvaluationException NamedDeBruijn uni fun → CekM uni fun s a Source #

catchErrorCekM uni fun s a → (CekEvaluationException NamedDeBruijn uni fun → CekM uni fun s a) → CekM uni fun s a Source #