plutarch-1.3.0
Safe HaskellSafe-Inferred
LanguageGHC2021

Plutarch.Prelude

Synopsis

eDSL types and functions.

data ((a :: PType) :--> (b :: PType)) (s :: S) infixr 0 Source #

Instances

Instances details
PlutusType (a :--> b) Source # 
Instance details

Defined in Plutarch.Internal.PlutusType

Associated Types

type PInner (a :--> b) :: PType Source #

type PCovariant' (a :--> b) Source #

type PContravariant' (a :--> b) Source #

type PVariant' (a :--> b) Source #

Methods

pcon' :: forall (s :: S). (a :--> b) s -> Term s (PInner (a :--> b)) Source #

pmatch' :: forall (s :: S) (b0 :: PType). Term s (PInner (a :--> b)) -> ((a :--> b) s -> Term s b0) -> Term s b0 Source #

type PContravariant' (a :--> b) Source # 
Instance details

Defined in Plutarch.Internal.PlutusType

type PCovariant' (a :--> b) Source # 
Instance details

Defined in Plutarch.Internal.PlutusType

type PInner (a :--> b) Source # 
Instance details

Defined in Plutarch.Internal.PlutusType

type PInner (a :--> b) = a :--> b
type PVariant' (a :--> b) Source # 
Instance details

Defined in Plutarch.Internal.PlutusType

type PVariant' (a :--> b) = (PVariant' a, PVariant' b)

data PDelayed (a :: PType) (s :: S) Source #

data Term (s :: S) (a :: PType) Source #

Instances

Instances details
(IndexLabel name as ~ a, ElemOf name a as, Term s (PAsData b) ~ a, PFromDataable b c) => HasField (name :: Symbol) (HRec as) (Term s c) Source # 
Instance details

Defined in Plutarch.DataRepr.Internal.HList

Methods

getField :: HRec as -> Term s c Source #

IsString (Term s PString) Source # 
Instance details

Defined in Plutarch.String

(POrd k, PIsData k, PIsData v, Semigroup (Term s v)) => Monoid (Term s (PMap 'Sorted k v)) Source # 
Instance details

Defined in Plutarch.Api.V1.AssocMap

Methods

mempty :: Term s (PMap 'Sorted k v) Source #

mappend :: Term s (PMap 'Sorted k v) -> Term s (PMap 'Sorted k v) -> Term s (PMap 'Sorted k v) Source #

mconcat :: [Term s (PMap 'Sorted k v)] -> Term s (PMap 'Sorted k v) Source #

Semigroup (Term s (PValue 'Sorted normalization)) => Monoid (Term s (PValue 'Sorted normalization)) Source # 
Instance details

Defined in Plutarch.Api.V1.Value

Methods

mempty :: Term s (PValue 'Sorted normalization) Source #

mappend :: Term s (PValue 'Sorted normalization) -> Term s (PValue 'Sorted normalization) -> Term s (PValue 'Sorted normalization) Source #

mconcat :: [Term s (PValue 'Sorted normalization)] -> Term s (PValue 'Sorted normalization) Source #

Monoid (Term s PByteString) Source # 
Instance details

Defined in Plutarch.ByteString

Monoid (Term s PString) Source # 
Instance details

Defined in Plutarch.String

Monoid (Term s (PUnit :: S -> Type)) Source # 
Instance details

Defined in Plutarch.Unit

(POrd k, PIsData k, PIsData v, Semigroup (Term s v)) => Semigroup (Term s (PMap 'Sorted k v)) Source # 
Instance details

Defined in Plutarch.Api.V1.AssocMap

Methods

(<>) :: Term s (PMap 'Sorted k v) -> Term s (PMap 'Sorted k v) -> Term s (PMap 'Sorted k v) Source #

sconcat :: NonEmpty (Term s (PMap 'Sorted k v)) -> Term s (PMap 'Sorted k v) Source #

stimes :: Integral b => b -> Term s (PMap 'Sorted k v) -> Term s (PMap 'Sorted k v) Source #

Semigroup (Term s (PValue 'Sorted 'NoGuarantees)) Source # 
Instance details

Defined in Plutarch.Api.V1.Value

Semigroup (Term s (PValue 'Sorted 'NonZero)) Source # 
Instance details

Defined in Plutarch.Api.V1.Value

Semigroup (Term s (PValue 'Sorted 'Positive)) Source # 
Instance details

Defined in Plutarch.Api.V1.Value

Semigroup (Term s PByteString) Source # 
Instance details

Defined in Plutarch.ByteString

Semigroup (Term s PString) Source # 
Instance details

Defined in Plutarch.String

Semigroup (Term s (PUnit :: S -> Type)) Source # 
Instance details

Defined in Plutarch.Unit

(PIsData k, PIsData v, POrd k) => IsList (Term s (PMap 'Sorted k v)) Source # 
Instance details

Defined in Plutarch.Api.V1.AssocMap

Associated Types

type Item (Term s (PMap 'Sorted k v)) Source #

Methods

fromList :: [Item (Term s (PMap 'Sorted k v))] -> Term s (PMap 'Sorted k v) Source #

fromListN :: Int -> [Item (Term s (PMap 'Sorted k v))] -> Term s (PMap 'Sorted k v) Source #

toList :: Term s (PMap 'Sorted k v) -> [Item (Term s (PMap 'Sorted k v))] Source #

(PIsData k, PIsData v, POrd k) => IsList (Term s (PMap 'Unsorted k v)) Source # 
Instance details

Defined in Plutarch.Api.V1.AssocMap

Associated Types

type Item (Term s (PMap 'Unsorted k v)) Source #

Methods

fromList :: [Item (Term s (PMap 'Unsorted k v))] -> Term s (PMap 'Unsorted k v) Source #

fromListN :: Int -> [Item (Term s (PMap 'Unsorted k v))] -> Term s (PMap 'Unsorted k v) Source #

toList :: Term s (PMap 'Unsorted k v) -> [Item (Term s (PMap 'Unsorted k v))] Source #

PNum a => Num (Term s a) Source # 
Instance details

Defined in Plutarch.Num

Methods

(+) :: Term s a -> Term s a -> Term s a Source #

(-) :: Term s a -> Term s a -> Term s a Source #

(*) :: Term s a -> Term s a -> Term s a Source #

negate :: Term s a -> Term s a Source #

abs :: Term s a -> Term s a Source #

signum :: Term s a -> Term s a Source #

fromInteger :: Integer -> Term s a Source #

(PNum a, PFractional a) => Fractional (Term s a) Source # 
Instance details

Defined in Plutarch.Rational

Methods

(/) :: Term s a -> Term s a -> Term s a Source #

recip :: Term s a -> Term s a Source #

fromRational :: Rational -> Term s a Source #

(POrd k, PIsData k, PIsData v, Group (Term s v)) => Group (Term s (PMap 'Sorted k v)) Source # 
Instance details

Defined in Plutarch.Api.V1.AssocMap

Methods

inv :: Term s (PMap 'Sorted k v) -> Term s (PMap 'Sorted k v) Source #

Semigroup (Term s (PValue 'Sorted 'NoGuarantees)) => Group (Term s (PValue 'Sorted 'NoGuarantees)) Source # 
Instance details

Defined in Plutarch.Api.V1.Value

Semigroup (Term s (PValue 'Sorted 'NonZero)) => Group (Term s (PValue 'Sorted 'NonZero)) Source # 
Instance details

Defined in Plutarch.Api.V1.Value

(POrd k, PIsData k, PIsData v, Semigroup (Term s v)) => Monoid (Term s (PMap 'Sorted k v)) Source # 
Instance details

Defined in Plutarch.Api.V1.AssocMap

Methods

mempty :: Term s (PMap 'Sorted k v) Source #

Semigroup (Term s (PValue 'Sorted normalization)) => Monoid (Term s (PValue 'Sorted normalization)) Source # 
Instance details

Defined in Plutarch.Api.V1.Value

Methods

mempty :: Term s (PValue 'Sorted normalization) Source #

(POrd k, PIsData k, PIsData v, Semigroup (Term s v)) => Semigroup (Term s (PMap 'Sorted k v)) Source # 
Instance details

Defined in Plutarch.Api.V1.AssocMap

Methods

(<>) :: Term s (PMap 'Sorted k v) -> Term s (PMap 'Sorted k v) -> Term s (PMap 'Sorted k v) Source #

Semigroup (Term s (PValue 'Sorted 'NoGuarantees)) Source # 
Instance details

Defined in Plutarch.Api.V1.Value

Semigroup (Term s (PValue 'Sorted 'NonZero)) Source # 
Instance details

Defined in Plutarch.Api.V1.Value

Semigroup (Term s (PValue 'Sorted 'Positive)) Source # 
Instance details

Defined in Plutarch.Api.V1.Value

type Item (Term s (PMap 'Sorted k v)) Source # 
Instance details

Defined in Plutarch.Api.V1.AssocMap

type Item (Term s (PMap 'Sorted k v)) = (Term s k, Term s v)
type Item (Term s (PMap 'Unsorted k v)) Source # 
Instance details

Defined in Plutarch.Api.V1.AssocMap

type Item (Term s (PMap 'Unsorted k v)) = (Term s k, Term s v)

type ClosedTerm (a :: PType) = forall (s :: S). Term s a Source #

  • Closed* terms with no free variables.

plam :: forall c. (PLamN a b s, HasCallStack) => (Term s c -> a) -> Term s (c :--> b) Source #

papp :: HasCallStack => Term s (a :--> b) -> Term s a -> Term s b Source #

Lambda Application.

pdelay :: Term s a -> Term s (PDelayed a) Source #

Plutus 'delay', used for laziness.

pforce :: Term s (PDelayed a) -> Term s a Source #

Plutus 'force', used to force evaluation of PDelayed terms.

perror :: Term s a Source #

Plutus 'error'.

When using this explicitly, it should be ensured that the containing term is delayed, avoiding premature evaluation.

(#$) :: HasCallStack => Term s (a :--> b) -> Term s a -> Term s b infixr 0 Source #

Low precedence infixr synonym of papp, to be used like $, in combination with #. e.g.:

>>> f # x #$ g # y # z
f x (g y z)

(#) :: HasCallStack => Term s (a :--> b) -> Term s a -> Term s b infixl 8 Source #

High precedence infixl synonym of papp, to be used like function juxtaposition. e.g.:

>>> f # x # y
f x y

plet :: Term s a -> (Term s a -> Term s b) -> Term s b Source #

Let bindings.

This is appoximately a shorthand for a lambda and application:

plet v f == papp (plam f) v

But sufficiently small terms in WHNF may be inlined for efficiency.

pinl :: Term s a -> (Term s a -> Term s b) -> Term s b Source #

pto :: Term s a -> Term s (PInner a) Source #

Safely coerce from a Term to it's PInner representation.

pfix :: Term s (((a :--> b) :--> (a :--> b)) :--> (a :--> b)) Source #

Fixpoint recursion. Used to encode recursive functions.

Example:

iterateN' ::
 Term s (PInteger :--> (a :--> a) :--> a :--> a) ->
 Term s PInteger ->
 Term s (a :--> a) ->
 Term s a
iterateN' self n f x =
  pif (n #== 0) x (self # n - 1 #$ f x)

iterateN :: Term s (PInteger :--> (a :--> a) :--> a :--> a)
iterateN = pfix #$ plam iterateN'

Further examples can be found in examples/Recursion.hs

type Type = TYPE LiftedRep Source #

The kind of types with lifted values. For example Int :: Type.

data S Source #

Instances

Instances details
PEq (PUnit :: S -> Type) Source # 
Instance details

Defined in Plutarch.Unit

Methods

(#==) :: forall (s :: S). Term s PUnit -> Term s PUnit -> Term s PBool Source #

POrd (PUnit :: S -> Type) Source # 
Instance details

Defined in Plutarch.Unit

PPartialOrd (PUnit :: S -> Type) Source # 
Instance details

Defined in Plutarch.Unit

Methods

(#<=) :: forall (s :: S). Term s PUnit -> Term s PUnit -> Term s PBool Source #

(#<) :: forall (s :: S). Term s PUnit -> Term s PUnit -> Term s PBool Source #

PIsData (PUnit :: S -> Type) Source # 
Instance details

Defined in Plutarch.Builtin

Methods

pfromDataImpl :: forall (s :: S). Term s (PAsData PUnit) -> Term s PUnit Source #

pdataImpl :: forall (s :: S). Term s PUnit -> Term s PData Source #

PlutusType (PUnit :: S -> Type) Source # 
Instance details

Defined in Plutarch.Unit

Methods

pcon' :: forall (s :: S). PUnit s -> Term s (PInner PUnit) Source #

pmatch' :: forall (s :: S) (b :: PType). Term s (PInner PUnit) -> (PUnit s -> Term s b) -> Term s b Source #

PUnsafeLiftDecl (PUnit :: S -> Type) Source # 
Instance details

Defined in Plutarch.Unit

Associated Types

type PLifted PUnit = (r :: Type) Source #

PShow (PUnit :: S -> Type) Source # 
Instance details

Defined in Plutarch.Unit

Methods

pshow' :: forall (s :: S). Bool -> Term s PUnit -> Term s PString Source #

Monoid (Term s (PUnit :: S -> Type)) Source # 
Instance details

Defined in Plutarch.Unit

Semigroup (Term s (PUnit :: S -> Type)) Source # 
Instance details

Defined in Plutarch.Unit

type PContravariant' (PUnit :: S -> Type) Source # 
Instance details

Defined in Plutarch.Unit

type PCovariant' (PUnit :: S -> Type) Source # 
Instance details

Defined in Plutarch.Unit

type PCovariant' (PUnit :: S -> Type)
type PInner (PUnit :: S -> Type) Source # 
Instance details

Defined in Plutarch.Unit

type PInner (PUnit :: S -> Type) = PUnit :: S -> Type
type PVariant' (PUnit :: S -> Type) Source # 
Instance details

Defined in Plutarch.Unit

type PVariant' (PUnit :: S -> Type)
type PLifted (PUnit :: S -> Type) Source # 
Instance details

Defined in Plutarch.Unit

type PLifted (PUnit :: S -> Type) = ()

type PType = S -> Type Source #

Shorthand for Plutarch types.

class PlutusType (a :: PType) Source #

Associated Types

type PInner a :: PType Source #

Instances

Instances details
PlutusType PAddress Source # 
Instance details

Defined in Plutarch.Api.V1.Address

Methods

pcon' :: forall (s :: S). PAddress s -> Term s (PInner PAddress) Source #

pmatch' :: forall (s :: S) (b :: PType). Term s (PInner PAddress) -> (PAddress s -> Term s b) -> Term s b Source #

PlutusType PCredential Source # 
Instance details

Defined in Plutarch.Api.V1.Address

Methods

pcon' :: forall (s :: S). PCredential s -> Term s (PInner PCredential) Source #

pmatch' :: forall (s :: S) (b :: PType). Term s (PInner PCredential) -> (PCredential s -> Term s b) -> Term s b Source #

PlutusType PStakingCredential Source # 
Instance details

Defined in Plutarch.Api.V1.Address

Methods

pcon' :: forall (s :: S). PStakingCredential s -> Term s (PInner PStakingCredential) Source #

pmatch' :: forall (s :: S) (b :: PType). Term s (PInner PStakingCredential) -> (PStakingCredential s -> Term s b) -> Term s b Source #

PlutusType PScriptContext Source # 
Instance details

Defined in Plutarch.Api.V1.Contexts

Methods

pcon' :: forall (s :: S). PScriptContext s -> Term s (PInner PScriptContext) Source #

pmatch' :: forall (s :: S) (b :: PType). Term s (PInner PScriptContext) -> (PScriptContext s -> Term s b) -> Term s b Source #

PlutusType PScriptPurpose Source # 
Instance details

Defined in Plutarch.Api.V1.Contexts

Methods

pcon' :: forall (s :: S). PScriptPurpose s -> Term s (PInner PScriptPurpose) Source #

pmatch' :: forall (s :: S) (b :: PType). Term s (PInner PScriptPurpose) -> (PScriptPurpose s -> Term s b) -> Term s b Source #

PlutusType PTxInfo Source # 
Instance details

Defined in Plutarch.Api.V1.Contexts

Methods

pcon' :: forall (s :: S). PTxInfo s -> Term s (PInner PTxInfo) Source #

pmatch' :: forall (s :: S) (b :: PType). Term s (PInner PTxInfo) -> (PTxInfo s -> Term s b) -> Term s b Source #

PlutusType PPubKeyHash Source # 
Instance details

Defined in Plutarch.Api.V1.Crypto

Methods

pcon' :: forall (s :: S). PPubKeyHash s -> Term s (PInner PPubKeyHash) Source #

pmatch' :: forall (s :: S) (b :: PType). Term s (PInner PPubKeyHash) -> (PPubKeyHash s -> Term s b) -> Term s b Source #

PlutusType PDCert Source # 
Instance details

Defined in Plutarch.Api.V1.DCert

Methods

pcon' :: forall (s :: S). PDCert s -> Term s (PInner PDCert) Source #

pmatch' :: forall (s :: S) (b :: PType). Term s (PInner PDCert) -> (PDCert s -> Term s b) -> Term s b Source #

PlutusType PDatum Source # 
Instance details

Defined in Plutarch.Api.V1.Scripts

Methods

pcon' :: forall (s :: S). PDatum s -> Term s (PInner PDatum) Source #

pmatch' :: forall (s :: S) (b :: PType). Term s (PInner PDatum) -> (PDatum s -> Term s b) -> Term s b Source #

PlutusType PDatumHash Source # 
Instance details

Defined in Plutarch.Api.V1.Scripts

Methods

pcon' :: forall (s :: S). PDatumHash s -> Term s (PInner PDatumHash) Source #

pmatch' :: forall (s :: S) (b :: PType). Term s (PInner PDatumHash) -> (PDatumHash s -> Term s b) -> Term s b Source #

PlutusType PRedeemer Source # 
Instance details

Defined in Plutarch.Api.V1.Scripts

Methods

pcon' :: forall (s :: S). PRedeemer s -> Term s (PInner PRedeemer) Source #

pmatch' :: forall (s :: S) (b :: PType). Term s (PInner PRedeemer) -> (PRedeemer s -> Term s b) -> Term s b Source #

PlutusType PRedeemerHash Source # 
Instance details

Defined in Plutarch.Api.V1.Scripts

Methods

pcon' :: forall (s :: S). PRedeemerHash s -> Term s (PInner PRedeemerHash) Source #

pmatch' :: forall (s :: S) (b :: PType). Term s (PInner PRedeemerHash) -> (PRedeemerHash s -> Term s b) -> Term s b Source #

PlutusType PScriptHash Source # 
Instance details

Defined in Plutarch.Api.V1.Scripts

Methods

pcon' :: forall (s :: S). PScriptHash s -> Term s (PInner PScriptHash) Source #

pmatch' :: forall (s :: S) (b :: PType). Term s (PInner PScriptHash) -> (PScriptHash s -> Term s b) -> Term s b Source #

PlutusType PPOSIXTime Source # 
Instance details

Defined in Plutarch.Api.V1.Time

Methods

pcon' :: forall (s :: S). PPOSIXTime s -> Term s (PInner PPOSIXTime) Source #

pmatch' :: forall (s :: S) (b :: PType). Term s (PInner PPOSIXTime) -> (PPOSIXTime s -> Term s b) -> Term s b Source #

PlutusType PTxId Source # 
Instance details

Defined in Plutarch.Api.V1.Tx

Methods

pcon' :: forall (s :: S). PTxId s -> Term s (PInner PTxId) Source #

pmatch' :: forall (s :: S) (b :: PType). Term s (PInner PTxId) -> (PTxId s -> Term s b) -> Term s b Source #

PlutusType PTxInInfo Source # 
Instance details

Defined in Plutarch.Api.V1.Tx

Methods

pcon' :: forall (s :: S). PTxInInfo s -> Term s (PInner PTxInInfo) Source #

pmatch' :: forall (s :: S) (b :: PType). Term s (PInner PTxInInfo) -> (PTxInInfo s -> Term s b) -> Term s b Source #

PlutusType PTxOut Source # 
Instance details

Defined in Plutarch.Api.V1.Tx

Methods

pcon' :: forall (s :: S). PTxOut s -> Term s (PInner PTxOut) Source #

pmatch' :: forall (s :: S) (b :: PType). Term s (PInner PTxOut) -> (PTxOut s -> Term s b) -> Term s b Source #

PlutusType PTxOutRef Source # 
Instance details

Defined in Plutarch.Api.V1.Tx

Methods

pcon' :: forall (s :: S). PTxOutRef s -> Term s (PInner PTxOutRef) Source #

pmatch' :: forall (s :: S) (b :: PType). Term s (PInner PTxOutRef) -> (PTxOutRef s -> Term s b) -> Term s b Source #

PlutusType PCurrencySymbol Source # 
Instance details

Defined in Plutarch.Api.V1.Value

Methods

pcon' :: forall (s :: S). PCurrencySymbol s -> Term s (PInner PCurrencySymbol) Source #

pmatch' :: forall (s :: S) (b :: PType). Term s (PInner PCurrencySymbol) -> (PCurrencySymbol s -> Term s b) -> Term s b Source #

PlutusType PTokenName Source # 
Instance details

Defined in Plutarch.Api.V1.Value

Methods

pcon' :: forall (s :: S). PTokenName s -> Term s (PInner PTokenName) Source #

pmatch' :: forall (s :: S) (b :: PType). Term s (PInner PTokenName) -> (PTokenName s -> Term s b) -> Term s b Source #

PlutusType PScriptContext Source # 
Instance details

Defined in Plutarch.Api.V2.Contexts

Methods

pcon' :: forall (s :: S). PScriptContext s -> Term s (PInner PScriptContext) Source #

pmatch' :: forall (s :: S) (b :: PType). Term s (PInner PScriptContext) -> (PScriptContext s -> Term s b) -> Term s b Source #

PlutusType PTxInfo Source # 
Instance details

Defined in Plutarch.Api.V2.Contexts

Methods

pcon' :: forall (s :: S). PTxInfo s -> Term s (PInner PTxInfo) Source #

pmatch' :: forall (s :: S) (b :: PType). Term s (PInner PTxInfo) -> (PTxInfo s -> Term s b) -> Term s b Source #

PlutusType POutputDatum Source # 
Instance details

Defined in Plutarch.Api.V2.Tx

Methods

pcon' :: forall (s :: S). POutputDatum s -> Term s (PInner POutputDatum) Source #

pmatch' :: forall (s :: S) (b :: PType). Term s (PInner POutputDatum) -> (POutputDatum s -> Term s b) -> Term s b Source #

PlutusType PTxInInfo Source # 
Instance details

Defined in Plutarch.Api.V2.Tx

Methods

pcon' :: forall (s :: S). PTxInInfo s -> Term s (PInner PTxInInfo) Source #

pmatch' :: forall (s :: S) (b :: PType). Term s (PInner PTxInInfo) -> (PTxInInfo s -> Term s b) -> Term s b Source #

PlutusType PTxOut Source # 
Instance details

Defined in Plutarch.Api.V2.Tx

Methods

pcon' :: forall (s :: S). PTxOut s -> Term s (PInner PTxOut) Source #

pmatch' :: forall (s :: S) (b :: PType). Term s (PInner PTxOut) -> (PTxOut s -> Term s b) -> Term s b Source #

PlutusType PBool Source # 
Instance details

Defined in Plutarch.Bool

Methods

pcon' :: forall (s :: S). PBool s -> Term s (PInner PBool) Source #

pmatch' :: forall (s :: S) (b :: PType). Term s (PInner PBool) -> (PBool s -> Term s b) -> Term s b Source #

PlutusType PData Source # 
Instance details

Defined in Plutarch.Builtin

Methods

pcon' :: forall (s :: S). PData s -> Term s (PInner PData) Source #

pmatch' :: forall (s :: S) (b :: PType). Term s (PInner PData) -> (PData s -> Term s b) -> Term s b Source #

PlutusType PByteString Source # 
Instance details

Defined in Plutarch.ByteString

Methods

pcon' :: forall (s :: S). PByteString s -> Term s (PInner PByteString) Source #

pmatch' :: forall (s :: S) (b :: PType). Term s (PInner PByteString) -> (PByteString s -> Term s b) -> Term s b Source #

PlutusType PInteger Source # 
Instance details

Defined in Plutarch.Integer

Methods

pcon' :: forall (s :: S). PInteger s -> Term s (PInner PInteger) Source #

pmatch' :: forall (s :: S) (b :: PType). Term s (PInner PInteger) -> (PInteger s -> Term s b) -> Term s b Source #

PlutusType POpaque Source # 
Instance details

Defined in Plutarch.Internal.Other

Methods

pcon' :: forall (s :: S). POpaque s -> Term s (PInner POpaque) Source #

pmatch' :: forall (s :: S) (b :: PType). Term s (PInner POpaque) -> (POpaque s -> Term s b) -> Term s b Source #

PlutusType PPositive Source # 
Instance details

Defined in Plutarch.Positive

Methods

pcon' :: forall (s :: S). PPositive s -> Term s (PInner PPositive) Source #

pmatch' :: forall (s :: S) (b :: PType). Term s (PInner PPositive) -> (PPositive s -> Term s b) -> Term s b Source #

PlutusType PRational Source # 
Instance details

Defined in Plutarch.Rational

Methods

pcon' :: forall (s :: S). PRational s -> Term s (PInner PRational) Source #

pmatch' :: forall (s :: S) (b :: PType). Term s (PInner PRational) -> (PRational s -> Term s b) -> Term s b Source #

PlutusType PString Source # 
Instance details

Defined in Plutarch.String

Methods

pcon' :: forall (s :: S). PString s -> Term s (PInner PString) Source #

pmatch' :: forall (s :: S) (b :: PType). Term s (PInner PString) -> (PString s -> Term s b) -> Term s b Source #

PlutusType (PExtended a) Source # 
Instance details

Defined in Plutarch.Api.V1.Interval

Methods

pcon' :: forall (s :: S). PExtended a s -> Term s (PInner (PExtended a)) Source #

pmatch' :: forall (s :: S) (b :: PType). Term s (PInner (PExtended a)) -> (PExtended a s -> Term s b) -> Term s b Source #

PlutusType (PInterval a) Source # 
Instance details

Defined in Plutarch.Api.V1.Interval

Methods

pcon' :: forall (s :: S). PInterval a s -> Term s (PInner (PInterval a)) Source #

pmatch' :: forall (s :: S) (b :: PType). Term s (PInner (PInterval a)) -> (PInterval a s -> Term s b) -> Term s b Source #

PlutusType (PLowerBound a) Source # 
Instance details

Defined in Plutarch.Api.V1.Interval

Methods

pcon' :: forall (s :: S). PLowerBound a s -> Term s (PInner (PLowerBound a)) Source #

pmatch' :: forall (s :: S) (b :: PType). Term s (PInner (PLowerBound a)) -> (PLowerBound a s -> Term s b) -> Term s b Source #

PlutusType (PUpperBound a) Source # 
Instance details

Defined in Plutarch.Api.V1.Interval

Methods

pcon' :: forall (s :: S). PUpperBound a s -> Term s (PInner (PUpperBound a)) Source #

pmatch' :: forall (s :: S) (b :: PType). Term s (PInner (PUpperBound a)) -> (PUpperBound a s -> Term s b) -> Term s b Source #

PlutusType (PMaybeData a) Source # 
Instance details

Defined in Plutarch.Api.V1.Maybe

Methods

pcon' :: forall (s :: S). PMaybeData a s -> Term s (PInner (PMaybeData a)) Source #

pmatch' :: forall (s :: S) (b :: PType). Term s (PInner (PMaybeData a)) -> (PMaybeData a s -> Term s b) -> Term s b Source #

PIsData a => PlutusType (PAsData a) Source # 
Instance details

Defined in Plutarch.Builtin

Associated Types

type PInner (PAsData a) :: PType Source #

type PCovariant' (PAsData a) Source #

type PContravariant' (PAsData a) Source #

type PVariant' (PAsData a) Source #

Methods

pcon' :: forall (s :: S). PAsData a s -> Term s (PInner (PAsData a)) Source #

pmatch' :: forall (s :: S) (b :: PType). Term s (PInner (PAsData a)) -> (PAsData a s -> Term s b) -> Term s b Source #

PLift a => PlutusType (PBuiltinList a) Source # 
Instance details

Defined in Plutarch.Builtin

Methods

pcon' :: forall (s :: S). PBuiltinList a s -> Term s (PInner (PBuiltinList a)) Source #

pmatch' :: forall (s :: S) (b :: PType). Term s (PInner (PBuiltinList a)) -> (PBuiltinList a s -> Term s b) -> Term s b Source #

SListI l => PlutusType (PDataRecord l) Source # 
Instance details

Defined in Plutarch.DataRepr.Internal

Methods

pcon' :: forall (s :: S). PDataRecord l s -> Term s (PInner (PDataRecord l)) Source #

pmatch' :: forall (s :: S) (b :: PType). Term s (PInner (PDataRecord l)) -> (PDataRecord l s -> Term s b) -> Term s b Source #

SListI defs => PlutusType (PDataSum defs) Source # 
Instance details

Defined in Plutarch.DataRepr.Internal

Associated Types

type PInner (PDataSum defs) :: PType Source #

type PCovariant' (PDataSum defs) Source #

type PContravariant' (PDataSum defs) Source #

type PVariant' (PDataSum defs) Source #

Methods

pcon' :: forall (s :: S). PDataSum defs s -> Term s (PInner (PDataSum defs)) Source #

pmatch' :: forall (s :: S) (b :: PType). Term s (PInner (PDataSum defs)) -> (PDataSum defs s -> Term s b) -> Term s b Source #

PlutusType (PTxList a) Source # 
Instance details

Defined in Plutarch.FFI

Associated Types

type PInner (PTxList a) :: PType Source #

type PCovariant' (PTxList a) Source #

type PContravariant' (PTxList a) Source #

type PVariant' (PTxList a) Source #

Methods

pcon' :: forall (s :: S). PTxList a s -> Term s (PInner (PTxList a)) Source #

pmatch' :: forall (s :: S) (b :: PType). Term s (PInner (PTxList a)) -> (PTxList a s -> Term s b) -> Term s b Source #

PlutusType (PTxMaybe a) Source # 
Instance details

Defined in Plutarch.FFI

Methods

pcon' :: forall (s :: S). PTxMaybe a s -> Term s (PInner (PTxMaybe a)) Source #

pmatch' :: forall (s :: S) (b :: PType). Term s (PInner (PTxMaybe a)) -> (PTxMaybe a s -> Term s b) -> Term s b Source #

PlutusType (PFix f) Source # 
Instance details

Defined in Plutarch.Internal.PlutusType

Associated Types

type PInner (PFix f) :: PType Source #

type PCovariant' (PFix f) Source #

type PContravariant' (PFix f) Source #

type PVariant' (PFix f) Source #

Methods

pcon' :: forall (s :: S). PFix f s -> Term s (PInner (PFix f)) Source #

pmatch' :: forall (s :: S) (b :: PType). Term s (PInner (PFix f)) -> (PFix f s -> Term s b) -> Term s b Source #

PlutusType (PList a) Source # 
Instance details

Defined in Plutarch.List

Associated Types

type PInner (PList a) :: PType Source #

type PCovariant' (PList a) Source #

type PContravariant' (PList a) Source #

type PVariant' (PList a) Source #

Methods

pcon' :: forall (s :: S). PList a s -> Term s (PInner (PList a)) Source #

pmatch' :: forall (s :: S) (b :: PType). Term s (PInner (PList a)) -> (PList a s -> Term s b) -> Term s b Source #

PlutusType (PMaybe a) Source # 
Instance details

Defined in Plutarch.Maybe

Associated Types

type PInner (PMaybe a) :: PType Source #

type PCovariant' (PMaybe a) Source #

type PContravariant' (PMaybe a) Source #

type PVariant' (PMaybe a) Source #

Methods

pcon' :: forall (s :: S). PMaybe a s -> Term s (PInner (PMaybe a)) Source #

pmatch' :: forall (s :: S) (b :: PType). Term s (PInner (PMaybe a)) -> (PMaybe a s -> Term s b) -> Term s b Source #

PlutusType (PUnit :: S -> Type) Source # 
Instance details

Defined in Plutarch.Unit

Methods

pcon' :: forall (s :: S). PUnit s -> Term s (PInner PUnit) Source #

pmatch' :: forall (s :: S) (b :: PType). Term s (PInner PUnit) -> (PUnit s -> Term s b) -> Term s b Source #

PlutusType (PValue keys amounts) Source # 
Instance details

Defined in Plutarch.Api.V1.Value

Associated Types

type PInner (PValue keys amounts) :: PType Source #

type PCovariant' (PValue keys amounts) Source #

type PContravariant' (PValue keys amounts) Source #

type PVariant' (PValue keys amounts) Source #

Methods

pcon' :: forall (s :: S). PValue keys amounts s -> Term s (PInner (PValue keys amounts)) Source #

pmatch' :: forall (s :: S) (b :: PType). Term s (PInner (PValue keys amounts)) -> (PValue keys amounts s -> Term s b) -> Term s b Source #

PlutusType (PBuiltinPair a b) Source # 
Instance details

Defined in Plutarch.Builtin

Methods

pcon' :: forall (s :: S). PBuiltinPair a b s -> Term s (PInner (PBuiltinPair a b)) Source #

pmatch' :: forall (s :: S) (b0 :: PType). Term s (PInner (PBuiltinPair a b)) -> (PBuiltinPair a b s -> Term s b0) -> Term s b0 Source #

PlutusType (PEither a b) Source # 
Instance details

Defined in Plutarch.Either

Associated Types

type PInner (PEither a b) :: PType Source #

type PCovariant' (PEither a b) Source #

type PContravariant' (PEither a b) Source #

type PVariant' (PEither a b) Source #

Methods

pcon' :: forall (s :: S). PEither a b s -> Term s (PInner (PEither a b)) Source #

pmatch' :: forall (s :: S) (b0 :: PType). Term s (PInner (PEither a b)) -> (PEither a b s -> Term s b0) -> Term s b0 Source #

PlutusType (a :--> b) Source # 
Instance details

Defined in Plutarch.Internal.PlutusType

Associated Types

type PInner (a :--> b) :: PType Source #

type PCovariant' (a :--> b) Source #

type PContravariant' (a :--> b) Source #

type PVariant' (a :--> b) Source #

Methods

pcon' :: forall (s :: S). (a :--> b) s -> Term s (PInner (a :--> b)) Source #

pmatch' :: forall (s :: S) (b0 :: PType). Term s (PInner (a :--> b)) -> ((a :--> b) s -> Term s b0) -> Term s b0 Source #

PlutusType (PForall f) Source # 
Instance details

Defined in Plutarch.Internal.PlutusType

Associated Types

type PInner (PForall f) :: PType Source #

type PCovariant' (PForall f) Source #

type PContravariant' (PForall f) Source #

type PVariant' (PForall f) Source #

Methods

pcon' :: forall (s :: S). PForall f s -> Term s (PInner (PForall f)) Source #

pmatch' :: forall (s :: S) (b :: PType). Term s (PInner (PForall f)) -> (PForall f s -> Term s b) -> Term s b Source #

PlutusType (PSome f) Source # 
Instance details

Defined in Plutarch.Internal.PlutusType

Associated Types

type PInner (PSome f) :: PType Source #

type PCovariant' (PSome f) Source #

type PContravariant' (PSome f) Source #

type PVariant' (PSome f) Source #

Methods

pcon' :: forall (s :: S). PSome f s -> Term s (PInner (PSome f)) Source #

pmatch' :: forall (s :: S) (b :: PType). Term s (PInner (PSome f)) -> (PSome f s -> Term s b) -> Term s b Source #

PlutusType (PScottEncoded a r) Source # 
Instance details

Defined in Plutarch.Internal.ScottEncoding

Methods

pcon' :: forall (s :: S). PScottEncoded a r s -> Term s (PInner (PScottEncoded a r)) Source #

pmatch' :: forall (s :: S) (b :: PType). Term s (PInner (PScottEncoded a r)) -> (PScottEncoded a r s -> Term s b) -> Term s b Source #

PlutusType (PPair a b) Source # 
Instance details

Defined in Plutarch.Pair

Associated Types

type PInner (PPair a b) :: PType Source #

type PCovariant' (PPair a b) Source #

type PContravariant' (PPair a b) Source #

type PVariant' (PPair a b) Source #

Methods

pcon' :: forall (s :: S). PPair a b s -> Term s (PInner (PPair a b)) Source #

pmatch' :: forall (s :: S) (b0 :: PType). Term s (PInner (PPair a b)) -> (PPair a b s -> Term s b0) -> Term s b0 Source #

PlutusType (PMap keysort k v) Source # 
Instance details

Defined in Plutarch.Api.V1.AssocMap

Associated Types

type PInner (PMap keysort k v) :: PType Source #

type PCovariant' (PMap keysort k v) Source #

type PContravariant' (PMap keysort k v) Source #

type PVariant' (PMap keysort k v) Source #

Methods

pcon' :: forall (s :: S). PMap keysort k v s -> Term s (PInner (PMap keysort k v)) Source #

pmatch' :: forall (s :: S) (b :: PType). Term s (PInner (PMap keysort k v)) -> (PMap keysort k v s -> Term s b) -> Term s b Source #

class (PInner a ~ DerivedPInner (DPTStrat a) a, PlutusTypeStrat (DPTStrat a), PlutusTypeStratConstraint (DPTStrat a) a, PlutusType a) => DerivePlutusType (a :: PType) Source #

Instances

Instances details
DerivePlutusType PAddress Source # 
Instance details

Defined in Plutarch.Api.V1.Address

Associated Types

type DPTStrat PAddress Source #

DerivePlutusType PCredential Source # 
Instance details

Defined in Plutarch.Api.V1.Address

Associated Types

type DPTStrat PCredential Source #

DerivePlutusType PStakingCredential Source # 
Instance details

Defined in Plutarch.Api.V1.Address

Associated Types

type DPTStrat PStakingCredential Source #

DerivePlutusType PScriptContext Source # 
Instance details

Defined in Plutarch.Api.V1.Contexts

Associated Types

type DPTStrat PScriptContext Source #

DerivePlutusType PScriptPurpose Source # 
Instance details

Defined in Plutarch.Api.V1.Contexts

Associated Types

type DPTStrat PScriptPurpose Source #

DerivePlutusType PTxInfo Source # 
Instance details

Defined in Plutarch.Api.V1.Contexts

Associated Types

type DPTStrat PTxInfo Source #

DerivePlutusType PPubKeyHash Source # 
Instance details

Defined in Plutarch.Api.V1.Crypto

Associated Types

type DPTStrat PPubKeyHash Source #

DerivePlutusType PDCert Source # 
Instance details

Defined in Plutarch.Api.V1.DCert

Associated Types

type DPTStrat PDCert Source #

DerivePlutusType PDatum Source # 
Instance details

Defined in Plutarch.Api.V1.Scripts

Associated Types

type DPTStrat PDatum Source #

DerivePlutusType PDatumHash Source # 
Instance details

Defined in Plutarch.Api.V1.Scripts

Associated Types

type DPTStrat PDatumHash Source #

DerivePlutusType PRedeemer Source # 
Instance details

Defined in Plutarch.Api.V1.Scripts

Associated Types

type DPTStrat PRedeemer Source #

DerivePlutusType PRedeemerHash Source # 
Instance details

Defined in Plutarch.Api.V1.Scripts

Associated Types

type DPTStrat PRedeemerHash Source #

DerivePlutusType PScriptHash Source # 
Instance details

Defined in Plutarch.Api.V1.Scripts

Associated Types

type DPTStrat PScriptHash Source #

DerivePlutusType PPOSIXTime Source # 
Instance details

Defined in Plutarch.Api.V1.Time

Associated Types

type DPTStrat PPOSIXTime Source #

DerivePlutusType PTxId Source # 
Instance details

Defined in Plutarch.Api.V1.Tx

Associated Types

type DPTStrat PTxId Source #

DerivePlutusType PTxInInfo Source # 
Instance details

Defined in Plutarch.Api.V1.Tx

Associated Types

type DPTStrat PTxInInfo Source #

DerivePlutusType PTxOut Source # 
Instance details

Defined in Plutarch.Api.V1.Tx

Associated Types

type DPTStrat PTxOut Source #

DerivePlutusType PTxOutRef Source # 
Instance details

Defined in Plutarch.Api.V1.Tx

Associated Types

type DPTStrat PTxOutRef Source #

DerivePlutusType PCurrencySymbol Source # 
Instance details

Defined in Plutarch.Api.V1.Value

Associated Types

type DPTStrat PCurrencySymbol Source #

DerivePlutusType PTokenName Source # 
Instance details

Defined in Plutarch.Api.V1.Value

Associated Types

type DPTStrat PTokenName Source #

DerivePlutusType PScriptContext Source # 
Instance details

Defined in Plutarch.Api.V2.Contexts

Associated Types

type DPTStrat PScriptContext Source #

DerivePlutusType PTxInfo Source # 
Instance details

Defined in Plutarch.Api.V2.Contexts

Associated Types

type DPTStrat PTxInfo Source #

DerivePlutusType POutputDatum Source # 
Instance details

Defined in Plutarch.Api.V2.Tx

Associated Types

type DPTStrat POutputDatum Source #

DerivePlutusType PTxInInfo Source # 
Instance details

Defined in Plutarch.Api.V2.Tx

Associated Types

type DPTStrat PTxInInfo Source #

DerivePlutusType PTxOut Source # 
Instance details

Defined in Plutarch.Api.V2.Tx

Associated Types

type DPTStrat PTxOut Source #

DerivePlutusType PByteString Source # 
Instance details

Defined in Plutarch.ByteString

Associated Types

type DPTStrat PByteString Source #

DerivePlutusType PInteger Source # 
Instance details

Defined in Plutarch.Integer

Associated Types

type DPTStrat PInteger Source #

DerivePlutusType PPositive Source # 
Instance details

Defined in Plutarch.Positive

Associated Types

type DPTStrat PPositive Source #

DerivePlutusType PRational Source # 
Instance details

Defined in Plutarch.Rational

Associated Types

type DPTStrat PRational Source #

DerivePlutusType PString Source # 
Instance details

Defined in Plutarch.String

Associated Types

type DPTStrat PString Source #

DerivePlutusType (PExtended a) Source # 
Instance details

Defined in Plutarch.Api.V1.Interval

Associated Types

type DPTStrat (PExtended a) Source #

DerivePlutusType (PInterval a) Source # 
Instance details

Defined in Plutarch.Api.V1.Interval

Associated Types

type DPTStrat (PInterval a) Source #

DerivePlutusType (PLowerBound a) Source # 
Instance details

Defined in Plutarch.Api.V1.Interval

Associated Types

type DPTStrat (PLowerBound a) Source #

DerivePlutusType (PUpperBound a) Source # 
Instance details

Defined in Plutarch.Api.V1.Interval

Associated Types

type DPTStrat (PUpperBound a) Source #

DerivePlutusType (PMaybeData a) Source # 
Instance details

Defined in Plutarch.Api.V1.Maybe

Associated Types

type DPTStrat (PMaybeData a) Source #

DerivePlutusType (PList a) Source # 
Instance details

Defined in Plutarch.List

Associated Types

type DPTStrat (PList a) Source #

DerivePlutusType (PMaybe a) Source # 
Instance details

Defined in Plutarch.Maybe

Associated Types

type DPTStrat (PMaybe a) Source #

DerivePlutusType (PValue keys amounts) Source # 
Instance details

Defined in Plutarch.Api.V1.Value

Associated Types

type DPTStrat (PValue keys amounts) Source #

DerivePlutusType (PEither a b) Source # 
Instance details

Defined in Plutarch.Either

Associated Types

type DPTStrat (PEither a b) Source #

DerivePlutusType (PPair a b) Source # 
Instance details

Defined in Plutarch.Pair

Associated Types

type DPTStrat (PPair a b) Source #

DerivePlutusType (PMap keysort k v) Source # 
Instance details

Defined in Plutarch.Api.V1.AssocMap

Associated Types

type DPTStrat (PMap keysort k v) Source #

type family DPTStrat a :: Type Source #

Instances

Instances details
type DPTStrat PAddress Source # 
Instance details

Defined in Plutarch.Api.V1.Address

type DPTStrat PCredential Source # 
Instance details

Defined in Plutarch.Api.V1.Address

type DPTStrat PStakingCredential Source # 
Instance details

Defined in Plutarch.Api.V1.Address

type DPTStrat PScriptContext Source # 
Instance details

Defined in Plutarch.Api.V1.Contexts

type DPTStrat PScriptPurpose Source # 
Instance details

Defined in Plutarch.Api.V1.Contexts

type DPTStrat PTxInfo Source # 
Instance details

Defined in Plutarch.Api.V1.Contexts

type DPTStrat PPubKeyHash Source # 
Instance details

Defined in Plutarch.Api.V1.Crypto

type DPTStrat PDCert Source # 
Instance details

Defined in Plutarch.Api.V1.DCert

type DPTStrat PDatum Source # 
Instance details

Defined in Plutarch.Api.V1.Scripts

type DPTStrat PDatumHash Source # 
Instance details

Defined in Plutarch.Api.V1.Scripts

type DPTStrat PRedeemer Source # 
Instance details

Defined in Plutarch.Api.V1.Scripts

type DPTStrat PRedeemerHash Source # 
Instance details

Defined in Plutarch.Api.V1.Scripts

type DPTStrat PScriptHash Source # 
Instance details

Defined in Plutarch.Api.V1.Scripts

type DPTStrat PPOSIXTime Source # 
Instance details

Defined in Plutarch.Api.V1.Time

type DPTStrat PTxId Source # 
Instance details

Defined in Plutarch.Api.V1.Tx

type DPTStrat PTxInInfo Source # 
Instance details

Defined in Plutarch.Api.V1.Tx

type DPTStrat PTxOut Source # 
Instance details

Defined in Plutarch.Api.V1.Tx

type DPTStrat PTxOutRef Source # 
Instance details

Defined in Plutarch.Api.V1.Tx

type DPTStrat PCurrencySymbol Source # 
Instance details

Defined in Plutarch.Api.V1.Value

type DPTStrat PTokenName Source # 
Instance details

Defined in Plutarch.Api.V1.Value

type DPTStrat PScriptContext Source # 
Instance details

Defined in Plutarch.Api.V2.Contexts

type DPTStrat PTxInfo Source # 
Instance details

Defined in Plutarch.Api.V2.Contexts

type DPTStrat POutputDatum Source # 
Instance details

Defined in Plutarch.Api.V2.Tx

type DPTStrat PTxInInfo Source # 
Instance details

Defined in Plutarch.Api.V2.Tx

type DPTStrat PTxOut Source # 
Instance details

Defined in Plutarch.Api.V2.Tx

type DPTStrat PByteString Source # 
Instance details

Defined in Plutarch.ByteString

type DPTStrat PInteger Source # 
Instance details

Defined in Plutarch.Integer

type DPTStrat PPositive Source # 
Instance details

Defined in Plutarch.Positive

type DPTStrat PRational Source # 
Instance details

Defined in Plutarch.Rational

type DPTStrat PString Source # 
Instance details

Defined in Plutarch.String

type DPTStrat (PExtended a) Source # 
Instance details

Defined in Plutarch.Api.V1.Interval

type DPTStrat (PInterval a) Source # 
Instance details

Defined in Plutarch.Api.V1.Interval

type DPTStrat (PLowerBound a) Source # 
Instance details

Defined in Plutarch.Api.V1.Interval

type DPTStrat (PUpperBound a) Source # 
Instance details

Defined in Plutarch.Api.V1.Interval

type DPTStrat (PMaybeData a) Source # 
Instance details

Defined in Plutarch.Api.V1.Maybe

type DPTStrat (PList a) Source # 
Instance details

Defined in Plutarch.List

type DPTStrat (PMaybe a) Source # 
Instance details

Defined in Plutarch.Maybe

type DPTStrat (PValue keys amounts) Source # 
Instance details

Defined in Plutarch.Api.V1.Value

type DPTStrat (PValue keys amounts) = PlutusTypeNewtype
type DPTStrat (PEither a b) Source # 
Instance details

Defined in Plutarch.Either

type DPTStrat (PPair a b) Source # 
Instance details

Defined in Plutarch.Pair

type DPTStrat (PMap keysort k v) Source # 
Instance details

Defined in Plutarch.Api.V1.AssocMap

type DPTStrat (PMap keysort k v) = PlutusTypeNewtype

type PCon = PlutusType Source #

Deprecated: Use PlutusType

type PMatch = PlutusType Source #

Deprecated: Use PlutusType

pcon :: PlutusType a => a s -> Term s a Source #

Construct a Plutarch Term via a Haskell datatype

pmatch :: PlutusType a => Term s a -> (a s -> Term s b) -> Term s b Source #

Pattern match over Plutarch Terms via a Haskell datatype

newtype PForall (b :: a -> PType) s Source #

Constructors

PForall (forall (x :: a). Term s (b x)) 

Instances

Instances details
PlutusType (PForall f) Source # 
Instance details

Defined in Plutarch.Internal.PlutusType

Associated Types

type PInner (PForall f) :: PType Source #

type PCovariant' (PForall f) Source #

type PContravariant' (PForall f) Source #

type PVariant' (PForall f) Source #

Methods

pcon' :: forall (s :: S). PForall f s -> Term s (PInner (PForall f)) Source #

pmatch' :: forall (s :: S) (b :: PType). Term s (PInner (PForall f)) -> (PForall f s -> Term s b) -> Term s b Source #

type PContravariant' (PForall f) Source # 
Instance details

Defined in Plutarch.Internal.PlutusType

type PCovariant' (PForall f) Source # 
Instance details

Defined in Plutarch.Internal.PlutusType

type PInner (PForall f) Source # 
Instance details

Defined in Plutarch.Internal.PlutusType

type PInner (PForall f) = PForall f
type PVariant' (PForall f) Source # 
Instance details

Defined in Plutarch.Internal.PlutusType

Integers and integer utilities

data PInteger s Source #

Plutus BuiltinInteger

Instances

Instances details
PEq PInteger Source # 
Instance details

Defined in Plutarch.Integer

Methods

(#==) :: forall (s :: S). Term s PInteger -> Term s PInteger -> Term s PBool Source #

POrd PInteger Source # 
Instance details

Defined in Plutarch.Integer

PPartialOrd PInteger Source # 
Instance details

Defined in Plutarch.Integer

Methods

(#<=) :: forall (s :: S). Term s PInteger -> Term s PInteger -> Term s PBool Source #

(#<) :: forall (s :: S). Term s PInteger -> Term s PInteger -> Term s PBool Source #

PIsData PInteger Source # 
Instance details

Defined in Plutarch.Builtin

Methods

pfromDataImpl :: forall (s :: S). Term s (PAsData PInteger) -> Term s PInteger Source #

pdataImpl :: forall (s :: S). Term s PInteger -> Term s PData Source #

PIntegral PInteger Source # 
Instance details

Defined in Plutarch.Integer

Methods

pdiv :: forall (s :: S). Term s (PInteger :--> (PInteger :--> PInteger)) Source #

pmod :: forall (s :: S). Term s (PInteger :--> (PInteger :--> PInteger)) Source #

pquot :: forall (s :: S). Term s (PInteger :--> (PInteger :--> PInteger)) Source #

prem :: forall (s :: S). Term s (PInteger :--> (PInteger :--> PInteger)) Source #

DerivePlutusType PInteger Source # 
Instance details

Defined in Plutarch.Integer

Associated Types

type DPTStrat PInteger Source #

PlutusType PInteger Source # 
Instance details

Defined in Plutarch.Integer

Methods

pcon' :: forall (s :: S). PInteger s -> Term s (PInner PInteger) Source #

pmatch' :: forall (s :: S) (b :: PType). Term s (PInner PInteger) -> (PInteger s -> Term s b) -> Term s b Source #

PUnsafeLiftDecl PInteger Source # 
Instance details

Defined in Plutarch.Integer

Associated Types

type PLifted PInteger = (r :: Type) Source #

PNum PInteger Source # 
Instance details

Defined in Plutarch.Integer

Methods

(#+) :: forall (s :: S). Term s PInteger -> Term s PInteger -> Term s PInteger Source #

(#-) :: forall (s :: S). Term s PInteger -> Term s PInteger -> Term s PInteger Source #

(#*) :: forall (s :: S). Term s PInteger -> Term s PInteger -> Term s PInteger Source #

pnegate :: forall (s :: S). Term s (PInteger :--> PInteger) Source #

pabs :: forall (s :: S). Term s (PInteger :--> PInteger) Source #

psignum :: forall (s :: S). Term s (PInteger :--> PInteger) Source #

pfromInteger :: forall (s :: S). Integer -> Term s PInteger Source #

PShow PInteger Source # 
Instance details

Defined in Plutarch.Show

Methods

pshow' :: forall (s :: S). Bool -> Term s PInteger -> Term s PString Source #

PTryFrom PInteger PPositive Source # 
Instance details

Defined in Plutarch.Positive

Associated Types

type PTryFromExcess PInteger PPositive :: PType Source #

Methods

ptryFrom' :: forall (s :: S) (r :: PType). Term s PInteger -> ((Term s PPositive, Reduce (PTryFromExcess PInteger PPositive s)) -> Term s r) -> Term s r Source #

PTryFrom PData (PAsData PInteger) Source # 
Instance details

Defined in Plutarch.Builtin

Associated Types

type PTryFromExcess PData (PAsData PInteger) :: PType Source #

Methods

ptryFrom' :: forall (s :: S) (r :: PType). Term s PData -> ((Term s (PAsData PInteger), Reduce (PTryFromExcess PData (PAsData PInteger) s)) -> Term s r) -> Term s r Source #

Generic (PInteger s) Source # 
Instance details

Defined in Plutarch.Integer

Associated Types

type Rep (PInteger s) :: Type -> Type Source #

Methods

from :: PInteger s -> Rep (PInteger s) x Source #

to :: Rep (PInteger s) x -> PInteger s Source #

PIsData (PBuiltinPair PInteger (PBuiltinList PData)) Source # 
Instance details

Defined in Plutarch.Builtin

type DPTStrat PInteger Source # 
Instance details

Defined in Plutarch.Integer

type PContravariant' PInteger Source # 
Instance details

Defined in Plutarch.Integer

type PCovariant' PInteger Source # 
Instance details

Defined in Plutarch.Integer

type PInner PInteger Source # 
Instance details

Defined in Plutarch.Integer

type PVariant' PInteger Source # 
Instance details

Defined in Plutarch.Integer

type PLifted PInteger Source # 
Instance details

Defined in Plutarch.Integer

type PTryFromExcess PInteger PPositive Source # 
Instance details

Defined in Plutarch.Positive

type PTryFromExcess PData (PAsData PInteger) Source # 
Instance details

Defined in Plutarch.Builtin

type Rep (PInteger s) Source # 
Instance details

Defined in Plutarch.Integer

type Rep (PInteger s) = D1 ('MetaData "PInteger" "Plutarch.Integer" "plutarch-1.3.0-287WdR4V4qr3NTh5i3Je4I" 'True) (C1 ('MetaCons "PInteger" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Term s POpaque))))

class PIntegral a where Source #

Minimal complete definition

Nothing

Methods

pdiv :: Term s (a :--> (a :--> a)) Source #

default pdiv :: PIntegral (PInner a) => Term s (a :--> (a :--> a)) Source #

pmod :: Term s (a :--> (a :--> a)) Source #

default pmod :: PIntegral (PInner a) => Term s (a :--> (a :--> a)) Source #

pquot :: Term s (a :--> (a :--> a)) Source #

default pquot :: PIntegral (PInner a) => Term s (a :--> (a :--> a)) Source #

prem :: Term s (a :--> (a :--> a)) Source #

default prem :: PIntegral (PInner a) => Term s (a :--> (a :--> a)) Source #

Instances

Instances details
PIntegral PPOSIXTime Source # 
Instance details

Defined in Plutarch.Api.V1.Time

PIntegral PInteger Source # 
Instance details

Defined in Plutarch.Integer

Methods

pdiv :: forall (s :: S). Term s (PInteger :--> (PInteger :--> PInteger)) Source #

pmod :: forall (s :: S). Term s (PInteger :--> (PInteger :--> PInteger)) Source #

pquot :: forall (s :: S). Term s (PInteger :--> (PInteger :--> PInteger)) Source #

prem :: forall (s :: S). Term s (PInteger :--> (PInteger :--> PInteger)) Source #

PIntegral PPositive Source # 
Instance details

Defined in Plutarch.Positive

Methods

pdiv :: forall (s :: S). Term s (PPositive :--> (PPositive :--> PPositive)) Source #

pmod :: forall (s :: S). Term s (PPositive :--> (PPositive :--> PPositive)) Source #

pquot :: forall (s :: S). Term s (PPositive :--> (PPositive :--> PPositive)) Source #

prem :: forall (s :: S). Term s (PPositive :--> (PPositive :--> PPositive)) Source #

Rational numbers and utilities

data PRational s Source #

Note: This type is _not_ the synonym of Rational.

Constructors

PRational (Term s PInteger) (Term s PPositive) 

Instances

Instances details
PEq PRational Source # 
Instance details

Defined in Plutarch.Rational

Methods

(#==) :: forall (s :: S). Term s PRational -> Term s PRational -> Term s PBool Source #

POrd PRational Source # 
Instance details

Defined in Plutarch.Rational

PPartialOrd PRational Source # 
Instance details

Defined in Plutarch.Rational

Methods

(#<=) :: forall (s :: S). Term s PRational -> Term s PRational -> Term s PBool Source #

(#<) :: forall (s :: S). Term s PRational -> Term s PRational -> Term s PBool Source #

PIsData PRational Source #

This instance _does not_ correspond to Rationals data encoding.

Instance details

Defined in Plutarch.Rational

Methods

pfromDataImpl :: forall (s :: S). Term s (PAsData PRational) -> Term s PRational Source #

pdataImpl :: forall (s :: S). Term s PRational -> Term s PData Source #

DerivePlutusType PRational Source # 
Instance details

Defined in Plutarch.Rational

Associated Types

type DPTStrat PRational Source #

PlutusType PRational Source # 
Instance details

Defined in Plutarch.Rational

Methods

pcon' :: forall (s :: S). PRational s -> Term s (PInner PRational) Source #

pmatch' :: forall (s :: S) (b :: PType). Term s (PInner PRational) -> (PRational s -> Term s b) -> Term s b Source #

PNum PRational Source # 
Instance details

Defined in Plutarch.Rational

Methods

(#+) :: forall (s :: S). Term s PRational -> Term s PRational -> Term s PRational Source #

(#-) :: forall (s :: S). Term s PRational -> Term s PRational -> Term s PRational Source #

(#*) :: forall (s :: S). Term s PRational -> Term s PRational -> Term s PRational Source #

pnegate :: forall (s :: S). Term s (PRational :--> PRational) Source #

pabs :: forall (s :: S). Term s (PRational :--> PRational) Source #

psignum :: forall (s :: S). Term s (PRational :--> PRational) Source #

pfromInteger :: forall (s :: S). Integer -> Term s PRational Source #

PFractional PRational Source # 
Instance details

Defined in Plutarch.Rational

Methods

(#/) :: forall (s :: S). Term s PRational -> Term s PRational -> Term s PRational Source #

precip :: forall (s :: S). Term s (PRational :--> PRational) Source #

pfromRational :: forall (s :: S). Term s (PRational :--> PRational) Source #

PShow PRational Source # 
Instance details

Defined in Plutarch.Rational

Methods

pshow' :: forall (s :: S). Bool -> Term s PRational -> Term s PString Source #

PTryFrom PData (PAsData PRational) Source #

NOTE: This instance produces a verified PPositive as the excess output.

Instance details

Defined in Plutarch.Rational

Associated Types

type PTryFromExcess PData (PAsData PRational) :: PType Source #

Methods

ptryFrom' :: forall (s :: S) (r :: PType). Term s PData -> ((Term s (PAsData PRational), Reduce (PTryFromExcess PData (PAsData PRational) s)) -> Term s r) -> Term s r Source #

Generic (PRational s) Source # 
Instance details

Defined in Plutarch.Rational

Associated Types

type Rep (PRational s) :: Type -> Type Source #

Methods

from :: PRational s -> Rep (PRational s) x Source #

to :: Rep (PRational s) x -> PRational s Source #

type DPTStrat PRational Source # 
Instance details

Defined in Plutarch.Rational

type PContravariant' PRational Source # 
Instance details

Defined in Plutarch.Rational

type PCovariant' PRational Source # 
Instance details

Defined in Plutarch.Rational

type PInner PRational Source # 
Instance details

Defined in Plutarch.Rational

type PVariant' PRational Source # 
Instance details

Defined in Plutarch.Rational

type PTryFromExcess PData (PAsData PRational) Source # 
Instance details

Defined in Plutarch.Rational

type Rep (PRational s) Source # 
Instance details

Defined in Plutarch.Rational

type Rep (PRational s) = D1 ('MetaData "PRational" "Plutarch.Rational" "plutarch-1.3.0-287WdR4V4qr3NTh5i3Je4I" 'False) (C1 ('MetaCons "PRational" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Term s PInteger)) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Term s PPositive))))

Booleans and boolean functions

data PBool (s :: S) Source #

Plutus BuiltinBool

Constructors

PTrue 
PFalse 

Instances

Instances details
PEq PBool Source # 
Instance details

Defined in Plutarch.Bool

Methods

(#==) :: forall (s :: S). Term s PBool -> Term s PBool -> Term s PBool Source #

POrd PBool Source # 
Instance details

Defined in Plutarch.Bool

PPartialOrd PBool Source # 
Instance details

Defined in Plutarch.Bool

Methods

(#<=) :: forall (s :: S). Term s PBool -> Term s PBool -> Term s PBool Source #

(#<) :: forall (s :: S). Term s PBool -> Term s PBool -> Term s PBool Source #

PIsData PBool Source #

Instance for PBool following the Plutus IsData repr given by makeIsDataIndexed ''Bool [('False,0),('True,1)], which is used in TxInfo via Closure.

Instance details

Defined in Plutarch.Builtin

Methods

pfromDataImpl :: forall (s :: S). Term s (PAsData PBool) -> Term s PBool Source #

pdataImpl :: forall (s :: S). Term s PBool -> Term s PData Source #

PlutusType PBool Source # 
Instance details

Defined in Plutarch.Bool

Methods

pcon' :: forall (s :: S). PBool s -> Term s (PInner PBool) Source #

pmatch' :: forall (s :: S) (b :: PType). Term s (PInner PBool) -> (PBool s -> Term s b) -> Term s b Source #

PUnsafeLiftDecl PBool Source # 
Instance details

Defined in Plutarch.Bool

Associated Types

type PLifted PBool = (r :: Type) Source #

PShow PBool Source # 
Instance details

Defined in Plutarch.Show

Methods

pshow' :: forall (s :: S). Bool -> Term s PBool -> Term s PString Source #

Show (PBool s) Source # 
Instance details

Defined in Plutarch.Bool

type PContravariant' PBool Source # 
Instance details

Defined in Plutarch.Bool

type PCovariant' PBool Source # 
Instance details

Defined in Plutarch.Bool

type PInner PBool Source # 
Instance details

Defined in Plutarch.Bool

type PVariant' PBool Source # 
Instance details

Defined in Plutarch.Bool

type PLifted PBool Source # 
Instance details

Defined in Plutarch.Bool

class PEq t where Source #

Minimal complete definition

Nothing

Methods

(#==) :: Term s t -> Term s t -> Term s PBool infix 4 Source #

default (#==) :: (PGeneric t, PlutusType t, All2 PEq (PCode t)) => Term s t -> Term s t -> Term s PBool Source #

Instances

Instances details
PEq PAddress Source # 
Instance details

Defined in Plutarch.Api.V1.Address

Methods

(#==) :: forall (s :: S). Term s PAddress -> Term s PAddress -> Term s PBool Source #

PEq PCredential Source # 
Instance details

Defined in Plutarch.Api.V1.Address

Methods

(#==) :: forall (s :: S). Term s PCredential -> Term s PCredential -> Term s PBool Source #

PEq PStakingCredential Source # 
Instance details

Defined in Plutarch.Api.V1.Address

Methods

(#==) :: forall (s :: S). Term s PStakingCredential -> Term s PStakingCredential -> Term s PBool Source #

PEq PScriptContext Source # 
Instance details

Defined in Plutarch.Api.V1.Contexts

Methods

(#==) :: forall (s :: S). Term s PScriptContext -> Term s PScriptContext -> Term s PBool Source #

PEq PScriptPurpose Source # 
Instance details

Defined in Plutarch.Api.V1.Contexts

Methods

(#==) :: forall (s :: S). Term s PScriptPurpose -> Term s PScriptPurpose -> Term s PBool Source #

PEq PTxInfo Source # 
Instance details

Defined in Plutarch.Api.V1.Contexts

Methods

(#==) :: forall (s :: S). Term s PTxInfo -> Term s PTxInfo -> Term s PBool Source #

PEq PPubKeyHash Source # 
Instance details

Defined in Plutarch.Api.V1.Crypto

Methods

(#==) :: forall (s :: S). Term s PPubKeyHash -> Term s PPubKeyHash -> Term s PBool Source #

PEq PDCert Source # 
Instance details

Defined in Plutarch.Api.V1.DCert

Methods

(#==) :: forall (s :: S). Term s PDCert -> Term s PDCert -> Term s PBool Source #

PEq PDatum Source # 
Instance details

Defined in Plutarch.Api.V1.Scripts

Methods

(#==) :: forall (s :: S). Term s PDatum -> Term s PDatum -> Term s PBool Source #

PEq PDatumHash Source # 
Instance details

Defined in Plutarch.Api.V1.Scripts

Methods

(#==) :: forall (s :: S). Term s PDatumHash -> Term s PDatumHash -> Term s PBool Source #

PEq PRedeemer Source # 
Instance details

Defined in Plutarch.Api.V1.Scripts

Methods

(#==) :: forall (s :: S). Term s PRedeemer -> Term s PRedeemer -> Term s PBool Source #

PEq PRedeemerHash Source # 
Instance details

Defined in Plutarch.Api.V1.Scripts

Methods

(#==) :: forall (s :: S). Term s PRedeemerHash -> Term s PRedeemerHash -> Term s PBool Source #

PEq PScriptHash Source # 
Instance details

Defined in Plutarch.Api.V1.Scripts

Methods

(#==) :: forall (s :: S). Term s PScriptHash -> Term s PScriptHash -> Term s PBool Source #

PEq PPOSIXTime Source # 
Instance details

Defined in Plutarch.Api.V1.Time

Methods

(#==) :: forall (s :: S). Term s PPOSIXTime -> Term s PPOSIXTime -> Term s PBool Source #

PEq PTxId Source # 
Instance details

Defined in Plutarch.Api.V1.Tx

Methods

(#==) :: forall (s :: S). Term s PTxId -> Term s PTxId -> Term s PBool Source #

PEq PTxInInfo Source # 
Instance details

Defined in Plutarch.Api.V1.Tx

Methods

(#==) :: forall (s :: S). Term s PTxInInfo -> Term s PTxInInfo -> Term s PBool Source #

PEq PTxOut Source # 
Instance details

Defined in Plutarch.Api.V1.Tx

Methods

(#==) :: forall (s :: S). Term s PTxOut -> Term s PTxOut -> Term s PBool Source #

PEq PTxOutRef Source # 
Instance details

Defined in Plutarch.Api.V1.Tx

Methods

(#==) :: forall (s :: S). Term s PTxOutRef -> Term s PTxOutRef -> Term s PBool Source #

PEq PCurrencySymbol Source # 
Instance details

Defined in Plutarch.Api.V1.Value

Methods

(#==) :: forall (s :: S). Term s PCurrencySymbol -> Term s PCurrencySymbol -> Term s PBool Source #

PEq PTokenName Source # 
Instance details

Defined in Plutarch.Api.V1.Value

Methods

(#==) :: forall (s :: S). Term s PTokenName -> Term s PTokenName -> Term s PBool Source #

PEq PScriptContext Source # 
Instance details

Defined in Plutarch.Api.V2.Contexts

Methods

(#==) :: forall (s :: S). Term s PScriptContext -> Term s PScriptContext -> Term s PBool Source #

PEq PTxInfo Source # 
Instance details

Defined in Plutarch.Api.V2.Contexts

Methods

(#==) :: forall (s :: S). Term s PTxInfo -> Term s PTxInfo -> Term s PBool Source #

PEq POutputDatum Source # 
Instance details

Defined in Plutarch.Api.V2.Tx

Methods

(#==) :: forall (s :: S). Term s POutputDatum -> Term s POutputDatum -> Term s PBool Source #

PEq PTxInInfo Source # 
Instance details

Defined in Plutarch.Api.V2.Tx

Methods

(#==) :: forall (s :: S). Term s PTxInInfo -> Term s PTxInInfo -> Term s PBool Source #

PEq PTxOut Source # 
Instance details

Defined in Plutarch.Api.V2.Tx

Methods

(#==) :: forall (s :: S). Term s PTxOut -> Term s PTxOut -> Term s PBool Source #

PEq PBool Source # 
Instance details

Defined in Plutarch.Bool

Methods

(#==) :: forall (s :: S). Term s PBool -> Term s PBool -> Term s PBool Source #

PEq PData Source # 
Instance details

Defined in Plutarch.Builtin

Methods

(#==) :: forall (s :: S). Term s PData -> Term s PData -> Term s PBool Source #

PEq PByteString Source # 
Instance details

Defined in Plutarch.ByteString

Methods

(#==) :: forall (s :: S). Term s PByteString -> Term s PByteString -> Term s PBool Source #

PEq PInteger Source # 
Instance details

Defined in Plutarch.Integer

Methods

(#==) :: forall (s :: S). Term s PInteger -> Term s PInteger -> Term s PBool Source #

PEq PPositive Source # 
Instance details

Defined in Plutarch.Positive

Methods

(#==) :: forall (s :: S). Term s PPositive -> Term s PPositive -> Term s PBool Source #

PEq PRational Source # 
Instance details

Defined in Plutarch.Rational

Methods

(#==) :: forall (s :: S). Term s PRational -> Term s PRational -> Term s PBool Source #

PEq PString Source # 
Instance details

Defined in Plutarch.String

Methods

(#==) :: forall (s :: S). Term s PString -> Term s PString -> Term s PBool Source #

PEq (PExtended a) Source # 
Instance details

Defined in Plutarch.Api.V1.Interval

Methods

(#==) :: forall (s :: S). Term s (PExtended a) -> Term s (PExtended a) -> Term s PBool Source #

PEq (PInterval a) Source # 
Instance details

Defined in Plutarch.Api.V1.Interval

Methods

(#==) :: forall (s :: S). Term s (PInterval a) -> Term s (PInterval a) -> Term s PBool Source #

PEq (PLowerBound a) Source # 
Instance details

Defined in Plutarch.Api.V1.Interval

Methods

(#==) :: forall (s :: S). Term s (PLowerBound a) -> Term s (PLowerBound a) -> Term s PBool Source #

PEq (PUpperBound a) Source # 
Instance details

Defined in Plutarch.Api.V1.Interval

Methods

(#==) :: forall (s :: S). Term s (PUpperBound a) -> Term s (PUpperBound a) -> Term s PBool Source #

PEq (PMaybeData a) Source # 
Instance details

Defined in Plutarch.Api.V1.Maybe

Methods

(#==) :: forall (s :: S). Term s (PMaybeData a) -> Term s (PMaybeData a) -> Term s PBool Source #

PEq (PAsData a) Source # 
Instance details

Defined in Plutarch.Builtin

Methods

(#==) :: forall (s :: S). Term s (PAsData a) -> Term s (PAsData a) -> Term s PBool Source #

Fc (F a) a => PEq (PBuiltinList a) Source # 
Instance details

Defined in Plutarch.Builtin

Methods

(#==) :: forall (s :: S). Term s (PBuiltinList a) -> Term s (PBuiltinList a) -> Term s PBool Source #

PEq (PDataRecord xs) Source #

This uses data equality. PEq instances of elements don't make any difference.

Instance details

Defined in Plutarch.DataRepr.Internal

Methods

(#==) :: forall (s :: S). Term s (PDataRecord xs) -> Term s (PDataRecord xs) -> Term s PBool Source #

PEq (PDataSum defs) Source # 
Instance details

Defined in Plutarch.DataRepr.Internal

Methods

(#==) :: forall (s :: S). Term s (PDataSum defs) -> Term s (PDataSum defs) -> Term s PBool Source #

PEq a => PEq (PTxList a) Source # 
Instance details

Defined in Plutarch.FFI

Methods

(#==) :: forall (s :: S). Term s (PTxList a) -> Term s (PTxList a) -> Term s PBool Source #

PEq a => PEq (PTxMaybe a) Source # 
Instance details

Defined in Plutarch.FFI

Methods

(#==) :: forall (s :: S). Term s (PTxMaybe a) -> Term s (PTxMaybe a) -> Term s PBool Source #

PEq a => PEq (PList a) Source # 
Instance details

Defined in Plutarch.List

Methods

(#==) :: forall (s :: S). Term s (PList a) -> Term s (PList a) -> Term s PBool Source #

PEq a => PEq (PMaybe a) Source # 
Instance details

Defined in Plutarch.Maybe

Methods

(#==) :: forall (s :: S). Term s (PMaybe a) -> Term s (PMaybe a) -> Term s PBool Source #

PEq (PUnit :: S -> Type) Source # 
Instance details

Defined in Plutarch.Unit

Methods

(#==) :: forall (s :: S). Term s PUnit -> Term s PUnit -> Term s PBool Source #

PEq (PValue 'Sorted 'NoGuarantees) Source # 
Instance details

Defined in Plutarch.Api.V1.Value

Methods

(#==) :: forall (s :: S). Term s (PValue 'Sorted 'NoGuarantees) -> Term s (PValue 'Sorted 'NoGuarantees) -> Term s PBool Source #

PEq (PValue 'Sorted 'NonZero) Source # 
Instance details

Defined in Plutarch.Api.V1.Value

Methods

(#==) :: forall (s :: S). Term s (PValue 'Sorted 'NonZero) -> Term s (PValue 'Sorted 'NonZero) -> Term s PBool Source #

PEq (PValue 'Sorted 'Positive) Source # 
Instance details

Defined in Plutarch.Api.V1.Value

Methods

(#==) :: forall (s :: S). Term s (PValue 'Sorted 'Positive) -> Term s (PValue 'Sorted 'Positive) -> Term s PBool Source #

(PEq a, PEq b) => PEq (PBuiltinPair a b) Source # 
Instance details

Defined in Plutarch.Builtin

Methods

(#==) :: forall (s :: S). Term s (PBuiltinPair a b) -> Term s (PBuiltinPair a b) -> Term s PBool Source #

(PEq a, PEq b) => PEq (PEither a b) Source # 
Instance details

Defined in Plutarch.Either

Methods

(#==) :: forall (s :: S). Term s (PEither a b) -> Term s (PEither a b) -> Term s PBool Source #

(PEq a, PEq b) => PEq (PPair a b) Source # 
Instance details

Defined in Plutarch.Pair

Methods

(#==) :: forall (s :: S). Term s (PPair a b) -> Term s (PPair a b) -> Term s PBool Source #

PEq (PMap 'Sorted k v) Source # 
Instance details

Defined in Plutarch.Api.V1.AssocMap

Methods

(#==) :: forall (s :: S). Term s (PMap 'Sorted k v) -> Term s (PMap 'Sorted k v) -> Term s PBool Source #

class PEq t => PPartialOrd t where Source #

Partial ordering relation.

Minimal complete definition

Nothing

Methods

(#<=) :: Term s t -> Term s t -> Term s PBool infix 4 Source #

default (#<=) :: POrd (PInner t) => Term s t -> Term s t -> Term s PBool Source #

(#<) :: Term s t -> Term s t -> Term s PBool infix 4 Source #

default (#<) :: POrd (PInner t) => Term s t -> Term s t -> Term s PBool Source #

Instances

Instances details
PPartialOrd PAddress Source # 
Instance details

Defined in Plutarch.Api.V1.Address

Methods

(#<=) :: forall (s :: S). Term s PAddress -> Term s PAddress -> Term s PBool Source #

(#<) :: forall (s :: S). Term s PAddress -> Term s PAddress -> Term s PBool Source #

PPartialOrd PCredential Source # 
Instance details

Defined in Plutarch.Api.V1.Address

Methods

(#<=) :: forall (s :: S). Term s PCredential -> Term s PCredential -> Term s PBool Source #

(#<) :: forall (s :: S). Term s PCredential -> Term s PCredential -> Term s PBool Source #

PPartialOrd PStakingCredential Source # 
Instance details

Defined in Plutarch.Api.V1.Address

PPartialOrd PPubKeyHash Source # 
Instance details

Defined in Plutarch.Api.V1.Crypto

Methods

(#<=) :: forall (s :: S). Term s PPubKeyHash -> Term s PPubKeyHash -> Term s PBool Source #

(#<) :: forall (s :: S). Term s PPubKeyHash -> Term s PPubKeyHash -> Term s PBool Source #

PPartialOrd PDCert Source # 
Instance details

Defined in Plutarch.Api.V1.DCert

Methods

(#<=) :: forall (s :: S). Term s PDCert -> Term s PDCert -> Term s PBool Source #

(#<) :: forall (s :: S). Term s PDCert -> Term s PDCert -> Term s PBool Source #

PPartialOrd PDatumHash Source # 
Instance details

Defined in Plutarch.Api.V1.Scripts

Methods

(#<=) :: forall (s :: S). Term s PDatumHash -> Term s PDatumHash -> Term s PBool Source #

(#<) :: forall (s :: S). Term s PDatumHash -> Term s PDatumHash -> Term s PBool Source #

PPartialOrd PRedeemerHash Source # 
Instance details

Defined in Plutarch.Api.V1.Scripts

Methods

(#<=) :: forall (s :: S). Term s PRedeemerHash -> Term s PRedeemerHash -> Term s PBool Source #

(#<) :: forall (s :: S). Term s PRedeemerHash -> Term s PRedeemerHash -> Term s PBool Source #

PPartialOrd PScriptHash Source # 
Instance details

Defined in Plutarch.Api.V1.Scripts

Methods

(#<=) :: forall (s :: S). Term s PScriptHash -> Term s PScriptHash -> Term s PBool Source #

(#<) :: forall (s :: S). Term s PScriptHash -> Term s PScriptHash -> Term s PBool Source #

PPartialOrd PPOSIXTime Source # 
Instance details

Defined in Plutarch.Api.V1.Time

Methods

(#<=) :: forall (s :: S). Term s PPOSIXTime -> Term s PPOSIXTime -> Term s PBool Source #

(#<) :: forall (s :: S). Term s PPOSIXTime -> Term s PPOSIXTime -> Term s PBool Source #

PPartialOrd PTxId Source # 
Instance details

Defined in Plutarch.Api.V1.Tx

Methods

(#<=) :: forall (s :: S). Term s PTxId -> Term s PTxId -> Term s PBool Source #

(#<) :: forall (s :: S). Term s PTxId -> Term s PTxId -> Term s PBool Source #

PPartialOrd PTxOutRef Source # 
Instance details

Defined in Plutarch.Api.V1.Tx

Methods

(#<=) :: forall (s :: S). Term s PTxOutRef -> Term s PTxOutRef -> Term s PBool Source #

(#<) :: forall (s :: S). Term s PTxOutRef -> Term s PTxOutRef -> Term s PBool Source #

PPartialOrd PCurrencySymbol Source # 
Instance details

Defined in Plutarch.Api.V1.Value

Methods

(#<=) :: forall (s :: S). Term s PCurrencySymbol -> Term s PCurrencySymbol -> Term s PBool Source #

(#<) :: forall (s :: S). Term s PCurrencySymbol -> Term s PCurrencySymbol -> Term s PBool Source #

PPartialOrd PTokenName Source # 
Instance details

Defined in Plutarch.Api.V1.Value

Methods

(#<=) :: forall (s :: S). Term s PTokenName -> Term s PTokenName -> Term s PBool Source #

(#<) :: forall (s :: S). Term s PTokenName -> Term s PTokenName -> Term s PBool Source #

PPartialOrd PBool Source # 
Instance details

Defined in Plutarch.Bool

Methods

(#<=) :: forall (s :: S). Term s PBool -> Term s PBool -> Term s PBool Source #

(#<) :: forall (s :: S). Term s PBool -> Term s PBool -> Term s PBool Source #

PPartialOrd PByteString Source # 
Instance details

Defined in Plutarch.ByteString

Methods

(#<=) :: forall (s :: S). Term s PByteString -> Term s PByteString -> Term s PBool Source #

(#<) :: forall (s :: S). Term s PByteString -> Term s PByteString -> Term s PBool Source #

PPartialOrd PInteger Source # 
Instance details

Defined in Plutarch.Integer

Methods

(#<=) :: forall (s :: S). Term s PInteger -> Term s PInteger -> Term s PBool Source #

(#<) :: forall (s :: S). Term s PInteger -> Term s PInteger -> Term s PBool Source #

PPartialOrd PPositive Source # 
Instance details

Defined in Plutarch.Positive

Methods

(#<=) :: forall (s :: S). Term s PPositive -> Term s PPositive -> Term s PBool Source #

(#<) :: forall (s :: S). Term s PPositive -> Term s PPositive -> Term s PBool Source #

PPartialOrd PRational Source # 
Instance details

Defined in Plutarch.Rational

Methods

(#<=) :: forall (s :: S). Term s PRational -> Term s PRational -> Term s PBool Source #

(#<) :: forall (s :: S). Term s PRational -> Term s PRational -> Term s PBool Source #

(POrd a, PIsData a) => PPartialOrd (PExtended a) Source # 
Instance details

Defined in Plutarch.Api.V1.Interval

Methods

(#<=) :: forall (s :: S). Term s (PExtended a) -> Term s (PExtended a) -> Term s PBool Source #

(#<) :: forall (s :: S). Term s (PExtended a) -> Term s (PExtended a) -> Term s PBool Source #

(POrd a, PIsData a) => PPartialOrd (PInterval a) Source # 
Instance details

Defined in Plutarch.Api.V1.Interval

Methods

(#<=) :: forall (s :: S). Term s (PInterval a) -> Term s (PInterval a) -> Term s PBool Source #

(#<) :: forall (s :: S). Term s (PInterval a) -> Term s (PInterval a) -> Term s PBool Source #

(POrd a, PIsData a) => PPartialOrd (PLowerBound a) Source # 
Instance details

Defined in Plutarch.Api.V1.Interval

Methods

(#<=) :: forall (s :: S). Term s (PLowerBound a) -> Term s (PLowerBound a) -> Term s PBool Source #

(#<) :: forall (s :: S). Term s (PLowerBound a) -> Term s (PLowerBound a) -> Term s PBool Source #

(POrd a, PIsData a) => PPartialOrd (PUpperBound a) Source # 
Instance details

Defined in Plutarch.Api.V1.Interval

Methods

(#<=) :: forall (s :: S). Term s (PUpperBound a) -> Term s (PUpperBound a) -> Term s PBool Source #

(#<) :: forall (s :: S). Term s (PUpperBound a) -> Term s (PUpperBound a) -> Term s PBool Source #

(PIsData a, POrd a) => PPartialOrd (PMaybeData a) Source # 
Instance details

Defined in Plutarch.Api.V1.Maybe

Methods

(#<=) :: forall (s :: S). Term s (PMaybeData a) -> Term s (PMaybeData a) -> Term s PBool Source #

(#<) :: forall (s :: S). Term s (PMaybeData a) -> Term s (PMaybeData a) -> Term s PBool Source #

(SListI xs, POrd x, PIsData x, POrd (PDataRecord (x' ': xs))) => PPartialOrd (PDataRecord ((label := x) ': (x' ': xs))) Source # 
Instance details

Defined in Plutarch.DataRepr.Internal

Methods

(#<=) :: forall (s :: S). Term s (PDataRecord ((label := x) ': (x' ': xs))) -> Term s (PDataRecord ((label := x) ': (x' ': xs))) -> Term s PBool Source #

(#<) :: forall (s :: S). Term s (PDataRecord ((label := x) ': (x' ': xs))) -> Term s (PDataRecord ((label := x) ': (x' ': xs))) -> Term s PBool Source #

(POrd x, PIsData x) => PPartialOrd (PDataRecord '[label := x]) Source # 
Instance details

Defined in Plutarch.DataRepr.Internal

Methods

(#<=) :: forall (s :: S). Term s (PDataRecord '[label := x]) -> Term s (PDataRecord '[label := x]) -> Term s PBool Source #

(#<) :: forall (s :: S). Term s (PDataRecord '[label := x]) -> Term s (PDataRecord '[label := x]) -> Term s PBool Source #

PPartialOrd (PDataRecord ('[] :: [PLabeledType])) Source # 
Instance details

Defined in Plutarch.DataRepr.Internal

Methods

(#<=) :: forall (s :: S). Term s (PDataRecord '[]) -> Term s (PDataRecord '[]) -> Term s PBool Source #

(#<) :: forall (s :: S). Term s (PDataRecord '[]) -> Term s (PDataRecord '[]) -> Term s PBool Source #

All (Compose POrd PDataRecord) defs => PPartialOrd (PDataSum defs) Source # 
Instance details

Defined in Plutarch.DataRepr.Internal

Methods

(#<=) :: forall (s :: S). Term s (PDataSum defs) -> Term s (PDataSum defs) -> Term s PBool Source #

(#<) :: forall (s :: S). Term s (PDataSum defs) -> Term s (PDataSum defs) -> Term s PBool Source #

PPartialOrd (PUnit :: S -> Type) Source # 
Instance details

Defined in Plutarch.Unit

Methods

(#<=) :: forall (s :: S). Term s PUnit -> Term s PUnit -> Term s PBool Source #

(#<) :: forall (s :: S). Term s PUnit -> Term s PUnit -> Term s PBool Source #

PPartialOrd (PValue 'Sorted 'NonZero) Source #

Partial ordering implementation for sorted PValue with NonZero amounts.

Use pcheckBinRel if AmountGuarantees is NoGuarantees.

Instance details

Defined in Plutarch.Api.V1.Value

Methods

(#<=) :: forall (s :: S). Term s (PValue 'Sorted 'NonZero) -> Term s (PValue 'Sorted 'NonZero) -> Term s PBool Source #

(#<) :: forall (s :: S). Term s (PValue 'Sorted 'NonZero) -> Term s (PValue 'Sorted 'NonZero) -> Term s PBool Source #

PPartialOrd (PValue 'Sorted 'Positive) Source #

Partial ordering implementation for sorted PValue with Positive amounts.

Use pcheckBinRel if AmountGuarantees is NoGuarantees.

Instance details

Defined in Plutarch.Api.V1.Value

Methods

(#<=) :: forall (s :: S). Term s (PValue 'Sorted 'Positive) -> Term s (PValue 'Sorted 'Positive) -> Term s PBool Source #

(#<) :: forall (s :: S). Term s (PValue 'Sorted 'Positive) -> Term s (PValue 'Sorted 'Positive) -> Term s PBool Source #

class PPartialOrd t => POrd t Source #

Total ordering relation.

Instances

Instances details
POrd PAddress Source # 
Instance details

Defined in Plutarch.Api.V1.Address

POrd PCredential Source # 
Instance details

Defined in Plutarch.Api.V1.Address

POrd PStakingCredential Source # 
Instance details

Defined in Plutarch.Api.V1.Address

POrd PPubKeyHash Source # 
Instance details

Defined in Plutarch.Api.V1.Crypto

POrd PDCert Source # 
Instance details

Defined in Plutarch.Api.V1.DCert

POrd PDatumHash Source # 
Instance details

Defined in Plutarch.Api.V1.Scripts

POrd PRedeemerHash Source # 
Instance details

Defined in Plutarch.Api.V1.Scripts

POrd PScriptHash Source # 
Instance details

Defined in Plutarch.Api.V1.Scripts

POrd PPOSIXTime Source # 
Instance details

Defined in Plutarch.Api.V1.Time

POrd PTxId Source # 
Instance details

Defined in Plutarch.Api.V1.Tx

POrd PTxOutRef Source # 
Instance details

Defined in Plutarch.Api.V1.Tx

POrd PCurrencySymbol Source # 
Instance details

Defined in Plutarch.Api.V1.Value

POrd PTokenName Source # 
Instance details

Defined in Plutarch.Api.V1.Value

POrd PBool Source # 
Instance details

Defined in Plutarch.Bool

POrd PByteString Source # 
Instance details

Defined in Plutarch.ByteString

POrd PInteger Source # 
Instance details

Defined in Plutarch.Integer

POrd PPositive Source # 
Instance details

Defined in Plutarch.Positive

POrd PRational Source # 
Instance details

Defined in Plutarch.Rational

(POrd a, PIsData a) => POrd (PExtended a) Source # 
Instance details

Defined in Plutarch.Api.V1.Interval

(POrd a, PIsData a) => POrd (PInterval a) Source # 
Instance details

Defined in Plutarch.Api.V1.Interval

(POrd a, PIsData a) => POrd (PLowerBound a) Source # 
Instance details

Defined in Plutarch.Api.V1.Interval

(POrd a, PIsData a) => POrd (PUpperBound a) Source # 
Instance details

Defined in Plutarch.Api.V1.Interval

(PIsData a, POrd a) => POrd (PMaybeData a) Source # 
Instance details

Defined in Plutarch.Api.V1.Maybe

(SListI xs, POrd x, PIsData x, POrd (PDataRecord (x' ': xs))) => POrd (PDataRecord ((label := x) ': (x' ': xs))) Source # 
Instance details

Defined in Plutarch.DataRepr.Internal

(POrd x, PIsData x) => POrd (PDataRecord '[label := x]) Source # 
Instance details

Defined in Plutarch.DataRepr.Internal

POrd (PDataRecord ('[] :: [PLabeledType])) Source # 
Instance details

Defined in Plutarch.DataRepr.Internal

All (Compose POrd PDataRecord) defs => POrd (PDataSum defs) Source # 
Instance details

Defined in Plutarch.DataRepr.Internal

POrd (PUnit :: S -> Type) Source # 
Instance details

Defined in Plutarch.Unit

pif :: Term s PBool -> Term s a -> Term s a -> Term s a Source #

Lazy if-then-else.

pnot :: Term s (PBool :--> PBool) Source #

Boolean negation for PBool terms.

(#&&) :: Term s PBool -> Term s PBool -> Term s PBool infixr 3 Source #

Lazily evaluated boolean and for PBool terms.

(#||) :: Term s PBool -> Term s PBool -> Term s PBool infixr 2 Source #

Lazily evaluated boolean or for PBool terms.

Bytestrings and bytestring utilities

data PByteString s Source #

Plutus BuiltinByteString

Instances

Instances details
PEq PByteString Source # 
Instance details

Defined in Plutarch.ByteString

Methods

(#==) :: forall (s :: S). Term s PByteString -> Term s PByteString -> Term s PBool Source #

POrd PByteString Source # 
Instance details

Defined in Plutarch.ByteString

PPartialOrd PByteString Source # 
Instance details

Defined in Plutarch.ByteString

Methods

(#<=) :: forall (s :: S). Term s PByteString -> Term s PByteString -> Term s PBool Source #

(#<) :: forall (s :: S). Term s PByteString -> Term s PByteString -> Term s PBool Source #

PIsData PByteString Source # 
Instance details

Defined in Plutarch.Builtin

Methods

pfromDataImpl :: forall (s :: S). Term s (PAsData PByteString) -> Term s PByteString Source #

pdataImpl :: forall (s :: S). Term s PByteString -> Term s PData Source #

DerivePlutusType PByteString Source # 
Instance details

Defined in Plutarch.ByteString

Associated Types

type DPTStrat PByteString Source #

PlutusType PByteString Source # 
Instance details

Defined in Plutarch.ByteString

Methods

pcon' :: forall (s :: S). PByteString s -> Term s (PInner PByteString) Source #

pmatch' :: forall (s :: S) (b :: PType). Term s (PInner PByteString) -> (PByteString s -> Term s b) -> Term s b Source #

PUnsafeLiftDecl PByteString Source # 
Instance details

Defined in Plutarch.ByteString

Associated Types

type PLifted PByteString = (r :: Type) Source #

PShow PByteString Source # 
Instance details

Defined in Plutarch.Show

Methods

pshow' :: forall (s :: S). Bool -> Term s PByteString -> Term s PString Source #

PTryFrom PData (PAsData PByteString) Source # 
Instance details

Defined in Plutarch.Builtin

Methods

ptryFrom' :: forall (s :: S) (r :: PType). Term s PData -> ((Term s (PAsData PByteString), Reduce (PTryFromExcess PData (PAsData PByteString) s)) -> Term s r) -> Term s r Source #

Generic (PByteString s) Source # 
Instance details

Defined in Plutarch.ByteString

Associated Types

type Rep (PByteString s) :: Type -> Type Source #

Monoid (Term s PByteString) Source # 
Instance details

Defined in Plutarch.ByteString

Semigroup (Term s PByteString) Source # 
Instance details

Defined in Plutarch.ByteString

type DPTStrat PByteString Source # 
Instance details

Defined in Plutarch.ByteString

type PContravariant' PByteString Source # 
Instance details

Defined in Plutarch.ByteString

type PCovariant' PByteString Source # 
Instance details

Defined in Plutarch.ByteString

type PInner PByteString Source # 
Instance details

Defined in Plutarch.ByteString

type PVariant' PByteString Source # 
Instance details

Defined in Plutarch.ByteString

type PLifted PByteString Source # 
Instance details

Defined in Plutarch.ByteString

type PTryFromExcess PData (PAsData PByteString) Source # 
Instance details

Defined in Plutarch.Builtin

type Rep (PByteString s) Source # 
Instance details

Defined in Plutarch.ByteString

type Rep (PByteString s) = D1 ('MetaData "PByteString" "Plutarch.ByteString" "plutarch-1.3.0-287WdR4V4qr3NTh5i3Je4I" 'True) (C1 ('MetaCons "PByteString" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Term s POpaque))))

phexByteStr :: HasCallStack => String -> Term s PByteString Source #

Interpret a hex string as a PByteString.

pconsBS :: Term s (PInteger :--> (PByteString :--> PByteString)) Source #

Prepend a byte, represented by a non negative PInteger, to a PBytestring.

psliceBS :: Term s (PInteger :--> (PInteger :--> (PByteString :--> PByteString))) Source #

Slice a PByteString with given start index and slice length.

>>> (pslice # 2 # 3 phexByteStr "4102afde5b2a") #== phexByteStr "afde5b"

String and string utilities

data PString s Source #

Plutus BuiltinString values

Instances

Instances details
PEq PString Source # 
Instance details

Defined in Plutarch.String

Methods

(#==) :: forall (s :: S). Term s PString -> Term s PString -> Term s PBool Source #

DerivePlutusType PString Source # 
Instance details

Defined in Plutarch.String

Associated Types

type DPTStrat PString Source #

PlutusType PString Source # 
Instance details

Defined in Plutarch.String

Methods

pcon' :: forall (s :: S). PString s -> Term s (PInner PString) Source #

pmatch' :: forall (s :: S) (b :: PType). Term s (PInner PString) -> (PString s -> Term s b) -> Term s b Source #

PUnsafeLiftDecl PString Source # 
Instance details

Defined in Plutarch.String

Associated Types

type PLifted PString = (r :: Type) Source #

PShow PString Source # 
Instance details

Defined in Plutarch.Show

Methods

pshow' :: forall (s :: S). Bool -> Term s PString -> Term s PString Source #

Generic (PString s) Source # 
Instance details

Defined in Plutarch.String

Associated Types

type Rep (PString s) :: Type -> Type Source #

Methods

from :: PString s -> Rep (PString s) x Source #

to :: Rep (PString s) x -> PString s Source #

IsString (Term s PString) Source # 
Instance details

Defined in Plutarch.String

Monoid (Term s PString) Source # 
Instance details

Defined in Plutarch.String

Semigroup (Term s PString) Source # 
Instance details

Defined in Plutarch.String

type DPTStrat PString Source # 
Instance details

Defined in Plutarch.String

type PContravariant' PString Source # 
Instance details

Defined in Plutarch.String

type PCovariant' PString Source # 
Instance details

Defined in Plutarch.String

type PInner PString Source # 
Instance details

Defined in Plutarch.String

type PVariant' PString Source # 
Instance details

Defined in Plutarch.String

type PLifted PString Source # 
Instance details

Defined in Plutarch.String

type Rep (PString s) Source # 
Instance details

Defined in Plutarch.String

type Rep (PString s) = D1 ('MetaData "PString" "Plutarch.String" "plutarch-1.3.0-287WdR4V4qr3NTh5i3Je4I" 'True) (C1 ('MetaCons "PString" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Term s POpaque))))

pencodeUtf8 :: Term s (PString :--> PByteString) Source #

Encode a PString using UTF-8.

Unit type and utilities

data PUnit s Source #

Constructors

PUnit 

Instances

Instances details
PEq (PUnit :: S -> Type) Source # 
Instance details

Defined in Plutarch.Unit

Methods

(#==) :: forall (s :: S). Term s PUnit -> Term s PUnit -> Term s PBool Source #

POrd (PUnit :: S -> Type) Source # 
Instance details

Defined in Plutarch.Unit

PPartialOrd (PUnit :: S -> Type) Source # 
Instance details

Defined in Plutarch.Unit

Methods

(#<=) :: forall (s :: S). Term s PUnit -> Term s PUnit -> Term s PBool Source #

(#<) :: forall (s :: S). Term s PUnit -> Term s PUnit -> Term s PBool Source #

PIsData (PUnit :: S -> Type) Source # 
Instance details

Defined in Plutarch.Builtin

Methods

pfromDataImpl :: forall (s :: S). Term s (PAsData PUnit) -> Term s PUnit Source #

pdataImpl :: forall (s :: S). Term s PUnit -> Term s PData Source #

PlutusType (PUnit :: S -> Type) Source # 
Instance details

Defined in Plutarch.Unit

Methods

pcon' :: forall (s :: S). PUnit s -> Term s (PInner PUnit) Source #

pmatch' :: forall (s :: S) (b :: PType). Term s (PInner PUnit) -> (PUnit s -> Term s b) -> Term s b Source #

PUnsafeLiftDecl (PUnit :: S -> Type) Source # 
Instance details

Defined in Plutarch.Unit

Associated Types

type PLifted PUnit = (r :: Type) Source #

PShow (PUnit :: S -> Type) Source # 
Instance details

Defined in Plutarch.Unit

Methods

pshow' :: forall (s :: S). Bool -> Term s PUnit -> Term s PString Source #

Monoid (Term s (PUnit :: S -> Type)) Source # 
Instance details

Defined in Plutarch.Unit

Semigroup (Term s (PUnit :: S -> Type)) Source # 
Instance details

Defined in Plutarch.Unit

type PContravariant' (PUnit :: S -> Type) Source # 
Instance details

Defined in Plutarch.Unit

type PCovariant' (PUnit :: S -> Type) Source # 
Instance details

Defined in Plutarch.Unit

type PCovariant' (PUnit :: S -> Type)
type PInner (PUnit :: S -> Type) Source # 
Instance details

Defined in Plutarch.Unit

type PInner (PUnit :: S -> Type) = PUnit :: S -> Type
type PVariant' (PUnit :: S -> Type) Source # 
Instance details

Defined in Plutarch.Unit

type PVariant' (PUnit :: S -> Type)
type PLifted (PUnit :: S -> Type) Source # 
Instance details

Defined in Plutarch.Unit

type PLifted (PUnit :: S -> Type) = ()

Common list typeclass and utilities

class PListLike (list :: PType -> PType) where Source #

Plutarch types that behave like lists.

Minimal complete definition

pelimList, pcons, pnil

Associated Types

type PElemConstraint list (a :: PType) :: Constraint Source #

Methods

pelimList :: PElemConstraint list a => (Term s a -> Term s (list a) -> Term s r) -> Term s r -> Term s (list a) -> Term s r Source #

Canonical eliminator for list-likes.

pcons :: PElemConstraint list a => Term s (a :--> (list a :--> list a)) Source #

Cons an element onto an existing list.

pnil :: PElemConstraint list a => Term s (list a) Source #

The empty list

phead :: PElemConstraint list a => Term s (list a :--> a) Source #

Return the first element of a list. Partial, throws an error upon encountering an empty list.

ptail :: PElemConstraint list a => Term s (list a :--> list a) Source #

Take the tail of a list, meaning drop its head. Partial, throws an error upon encountering an empty list.

pnull :: PElemConstraint list a => Term s (list a :--> PBool) Source #

O(1) . Check if a list is empty

Instances

Instances details
PListLike PBuiltinList Source # 
Instance details

Defined in Plutarch.Builtin

Associated Types

type PElemConstraint PBuiltinList a Source #

Methods

pelimList :: forall (a :: PType) (s :: S) (r :: PType). PElemConstraint PBuiltinList a => (Term s a -> Term s (PBuiltinList a) -> Term s r) -> Term s r -> Term s (PBuiltinList a) -> Term s r Source #

pcons :: forall (a :: PType) (s :: S). PElemConstraint PBuiltinList a => Term s (a :--> (PBuiltinList a :--> PBuiltinList a)) Source #

pnil :: forall (a :: PType) (s :: S). PElemConstraint PBuiltinList a => Term s (PBuiltinList a) Source #

phead :: forall (a :: PType) (s :: S). PElemConstraint PBuiltinList a => Term s (PBuiltinList a :--> a) Source #

ptail :: forall (a :: PType) (s :: S). PElemConstraint PBuiltinList a => Term s (PBuiltinList a :--> PBuiltinList a) Source #

pnull :: forall (a :: PType) (s :: S). PElemConstraint PBuiltinList a => Term s (PBuiltinList a :--> PBool) Source #

PListLike PTxList Source # 
Instance details

Defined in Plutarch.FFI

Associated Types

type PElemConstraint PTxList a Source #

Methods

pelimList :: forall (a :: PType) (s :: S) (r :: PType). PElemConstraint PTxList a => (Term s a -> Term s (PTxList a) -> Term s r) -> Term s r -> Term s (PTxList a) -> Term s r Source #

pcons :: forall (a :: PType) (s :: S). PElemConstraint PTxList a => Term s (a :--> (PTxList a :--> PTxList a)) Source #

pnil :: forall (a :: PType) (s :: S). PElemConstraint PTxList a => Term s (PTxList a) Source #

phead :: forall (a :: PType) (s :: S). PElemConstraint PTxList a => Term s (PTxList a :--> a) Source #

ptail :: forall (a :: PType) (s :: S). PElemConstraint PTxList a => Term s (PTxList a :--> PTxList a) Source #

pnull :: forall (a :: PType) (s :: S). PElemConstraint PTxList a => Term s (PTxList a :--> PBool) Source #

PListLike PList Source # 
Instance details

Defined in Plutarch.List

Associated Types

type PElemConstraint PList a Source #

Methods

pelimList :: forall (a :: PType) (s :: S) (r :: PType). PElemConstraint PList a => (Term s a -> Term s (PList a) -> Term s r) -> Term s r -> Term s (PList a) -> Term s r Source #

pcons :: forall (a :: PType) (s :: S). PElemConstraint PList a => Term s (a :--> (PList a :--> PList a)) Source #

pnil :: forall (a :: PType) (s :: S). PElemConstraint PList a => Term s (PList a) Source #

phead :: forall (a :: PType) (s :: S). PElemConstraint PList a => Term s (PList a :--> a) Source #

ptail :: forall (a :: PType) (s :: S). PElemConstraint PList a => Term s (PList a :--> PList a) Source #

pnull :: forall (a :: PType) (s :: S). PElemConstraint PList a => Term s (PList a :--> PBool) Source #

type PIsListLike list a = (PListLike list, PElemConstraint list a) Source #

'PIsListLike list a' constraints list be a PListLike with valid element type, a.

plistEquals :: (PIsListLike list a, PEq a) => Term s (list a :--> (list a :--> PBool)) Source #

O(min(n, m)) . Check if two lists are equal.

pelem :: (PIsListLike list a, PEq a) => Term s (a :--> (list a :--> PBool)) Source #

O(n) . Check if element is in the list

pelemAt :: PIsListLike l a => Term s (PInteger :--> (l a :--> a)) Source #

O(n) . Like Haskell level (!!) but on the Plutarch level, not infix and with arguments reversed, errors if the specified index is greater than or equal to the lists length

plength :: PIsListLike list a => Term s (list a :--> PInteger) Source #

O(n) . Count the number of elements in the list

ptryIndex :: PIsListLike list a => Natural -> Term s (list a) -> Term s a Source #

Index a BuiltinList, throwing an error if the index is out of bounds.

pdrop :: PIsListLike list a => Natural -> Term s (list a) -> Term s (list a) Source #

Drop the first n fields of a List.

The term will be statically generated as repeated applications of ptail, which will be more efficient in many circumstances.

psingleton :: PIsListLike list a => Term s (a :--> list a) Source #

O(1) . Create a singleton list from an element

pconcat :: PIsListLike list a => Term s (list a :--> (list a :--> list a)) Source #

O(n) . Concatenate two lists

Example: > pconcat # psingleton x # psingleton y == plistLiteral [x, y]

pconcat exhibits identities with empty lists such that > forall x. pconcat # pnil # x == x > forall x. pconcat # x # pnil == x

pzipWith :: (PListLike list, PElemConstraint list a, PElemConstraint list b, PElemConstraint list c) => Term s ((a :--> (b :--> c)) :--> (list a :--> (list b :--> list c))) Source #

O(min(n, m)) . Zip two lists together with a passed function.

If the lists are of differing lengths, cut to the shortest.

pzipWith' :: (PListLike list, PElemConstraint list a, PElemConstraint list b, PElemConstraint list c) => (Term s a -> Term s b -> Term s c) -> Term s (list a :--> (list b :--> list c)) Source #

Like pzipWith but with Haskell-level merge function.

pzip :: (PListLike list, PElemConstraint list a, PElemConstraint list b, PElemConstraint list (PPair a b)) => Term s (list a :--> (list b :--> list (PPair a b))) Source #

O(min(n, m)) . Zip two lists together, creating pairs of the elements.

If the lists are of differing lengths, cut to the shortest.

pmap :: (PListLike list, PElemConstraint list a, PElemConstraint list b) => Term s ((a :--> b) :--> (list a :--> list b)) Source #

O(n) . Map a function over a list of elements

pfilter :: PIsListLike list a => Term s ((a :--> PBool) :--> (list a :--> list a)) Source #

O(n) . Filter elements from a list that don't match the predicate.

pfind :: PIsListLike l a => Term s ((a :--> PBool) :--> (l a :--> PMaybe a)) Source #

O(n) . like haskell level find but on plutarch level

precList :: PIsListLike list a => (Term s (list a :--> r) -> Term s a -> Term s (list a) -> Term s r) -> (Term s (list a :--> r) -> Term s r) -> Term s (list a :--> r) Source #

Like pelimList, but with a fixpoint recursion hatch.

pfoldr :: PIsListLike list a => Term s ((a :--> (b :--> b)) :--> (b :--> (list a :--> b))) Source #

O(n) . Fold on a list right-associatively.

pfoldrLazy :: PIsListLike list a => Term s ((a :--> (PDelayed b :--> b)) :--> (b :--> (list a :--> b))) Source #

O(n) . Fold on a list right-associatively, with opportunity for short circuting.

May short circuit when given reducer function is lazy in its second argument.

pfoldl :: PIsListLike list a => Term s ((b :--> (a :--> b)) :--> (b :--> (list a :--> b))) Source #

O(n) . Fold on a list left-associatively.

pall :: PIsListLike list a => Term s ((a :--> PBool) :--> (list a :--> PBool)) Source #

O(n) . Check that predicate holds for all elements in a list.

pany :: PIsListLike list a => Term s ((a :--> PBool) :--> (list a :--> PBool)) Source #

O(n) . Check that predicate holds for any element in a list.

(#!!) :: PIsListLike l a => Term s (l a) -> Term s PInteger -> Term s a Source #

O(n) . Like Haskell level (!!) but on the plutarch level

Scott encoded list type

data PList (a :: PType) (s :: S) Source #

Constructors

PSCons (Term s a) (Term s (PList a)) 
PSNil 

Instances

Instances details
PListLike PList Source # 
Instance details

Defined in Plutarch.List

Associated Types

type PElemConstraint PList a Source #

Methods

pelimList :: forall (a :: PType) (s :: S) (r :: PType). PElemConstraint PList a => (Term s a -> Term s (PList a) -> Term s r) -> Term s r -> Term s (PList a) -> Term s r Source #

pcons :: forall (a :: PType) (s :: S). PElemConstraint PList a => Term s (a :--> (PList a :--> PList a)) Source #

pnil :: forall (a :: PType) (s :: S). PElemConstraint PList a => Term s (PList a) Source #

phead :: forall (a :: PType) (s :: S). PElemConstraint PList a => Term s (PList a :--> a) Source #

ptail :: forall (a :: PType) (s :: S). PElemConstraint PList a => Term s (PList a :--> PList a) Source #

pnull :: forall (a :: PType) (s :: S). PElemConstraint PList a => Term s (PList a :--> PBool) Source #

PEq a => PEq (PList a) Source # 
Instance details

Defined in Plutarch.List

Methods

(#==) :: forall (s :: S). Term s (PList a) -> Term s (PList a) -> Term s PBool Source #

DerivePlutusType (PList a) Source # 
Instance details

Defined in Plutarch.List

Associated Types

type DPTStrat (PList a) Source #

PlutusType (PList a) Source # 
Instance details

Defined in Plutarch.List

Associated Types

type PInner (PList a) :: PType Source #

type PCovariant' (PList a) Source #

type PContravariant' (PList a) Source #

type PVariant' (PList a) Source #

Methods

pcon' :: forall (s :: S). PList a s -> Term s (PInner (PList a)) Source #

pmatch' :: forall (s :: S) (b :: PType). Term s (PInner (PList a)) -> (PList a s -> Term s b) -> Term s b Source #

PShow a => PShow (PList a) Source # 
Instance details

Defined in Plutarch.List

Methods

pshow' :: forall (s :: S). Bool -> Term s (PList a) -> Term s PString Source #

Generic (PList a s) Source # 
Instance details

Defined in Plutarch.List

Associated Types

type Rep (PList a s) :: Type -> Type Source #

Methods

from :: PList a s -> Rep (PList a s) x Source #

to :: Rep (PList a s) x -> PList a s Source #

type PElemConstraint PList _1 Source # 
Instance details

Defined in Plutarch.List

type PElemConstraint PList _1 = ()
type DPTStrat (PList a) Source # 
Instance details

Defined in Plutarch.List

type PContravariant' (PList a) Source # 
Instance details

Defined in Plutarch.List

type PCovariant' (PList a) Source # 
Instance details

Defined in Plutarch.List

type PInner (PList a) Source # 
Instance details

Defined in Plutarch.List

type PVariant' (PList a) Source # 
Instance details

Defined in Plutarch.List

type PVariant' (PList a)
type Rep (PList a s) Source # 
Instance details

Defined in Plutarch.List

type Rep (PList a s) = D1 ('MetaData "PList" "Plutarch.List" "plutarch-1.3.0-287WdR4V4qr3NTh5i3Je4I" 'False) (C1 ('MetaCons "PSCons" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Term s a)) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Term s (PList a)))) :+: C1 ('MetaCons "PSNil" 'PrefixI 'False) (U1 :: Type -> Type))

Scott encoded maybe type and utilities

data PMaybe (a :: PType) (s :: S) Source #

Plutus Maybe type, with Scott-encoded repr

Constructors

PJust (Term s a) 
PNothing 

Instances

Instances details
PEq a => PEq (PMaybe a) Source # 
Instance details

Defined in Plutarch.Maybe

Methods

(#==) :: forall (s :: S). Term s (PMaybe a) -> Term s (PMaybe a) -> Term s PBool Source #

DerivePlutusType (PMaybe a) Source # 
Instance details

Defined in Plutarch.Maybe

Associated Types

type DPTStrat (PMaybe a) Source #

PlutusType (PMaybe a) Source # 
Instance details

Defined in Plutarch.Maybe

Associated Types

type PInner (PMaybe a) :: PType Source #

type PCovariant' (PMaybe a) Source #

type PContravariant' (PMaybe a) Source #

type PVariant' (PMaybe a) Source #

Methods

pcon' :: forall (s :: S). PMaybe a s -> Term s (PInner (PMaybe a)) Source #

pmatch' :: forall (s :: S) (b :: PType). Term s (PInner (PMaybe a)) -> (PMaybe a s -> Term s b) -> Term s b Source #

PShow a => PShow (PMaybe a) Source # 
Instance details

Defined in Plutarch.Maybe

Methods

pshow' :: forall (s :: S). Bool -> Term s (PMaybe a) -> Term s PString Source #

Generic (PMaybe a s) Source # 
Instance details

Defined in Plutarch.Maybe

Associated Types

type Rep (PMaybe a s) :: Type -> Type Source #

Methods

from :: PMaybe a s -> Rep (PMaybe a s) x Source #

to :: Rep (PMaybe a s) x -> PMaybe a s Source #

type DPTStrat (PMaybe a) Source # 
Instance details

Defined in Plutarch.Maybe

type PContravariant' (PMaybe a) Source # 
Instance details

Defined in Plutarch.Maybe

type PCovariant' (PMaybe a) Source # 
Instance details

Defined in Plutarch.Maybe

type PInner (PMaybe a) Source # 
Instance details

Defined in Plutarch.Maybe

type PVariant' (PMaybe a) Source # 
Instance details

Defined in Plutarch.Maybe

type PVariant' (PMaybe a)
type Rep (PMaybe a s) Source # 
Instance details

Defined in Plutarch.Maybe

type Rep (PMaybe a s) = D1 ('MetaData "PMaybe" "Plutarch.Maybe" "plutarch-1.3.0-287WdR4V4qr3NTh5i3Je4I" 'False) (C1 ('MetaCons "PJust" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Term s a))) :+: C1 ('MetaCons "PNothing" 'PrefixI 'False) (U1 :: Type -> Type))

Scott encoded either type and utilities

data PEither (a :: PType) (b :: PType) (s :: S) Source #

Constructors

PLeft (Term s a) 
PRight (Term s b) 

Instances

Instances details
(PEq a, PEq b) => PEq (PEither a b) Source # 
Instance details

Defined in Plutarch.Either

Methods

(#==) :: forall (s :: S). Term s (PEither a b) -> Term s (PEither a b) -> Term s PBool Source #

DerivePlutusType (PEither a b) Source # 
Instance details

Defined in Plutarch.Either

Associated Types

type DPTStrat (PEither a b) Source #

PlutusType (PEither a b) Source # 
Instance details

Defined in Plutarch.Either

Associated Types

type PInner (PEither a b) :: PType Source #

type PCovariant' (PEither a b) Source #

type PContravariant' (PEither a b) Source #

type PVariant' (PEither a b) Source #

Methods

pcon' :: forall (s :: S). PEither a b s -> Term s (PInner (PEither a b)) Source #

pmatch' :: forall (s :: S) (b0 :: PType). Term s (PInner (PEither a b)) -> (PEither a b s -> Term s b0) -> Term s b0 Source #

(PShow a, PShow b) => PShow (PEither a b) Source # 
Instance details

Defined in Plutarch.Either

Methods

pshow' :: forall (s :: S). Bool -> Term s (PEither a b) -> Term s PString Source #

Generic (PEither a b s) Source # 
Instance details

Defined in Plutarch.Either

Associated Types

type Rep (PEither a b s) :: Type -> Type Source #

Methods

from :: PEither a b s -> Rep (PEither a b s) x Source #

to :: Rep (PEither a b s) x -> PEither a b s Source #

type DPTStrat (PEither a b) Source # 
Instance details

Defined in Plutarch.Either

type PContravariant' (PEither a b) Source # 
Instance details

Defined in Plutarch.Either

type PCovariant' (PEither a b) Source # 
Instance details

Defined in Plutarch.Either

type PCovariant' (PEither a b)
type PInner (PEither a b) Source # 
Instance details

Defined in Plutarch.Either

type PInner (PEither a b) = DerivedPInner (DPTStrat (PEither a b)) (PEither a b)
type PVariant' (PEither a b) Source # 
Instance details

Defined in Plutarch.Either

type PVariant' (PEither a b)
type Rep (PEither a b s) Source # 
Instance details

Defined in Plutarch.Either

type Rep (PEither a b s) = D1 ('MetaData "PEither" "Plutarch.Either" "plutarch-1.3.0-287WdR4V4qr3NTh5i3Je4I" 'False) (C1 ('MetaCons "PLeft" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Term s a))) :+: C1 ('MetaCons "PRight" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Term s b))))

Scott encoded pair type and utilities

data PPair (a :: PType) (b :: PType) (s :: S) Source #

Plutus encoding of Pairs.

Note: This is represented differently than BuiltinPair. It is scott-encoded.

Constructors

PPair (Term s a) (Term s b) 

Instances

Instances details
(PEq a, PEq b) => PEq (PPair a b) Source # 
Instance details

Defined in Plutarch.Pair

Methods

(#==) :: forall (s :: S). Term s (PPair a b) -> Term s (PPair a b) -> Term s PBool Source #

DerivePlutusType (PPair a b) Source # 
Instance details

Defined in Plutarch.Pair

Associated Types

type DPTStrat (PPair a b) Source #

PlutusType (PPair a b) Source # 
Instance details

Defined in Plutarch.Pair

Associated Types

type PInner (PPair a b) :: PType Source #

type PCovariant' (PPair a b) Source #

type PContravariant' (PPair a b) Source #

type PVariant' (PPair a b) Source #

Methods

pcon' :: forall (s :: S). PPair a b s -> Term s (PInner (PPair a b)) Source #

pmatch' :: forall (s :: S) (b0 :: PType). Term s (PInner (PPair a b)) -> (PPair a b s -> Term s b0) -> Term s b0 Source #

(PShow a, PShow b) => PShow (PPair a b) Source # 
Instance details

Defined in Plutarch.Pair

Methods

pshow' :: forall (s :: S). Bool -> Term s (PPair a b) -> Term s PString Source #

Generic (PPair a b s) Source # 
Instance details

Defined in Plutarch.Pair

Associated Types

type Rep (PPair a b s) :: Type -> Type Source #

Methods

from :: PPair a b s -> Rep (PPair a b s) x Source #

to :: Rep (PPair a b s) x -> PPair a b s Source #

type DPTStrat (PPair a b) Source # 
Instance details

Defined in Plutarch.Pair

type PContravariant' (PPair a b) Source # 
Instance details

Defined in Plutarch.Pair

type PCovariant' (PPair a b) Source # 
Instance details

Defined in Plutarch.Pair

type PCovariant' (PPair a b)
type PInner (PPair a b) Source # 
Instance details

Defined in Plutarch.Pair

type PInner (PPair a b) = DerivedPInner (DPTStrat (PPair a b)) (PPair a b)
type PVariant' (PPair a b) Source # 
Instance details

Defined in Plutarch.Pair

type PVariant' (PPair a b)
type Rep (PPair a b s) Source # 
Instance details

Defined in Plutarch.Pair

type Rep (PPair a b s) = D1 ('MetaData "PPair" "Plutarch.Pair" "plutarch-1.3.0-287WdR4V4qr3NTh5i3Je4I" 'False) (C1 ('MetaCons "PPair" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Term s a)) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Term s b))))

Opaque type

newtype POpaque s Source #

An Arbitrary Term with an unknown type

Constructors

POpaque (Term s POpaque) 

Instances

Instances details
PlutusType POpaque Source # 
Instance details

Defined in Plutarch.Internal.Other

Methods

pcon' :: forall (s :: S). POpaque s -> Term s (PInner POpaque) Source #

pmatch' :: forall (s :: S) (b :: PType). Term s (PInner POpaque) -> (POpaque s -> Term s b) -> Term s b Source #

type PContravariant' POpaque Source # 
Instance details

Defined in Plutarch.Internal.Other

type PCovariant' POpaque Source # 
Instance details

Defined in Plutarch.Internal.Other

type PInner POpaque Source # 
Instance details

Defined in Plutarch.Internal.Other

type PVariant' POpaque Source # 
Instance details

Defined in Plutarch.Internal.Other

type PVariant' POpaque = ()

popaque :: Term s a -> Term s POpaque Source #

Erase the type of a Term

Builtin types and utilities

data PData (s :: S) Source #

Instances

Instances details
PEq PData Source # 
Instance details

Defined in Plutarch.Builtin

Methods

(#==) :: forall (s :: S). Term s PData -> Term s PData -> Term s PBool Source #

PIsData PData Source # 
Instance details

Defined in Plutarch.Builtin

Methods

pfromDataImpl :: forall (s :: S). Term s (PAsData PData) -> Term s PData Source #

pdataImpl :: forall (s :: S). Term s PData -> Term s PData Source #

PlutusType PData Source # 
Instance details

Defined in Plutarch.Builtin

Methods

pcon' :: forall (s :: S). PData s -> Term s (PInner PData) Source #

pmatch' :: forall (s :: S) (b :: PType). Term s (PInner PData) -> (PData s -> Term s b) -> Term s b Source #

PUnsafeLiftDecl PData Source # 
Instance details

Defined in Plutarch.Builtin

Associated Types

type PLifted PData = (r :: Type) Source #

PShow PData Source # 
Instance details

Defined in Plutarch.Builtin

Methods

pshow' :: forall (s :: S). Bool -> Term s PData -> Term s PString Source #

PTryFrom PData PAddress Source # 
Instance details

Defined in Plutarch.Api.V1.Address

Associated Types

type PTryFromExcess PData PAddress :: PType Source #

Methods

ptryFrom' :: forall (s :: S) (r :: PType). Term s PData -> ((Term s PAddress, Reduce (PTryFromExcess PData PAddress s)) -> Term s r) -> Term s r Source #

PTryFrom PData PCredential Source # 
Instance details

Defined in Plutarch.Api.V1.Address

Associated Types

type PTryFromExcess PData PCredential :: PType Source #

Methods

ptryFrom' :: forall (s :: S) (r :: PType). Term s PData -> ((Term s PCredential, Reduce (PTryFromExcess PData PCredential s)) -> Term s r) -> Term s r Source #

PTryFrom PData PStakingCredential Source # 
Instance details

Defined in Plutarch.Api.V1.Address

Methods

ptryFrom' :: forall (s :: S) (r :: PType). Term s PData -> ((Term s PStakingCredential, Reduce (PTryFromExcess PData PStakingCredential s)) -> Term s r) -> Term s r Source #

PTryFrom PData PTxId Source # 
Instance details

Defined in Plutarch.Api.V1.Tx

Associated Types

type PTryFromExcess PData PTxId :: PType Source #

Methods

ptryFrom' :: forall (s :: S) (r :: PType). Term s PData -> ((Term s PTxId, Reduce (PTryFromExcess PData PTxId s)) -> Term s r) -> Term s r Source #

PTryFrom PData PTxOutRef Source # 
Instance details

Defined in Plutarch.Api.V1.Tx

Associated Types

type PTryFromExcess PData PTxOutRef :: PType Source #

Methods

ptryFrom' :: forall (s :: S) (r :: PType). Term s PData -> ((Term s PTxOutRef, Reduce (PTryFromExcess PData PTxOutRef s)) -> Term s r) -> Term s r Source #

PTryFrom PData PData Source # 
Instance details

Defined in Plutarch.Builtin

Associated Types

type PTryFromExcess PData PData :: PType Source #

Methods

ptryFrom' :: forall (s :: S) (r :: PType). Term s PData -> ((Term s PData, Reduce (PTryFromExcess PData PData s)) -> Term s r) -> Term s r Source #

PTryFrom PData a => PTryFrom PData (PMaybeData a) Source # 
Instance details

Defined in Plutarch.Api.V1.Maybe

Associated Types

type PTryFromExcess PData (PMaybeData a) :: PType Source #

Methods

ptryFrom' :: forall (s :: S) (r :: PType). Term s PData -> ((Term s (PMaybeData a), Reduce (PTryFromExcess PData (PMaybeData a) s)) -> Term s r) -> Term s r Source #

PTryFrom PData (PAsData PAddress) Source # 
Instance details

Defined in Plutarch.Api.V1.Address

Associated Types

type PTryFromExcess PData (PAsData PAddress) :: PType Source #

Methods

ptryFrom' :: forall (s :: S) (r :: PType). Term s PData -> ((Term s (PAsData PAddress), Reduce (PTryFromExcess PData (PAsData PAddress) s)) -> Term s r) -> Term s r Source #

PTryFrom PData (PAsData PCredential) Source # 
Instance details

Defined in Plutarch.Api.V1.Address

Methods

ptryFrom' :: forall (s :: S) (r :: PType). Term s PData -> ((Term s (PAsData PCredential), Reduce (PTryFromExcess PData (PAsData PCredential) s)) -> Term s r) -> Term s r Source #

PTryFrom PData (PAsData PStakingCredential) Source # 
Instance details

Defined in Plutarch.Api.V1.Address

Methods

ptryFrom' :: forall (s :: S) (r :: PType). Term s PData -> ((Term s (PAsData PStakingCredential), Reduce (PTryFromExcess PData (PAsData PStakingCredential) s)) -> Term s r) -> Term s r Source #

(POrd k, PIsData k, PIsData v, PTryFrom PData (PAsData k), PTryFrom PData (PAsData v)) => PTryFrom PData (PAsData (PMap 'Sorted k v)) Source # 
Instance details

Defined in Plutarch.Api.V1.AssocMap

Associated Types

type PTryFromExcess PData (PAsData (PMap 'Sorted k v)) :: PType Source #

Methods

ptryFrom' :: forall (s :: S) (r :: PType). Term s PData -> ((Term s (PAsData (PMap 'Sorted k v)), Reduce (PTryFromExcess PData (PAsData (PMap 'Sorted k v)) s)) -> Term s r) -> Term s r Source #

(PTryFrom PData (PAsData k), PTryFrom PData (PAsData v)) => PTryFrom PData (PAsData (PMap 'Unsorted k v)) Source # 
Instance details

Defined in Plutarch.Api.V1.AssocMap

Associated Types

type PTryFromExcess PData (PAsData (PMap 'Unsorted k v)) :: PType Source #

Methods

ptryFrom' :: forall (s :: S) (r :: PType). Term s PData -> ((Term s (PAsData (PMap 'Unsorted k v)), Reduce (PTryFromExcess PData (PAsData (PMap 'Unsorted k v)) s)) -> Term s r) -> Term s r Source #

PTryFrom PData (PAsData PPubKeyHash) Source # 
Instance details

Defined in Plutarch.Api.V1.Crypto

Methods

ptryFrom' :: forall (s :: S) (r :: PType). Term s PData -> ((Term s (PAsData PPubKeyHash), Reduce (PTryFromExcess PData (PAsData PPubKeyHash) s)) -> Term s r) -> Term s r Source #

PTryFrom PData a => PTryFrom PData (PAsData (PMaybeData a)) Source # 
Instance details

Defined in Plutarch.Api.V1.Maybe

Associated Types

type PTryFromExcess PData (PAsData (PMaybeData a)) :: PType Source #

Methods

ptryFrom' :: forall (s :: S) (r :: PType). Term s PData -> ((Term s (PAsData (PMaybeData a)), Reduce (PTryFromExcess PData (PAsData (PMaybeData a)) s)) -> Term s r) -> Term s r Source #

PTryFrom PData (PAsData PScriptHash) Source # 
Instance details

Defined in Plutarch.Api.V1.Scripts

Methods

ptryFrom' :: forall (s :: S) (r :: PType). Term s PData -> ((Term s (PAsData PScriptHash), Reduce (PTryFromExcess PData (PAsData PScriptHash) s)) -> Term s r) -> Term s r Source #

PTryFrom PData (PAsData PPOSIXTime) Source # 
Instance details

Defined in Plutarch.Api.V1.Time

Associated Types

type PTryFromExcess PData (PAsData PPOSIXTime) :: PType Source #

Methods

ptryFrom' :: forall (s :: S) (r :: PType). Term s PData -> ((Term s (PAsData PPOSIXTime), Reduce (PTryFromExcess PData (PAsData PPOSIXTime) s)) -> Term s r) -> Term s r Source #

PTryFrom PData (PAsData PTxId) Source # 
Instance details

Defined in Plutarch.Api.V1.Tx

Associated Types

type PTryFromExcess PData (PAsData PTxId) :: PType Source #

Methods

ptryFrom' :: forall (s :: S) (r :: PType). Term s PData -> ((Term s (PAsData PTxId), Reduce (PTryFromExcess PData (PAsData PTxId) s)) -> Term s r) -> Term s r Source #

PTryFrom PData (PAsData PTxOutRef) Source # 
Instance details

Defined in Plutarch.Api.V1.Tx

Associated Types

type PTryFromExcess PData (PAsData PTxOutRef) :: PType Source #

Methods

ptryFrom' :: forall (s :: S) (r :: PType). Term s PData -> ((Term s (PAsData PTxOutRef), Reduce (PTryFromExcess PData (PAsData PTxOutRef) s)) -> Term s r) -> Term s r Source #

PTryFrom PData (PAsData PCurrencySymbol) Source # 
Instance details

Defined in Plutarch.Api.V1.Value

Methods

ptryFrom' :: forall (s :: S) (r :: PType). Term s PData -> ((Term s (PAsData PCurrencySymbol), Reduce (PTryFromExcess PData (PAsData PCurrencySymbol) s)) -> Term s r) -> Term s r Source #

PTryFrom PData (PAsData PTokenName) Source # 
Instance details

Defined in Plutarch.Api.V1.Value

Associated Types

type PTryFromExcess PData (PAsData PTokenName) :: PType Source #

Methods

ptryFrom' :: forall (s :: S) (r :: PType). Term s PData -> ((Term s (PAsData PTokenName), Reduce (PTryFromExcess PData (PAsData PTokenName) s)) -> Term s r) -> Term s r Source #

PTryFrom PData (PAsData (PValue 'Sorted 'NoGuarantees)) Source # 
Instance details

Defined in Plutarch.Api.V1.Value

Methods

ptryFrom' :: forall (s :: S) (r :: PType). Term s PData -> ((Term s (PAsData (PValue 'Sorted 'NoGuarantees)), Reduce (PTryFromExcess PData (PAsData (PValue 'Sorted 'NoGuarantees)) s)) -> Term s r) -> Term s r Source #

PTryFrom PData (PAsData (PValue 'Sorted 'NonZero)) Source # 
Instance details

Defined in Plutarch.Api.V1.Value

Associated Types

type PTryFromExcess PData (PAsData (PValue 'Sorted 'NonZero)) :: PType Source #

Methods

ptryFrom' :: forall (s :: S) (r :: PType). Term s PData -> ((Term s (PAsData (PValue 'Sorted 'NonZero)), Reduce (PTryFromExcess PData (PAsData (PValue 'Sorted 'NonZero)) s)) -> Term s r) -> Term s r Source #

PTryFrom PData (PAsData (PValue 'Sorted 'Positive)) Source # 
Instance details

Defined in Plutarch.Api.V1.Value

Methods

ptryFrom' :: forall (s :: S) (r :: PType). Term s PData -> ((Term s (PAsData (PValue 'Sorted 'Positive)), Reduce (PTryFromExcess PData (PAsData (PValue 'Sorted 'Positive)) s)) -> Term s r) -> Term s r Source #

PTryFrom PData (PAsData (PValue 'Unsorted 'NoGuarantees)) Source # 
Instance details

Defined in Plutarch.Api.V1.Value

Methods

ptryFrom' :: forall (s :: S) (r :: PType). Term s PData -> ((Term s (PAsData (PValue 'Unsorted 'NoGuarantees)), Reduce (PTryFromExcess PData (PAsData (PValue 'Unsorted 'NoGuarantees)) s)) -> Term s r) -> Term s r Source #

PTryFrom PData (PAsData (PValue 'Unsorted 'NonZero)) Source # 
Instance details

Defined in Plutarch.Api.V1.Value

Methods

ptryFrom' :: forall (s :: S) (r :: PType). Term s PData -> ((Term s (PAsData (PValue 'Unsorted 'NonZero)), Reduce (PTryFromExcess PData (PAsData (PValue 'Unsorted 'NonZero)) s)) -> Term s r) -> Term s r Source #

PTryFrom PData (PAsData (PValue 'Unsorted 'Positive)) Source # 
Instance details

Defined in Plutarch.Api.V1.Value

Methods

ptryFrom' :: forall (s :: S) (r :: PType). Term s PData -> ((Term s (PAsData (PValue 'Unsorted 'Positive)), Reduce (PTryFromExcess PData (PAsData (PValue 'Unsorted 'Positive)) s)) -> Term s r) -> Term s r Source #

(PTryFrom PData (PAsData a), PIsData a) => PTryFrom PData (PAsData (PBuiltinList (PAsData a))) Source #

Recover a `PBuiltinList (PAsData a)`

Instance details

Defined in Plutarch.Builtin

Associated Types

type PTryFromExcess PData (PAsData (PBuiltinList (PAsData a))) :: PType Source #

Methods

ptryFrom' :: forall (s :: S) (r :: PType). Term s PData -> ((Term s (PAsData (PBuiltinList (PAsData a))), Reduce (PTryFromExcess PData (PAsData (PBuiltinList (PAsData a))) s)) -> Term s r) -> Term s r Source #

PTryFrom PData (PAsData (PBuiltinList PData)) Source #

This verifies a list to be indeed a list but doesn't recover the inner data use this instance instead of the one for `PData (PAsData (PBuiltinList (PAsData a)))` as this is O(1) instead of O(n)

Instance details

Defined in Plutarch.Builtin

Methods

ptryFrom' :: forall (s :: S) (r :: PType). Term s PData -> ((Term s (PAsData (PBuiltinList PData)), Reduce (PTryFromExcess PData (PAsData (PBuiltinList PData)) s)) -> Term s r) -> Term s r Source #

(PTryFrom PData a, a ~ PAsData a', PIsData a', PTryFrom PData b, b ~ PAsData b', PIsData b') => PTryFrom PData (PAsData (PBuiltinPair a b)) Source #

Recover a `PAsData (PBuiltinPair a b)`

Instance details

Defined in Plutarch.Builtin

Associated Types

type PTryFromExcess PData (PAsData (PBuiltinPair a b)) :: PType Source #

Methods

ptryFrom' :: forall (s :: S) (r :: PType). Term s PData -> ((Term s (PAsData (PBuiltinPair a b)), Reduce (PTryFromExcess PData (PAsData (PBuiltinPair a b)) s)) -> Term s r) -> Term s r Source #

PTryFrom PData (PAsData PData) Source # 
Instance details

Defined in Plutarch.Builtin

Associated Types

type PTryFromExcess PData (PAsData PData) :: PType Source #

Methods

ptryFrom' :: forall (s :: S) (r :: PType). Term s PData -> ((Term s (PAsData PData), Reduce (PTryFromExcess PData (PAsData PData) s)) -> Term s r) -> Term s r Source #

PTryFrom PData (PAsData PByteString) Source # 
Instance details

Defined in Plutarch.Builtin

Methods

ptryFrom' :: forall (s :: S) (r :: PType). Term s PData -> ((Term s (PAsData PByteString), Reduce (PTryFromExcess PData (PAsData PByteString) s)) -> Term s r) -> Term s r Source #

(PTryFrom (PBuiltinList PData) (PDataRecord as), PTryFromExcess (PBuiltinList PData) (PDataRecord as) ~ HRecP ase) => PTryFrom PData (PAsData (PDataRecord as)) Source # 
Instance details

Defined in Plutarch.DataRepr.Internal

Associated Types

type PTryFromExcess PData (PAsData (PDataRecord as)) :: PType Source #

Methods

ptryFrom' :: forall (s :: S) (r :: PType). Term s PData -> ((Term s (PAsData (PDataRecord as)), Reduce (PTryFromExcess PData (PAsData (PDataRecord as)) s)) -> Term s r) -> Term s r Source #

PTryFrom PData (PDataSum ys) => PTryFrom PData (PAsData (PDataSum ys)) Source # 
Instance details

Defined in Plutarch.DataRepr.Internal

Associated Types

type PTryFromExcess PData (PAsData (PDataSum ys)) :: PType Source #

Methods

ptryFrom' :: forall (s :: S) (r :: PType). Term s PData -> ((Term s (PAsData (PDataSum ys)), Reduce (PTryFromExcess PData (PAsData (PDataSum ys)) s)) -> Term s r) -> Term s r Source #

PTryFrom PData (PAsData PInteger) Source # 
Instance details

Defined in Plutarch.Builtin

Associated Types

type PTryFromExcess PData (PAsData PInteger) :: PType Source #

Methods

ptryFrom' :: forall (s :: S) (r :: PType). Term s PData -> ((Term s (PAsData PInteger), Reduce (PTryFromExcess PData (PAsData PInteger) s)) -> Term s r) -> Term s r Source #

PTryFrom PData (PAsData PPositive) Source # 
Instance details

Defined in Plutarch.Positive

Associated Types

type PTryFromExcess PData (PAsData PPositive) :: PType Source #

Methods

ptryFrom' :: forall (s :: S) (r :: PType). Term s PData -> ((Term s (PAsData PPositive), Reduce (PTryFromExcess PData (PAsData PPositive) s)) -> Term s r) -> Term s r Source #

PTryFrom PData (PAsData PRational) Source #

NOTE: This instance produces a verified PPositive as the excess output.

Instance details

Defined in Plutarch.Rational

Associated Types

type PTryFromExcess PData (PAsData PRational) :: PType Source #

Methods

ptryFrom' :: forall (s :: S) (r :: PType). Term s PData -> ((Term s (PAsData PRational), Reduce (PTryFromExcess PData (PAsData PRational) s)) -> Term s r) -> Term s r Source #

SumValidation 0 ys => PTryFrom PData (PDataSum ys) Source # 
Instance details

Defined in Plutarch.DataRepr.Internal

Associated Types

type PTryFromExcess PData (PDataSum ys) :: PType Source #

Methods

ptryFrom' :: forall (s :: S) (r :: PType). Term s PData -> ((Term s (PDataSum ys), Reduce (PTryFromExcess PData (PDataSum ys) s)) -> Term s r) -> Term s r Source #

(Helper2 (PSubtype' PData pty) pty, PTryFrom (PBuiltinList PData) (PDataRecord as), PTryFromExcess (PBuiltinList PData) (PDataRecord as) ~ HRecP ase) => PTryFrom (PBuiltinList PData) (PDataRecord ((name := pty) ': as)) Source # 
Instance details

Defined in Plutarch.DataRepr.Internal

Associated Types

type PTryFromExcess (PBuiltinList PData) (PDataRecord ((name := pty) ': as)) :: PType Source #

Methods

ptryFrom' :: forall (s :: S) (r :: PType). Term s (PBuiltinList PData) -> ((Term s (PDataRecord ((name := pty) ': as)), Reduce (PTryFromExcess (PBuiltinList PData) (PDataRecord ((name := pty) ': as)) s)) -> Term s r) -> Term s r Source #

PTryFrom (PBuiltinList PData) (PDataRecord ('[] :: [PLabeledType])) Source # 
Instance details

Defined in Plutarch.DataRepr.Internal

Associated Types

type PTryFromExcess (PBuiltinList PData) (PDataRecord '[]) :: PType Source #

Methods

ptryFrom' :: forall (s :: S) (r :: PType). Term s (PBuiltinList PData) -> ((Term s (PDataRecord '[]), Reduce (PTryFromExcess (PBuiltinList PData) (PDataRecord '[]) s)) -> Term s r) -> Term s r Source #

PIsData (PBuiltinPair PData PData) Source # 
Instance details

Defined in Plutarch.Builtin

PIsData (PBuiltinPair PInteger (PBuiltinList PData)) Source # 
Instance details

Defined in Plutarch.Builtin

type PContravariant' PData Source # 
Instance details

Defined in Plutarch.Builtin

type PCovariant' PData Source # 
Instance details

Defined in Plutarch.Builtin

type PCovariant' PData = ()
type PInner PData Source # 
Instance details

Defined in Plutarch.Builtin

type PVariant' PData Source # 
Instance details

Defined in Plutarch.Builtin

type PVariant' PData = ()
type PLifted PData Source # 
Instance details

Defined in Plutarch.Builtin

type PTryFromExcess PData PAddress Source # 
Instance details

Defined in Plutarch.Api.V1.Address

type PTryFromExcess PData PCredential Source # 
Instance details

Defined in Plutarch.Api.V1.Address

type PTryFromExcess PData PStakingCredential Source # 
Instance details

Defined in Plutarch.Api.V1.Address

type PTryFromExcess PData PTxId Source # 
Instance details

Defined in Plutarch.Api.V1.Tx

type PTryFromExcess PData PTxOutRef Source # 
Instance details

Defined in Plutarch.Api.V1.Tx

type PTryFromExcess PData PData Source # 
Instance details

Defined in Plutarch.Builtin

type PTryFromExcess PData (PMaybeData a) Source # 
Instance details

Defined in Plutarch.Api.V1.Maybe

type PTryFromExcess PData (PAsData PAddress) Source # 
Instance details

Defined in Plutarch.Api.V1.Address

type PTryFromExcess PData (PAsData PCredential) Source # 
Instance details

Defined in Plutarch.Api.V1.Address

type PTryFromExcess PData (PAsData PStakingCredential) Source # 
Instance details

Defined in Plutarch.Api.V1.Address

type PTryFromExcess PData (PAsData (PMap 'Sorted k v)) Source # 
Instance details

Defined in Plutarch.Api.V1.AssocMap

type PTryFromExcess PData (PAsData (PMap 'Unsorted k v)) Source # 
Instance details

Defined in Plutarch.Api.V1.AssocMap

type PTryFromExcess PData (PAsData PPubKeyHash) Source # 
Instance details

Defined in Plutarch.Api.V1.Crypto

type PTryFromExcess PData (PAsData (PMaybeData a)) Source # 
Instance details

Defined in Plutarch.Api.V1.Maybe

type PTryFromExcess PData (PAsData PScriptHash) Source # 
Instance details

Defined in Plutarch.Api.V1.Scripts

type PTryFromExcess PData (PAsData PPOSIXTime) Source # 
Instance details

Defined in Plutarch.Api.V1.Time

type PTryFromExcess PData (PAsData PTxId) Source # 
Instance details

Defined in Plutarch.Api.V1.Tx

type PTryFromExcess PData (PAsData PTxOutRef) Source # 
Instance details

Defined in Plutarch.Api.V1.Tx

type PTryFromExcess PData (PAsData PCurrencySymbol) Source # 
Instance details

Defined in Plutarch.Api.V1.Value

type PTryFromExcess PData (PAsData PTokenName) Source # 
Instance details

Defined in Plutarch.Api.V1.Value

type PTryFromExcess PData (PAsData (PValue 'Sorted 'NoGuarantees)) Source # 
Instance details

Defined in Plutarch.Api.V1.Value

type PTryFromExcess PData (PAsData (PValue 'Sorted 'NonZero)) Source # 
Instance details

Defined in Plutarch.Api.V1.Value

type PTryFromExcess PData (PAsData (PValue 'Sorted 'Positive)) Source # 
Instance details

Defined in Plutarch.Api.V1.Value

type PTryFromExcess PData (PAsData (PValue 'Unsorted 'NoGuarantees)) Source # 
Instance details

Defined in Plutarch.Api.V1.Value

type PTryFromExcess PData (PAsData (PValue 'Unsorted 'NonZero)) Source # 
Instance details

Defined in Plutarch.Api.V1.Value

type PTryFromExcess PData (PAsData (PValue 'Unsorted 'Positive)) Source # 
Instance details

Defined in Plutarch.Api.V1.Value

type PTryFromExcess PData (PAsData (PBuiltinList (PAsData a))) Source # 
Instance details

Defined in Plutarch.Builtin

type PTryFromExcess PData (PAsData (PBuiltinList PData)) Source # 
Instance details

Defined in Plutarch.Builtin

type PTryFromExcess PData (PAsData (PBuiltinPair a b)) Source # 
Instance details

Defined in Plutarch.Builtin

type PTryFromExcess PData (PAsData PData) Source # 
Instance details

Defined in Plutarch.Builtin

type PTryFromExcess PData (PAsData PByteString) Source # 
Instance details

Defined in Plutarch.Builtin

type PTryFromExcess PData (PAsData (PDataRecord as)) Source # 
Instance details

Defined in Plutarch.DataRepr.Internal

type PTryFromExcess PData (PAsData (PDataSum ys)) Source # 
Instance details

Defined in Plutarch.DataRepr.Internal

type PTryFromExcess PData (PAsData PInteger) Source # 
Instance details

Defined in Plutarch.Builtin

type PTryFromExcess PData (PAsData PPositive) Source # 
Instance details

Defined in Plutarch.Positive

type PTryFromExcess PData (PAsData PRational) Source # 
Instance details

Defined in Plutarch.Rational

type PTryFromExcess PData (PDataSum ys) Source # 
Instance details

Defined in Plutarch.DataRepr.Internal

type PTryFromExcess PData (PDataSum ys) = Const () :: S -> Type
type PTryFromExcess (PBuiltinList PData) (PDataRecord ((name := pty) ': as)) Source # 
Instance details

Defined in Plutarch.DataRepr.Internal

type PTryFromExcess (PBuiltinList PData) (PDataRecord ((name := pty) ': as))
type PTryFromExcess (PBuiltinList PData) (PDataRecord ('[] :: [PLabeledType])) Source # 
Instance details

Defined in Plutarch.DataRepr.Internal

data PBuiltinPair (a :: PType) (b :: PType) (s :: S) Source #

Plutus BuiltinPair

Instances

Instances details
(PTryFrom PData a, a ~ PAsData a', PIsData a', PTryFrom PData b, b ~ PAsData b', PIsData b') => PTryFrom PData (PAsData (PBuiltinPair a b)) Source #

Recover a `PAsData (PBuiltinPair a b)`

Instance details

Defined in Plutarch.Builtin

Associated Types

type PTryFromExcess PData (PAsData (PBuiltinPair a b)) :: PType Source #

Methods

ptryFrom' :: forall (s :: S) (r :: PType). Term s PData -> ((Term s (PAsData (PBuiltinPair a b)), Reduce (PTryFromExcess PData (PAsData (PBuiltinPair a b)) s)) -> Term s r) -> Term s r Source #

(PEq a, PEq b) => PEq (PBuiltinPair a b) Source # 
Instance details

Defined in Plutarch.Builtin

Methods

(#==) :: forall (s :: S). Term s (PBuiltinPair a b) -> Term s (PBuiltinPair a b) -> Term s PBool Source #

PIsData (PBuiltinPair (PAsData a) (PAsData b)) Source #

NB: `PAsData (PBuiltinPair (PAsData a) (PAsData b))` and `PAsData (PTuple a b)` have the same representation.

Instance details

Defined in Plutarch.Builtin

Methods

pfromDataImpl :: forall (s :: S). Term s (PAsData (PBuiltinPair (PAsData a) (PAsData b))) -> Term s (PBuiltinPair (PAsData a) (PAsData b)) Source #

pdataImpl :: forall (s :: S). Term s (PBuiltinPair (PAsData a) (PAsData b)) -> Term s PData Source #

PIsData (PBuiltinPair PData PData) Source # 
Instance details

Defined in Plutarch.Builtin

PIsData (PBuiltinPair PInteger (PBuiltinList PData)) Source # 
Instance details

Defined in Plutarch.Builtin

PlutusType (PBuiltinPair a b) Source # 
Instance details

Defined in Plutarch.Builtin

Methods

pcon' :: forall (s :: S). PBuiltinPair a b s -> Term s (PInner (PBuiltinPair a b)) Source #

pmatch' :: forall (s :: S) (b0 :: PType). Term s (PInner (PBuiltinPair a b)) -> (PBuiltinPair a b s -> Term s b0) -> Term s b0 Source #

(PLift a, PLift b) => PUnsafeLiftDecl (PBuiltinPair a b) Source # 
Instance details

Defined in Plutarch.Builtin

Associated Types

type PLifted (PBuiltinPair a b) = (r :: Type) Source #

(PShow a, PShow b) => PShow (PBuiltinPair a b) Source # 
Instance details

Defined in Plutarch.Builtin

Methods

pshow' :: forall (s :: S). Bool -> Term s (PBuiltinPair a b) -> Term s PString Source #

type PTryFromExcess PData (PAsData (PBuiltinPair a b)) Source # 
Instance details

Defined in Plutarch.Builtin

type PContravariant' (PBuiltinPair a b) Source # 
Instance details

Defined in Plutarch.Builtin

type PCovariant' (PBuiltinPair a b) Source # 
Instance details

Defined in Plutarch.Builtin

type PInner (PBuiltinPair a b) Source # 
Instance details

Defined in Plutarch.Builtin

type PVariant' (PBuiltinPair a b) Source # 
Instance details

Defined in Plutarch.Builtin

type PLifted (PBuiltinPair a b) Source # 
Instance details

Defined in Plutarch.Builtin

type PLifted (PBuiltinPair a b) = (PLifted a, PLifted b)

data PBuiltinList (a :: PType) (s :: S) Source #

Plutus BuiltinList

Constructors

PCons (Term s a) (Term s (PBuiltinList a)) 
PNil 

Instances

Instances details
PListLike PBuiltinList Source # 
Instance details

Defined in Plutarch.Builtin

Associated Types

type PElemConstraint PBuiltinList a Source #

Methods

pelimList :: forall (a :: PType) (s :: S) (r :: PType). PElemConstraint PBuiltinList a => (Term s a -> Term s (PBuiltinList a) -> Term s r) -> Term s r -> Term s (PBuiltinList a) -> Term s r Source #

pcons :: forall (a :: PType) (s :: S). PElemConstraint PBuiltinList a => Term s (a :--> (PBuiltinList a :--> PBuiltinList a)) Source #

pnil :: forall (a :: PType) (s :: S). PElemConstraint PBuiltinList a => Term s (PBuiltinList a) Source #

phead :: forall (a :: PType) (s :: S). PElemConstraint PBuiltinList a => Term s (PBuiltinList a :--> a) Source #

ptail :: forall (a :: PType) (s :: S). PElemConstraint PBuiltinList a => Term s (PBuiltinList a :--> PBuiltinList a) Source #

pnull :: forall (a :: PType) (s :: S). PElemConstraint PBuiltinList a => Term s (PBuiltinList a :--> PBool) Source #

(PTryFrom PData (PAsData a), PIsData a) => PTryFrom PData (PAsData (PBuiltinList (PAsData a))) Source #

Recover a `PBuiltinList (PAsData a)`

Instance details

Defined in Plutarch.Builtin

Associated Types

type PTryFromExcess PData (PAsData (PBuiltinList (PAsData a))) :: PType Source #

Methods

ptryFrom' :: forall (s :: S) (r :: PType). Term s PData -> ((Term s (PAsData (PBuiltinList (PAsData a))), Reduce (PTryFromExcess PData (PAsData (PBuiltinList (PAsData a))) s)) -> Term s r) -> Term s r Source #

PTryFrom PData (PAsData (PBuiltinList PData)) Source #

This verifies a list to be indeed a list but doesn't recover the inner data use this instance instead of the one for `PData (PAsData (PBuiltinList (PAsData a)))` as this is O(1) instead of O(n)

Instance details

Defined in Plutarch.Builtin

Methods

ptryFrom' :: forall (s :: S) (r :: PType). Term s PData -> ((Term s (PAsData (PBuiltinList PData)), Reduce (PTryFromExcess PData (PAsData (PBuiltinList PData)) s)) -> Term s r) -> Term s r Source #

Fc (F a) a => PEq (PBuiltinList a) Source # 
Instance details

Defined in Plutarch.Builtin

Methods

(#==) :: forall (s :: S). Term s (PBuiltinList a) -> Term s (PBuiltinList a) -> Term s PBool Source #

PSubtype PData a => PIsData (PBuiltinList a) Source # 
Instance details

Defined in Plutarch.Builtin

Methods

pfromDataImpl :: forall (s :: S). Term s (PAsData (PBuiltinList a)) -> Term s (PBuiltinList a) Source #

pdataImpl :: forall (s :: S). Term s (PBuiltinList a) -> Term s PData Source #

PLift a => PlutusType (PBuiltinList a) Source # 
Instance details

Defined in Plutarch.Builtin

Methods

pcon' :: forall (s :: S). PBuiltinList a s -> Term s (PInner (PBuiltinList a)) Source #

pmatch' :: forall (s :: S) (b :: PType). Term s (PInner (PBuiltinList a)) -> (PBuiltinList a s -> Term s b) -> Term s b Source #

PUnsafeLiftDecl a => PUnsafeLiftDecl (PBuiltinList a) Source # 
Instance details

Defined in Plutarch.Builtin

Associated Types

type PLifted (PBuiltinList a) = (r :: Type) Source #

(PShow a, PLift a) => PShow (PBuiltinList a) Source # 
Instance details

Defined in Plutarch.Builtin

Methods

pshow' :: forall (s :: S). Bool -> Term s (PBuiltinList a) -> Term s PString Source #

(Helper2 (PSubtype' PData pty) pty, PTryFrom (PBuiltinList PData) (PDataRecord as), PTryFromExcess (PBuiltinList PData) (PDataRecord as) ~ HRecP ase) => PTryFrom (PBuiltinList PData) (PDataRecord ((name := pty) ': as)) Source # 
Instance details

Defined in Plutarch.DataRepr.Internal

Associated Types

type PTryFromExcess (PBuiltinList PData) (PDataRecord ((name := pty) ': as)) :: PType Source #

Methods

ptryFrom' :: forall (s :: S) (r :: PType). Term s (PBuiltinList PData) -> ((Term s (PDataRecord ((name := pty) ': as)), Reduce (PTryFromExcess (PBuiltinList PData) (PDataRecord ((name := pty) ': as)) s)) -> Term s r) -> Term s r Source #

PTryFrom (PBuiltinList PData) (PDataRecord ('[] :: [PLabeledType])) Source # 
Instance details

Defined in Plutarch.DataRepr.Internal

Associated Types

type PTryFromExcess (PBuiltinList PData) (PDataRecord '[]) :: PType Source #

Methods

ptryFrom' :: forall (s :: S) (r :: PType). Term s (PBuiltinList PData) -> ((Term s (PDataRecord '[]), Reduce (PTryFromExcess (PBuiltinList PData) (PDataRecord '[]) s)) -> Term s r) -> Term s r Source #

PIsData (PBuiltinPair PInteger (PBuiltinList PData)) Source # 
Instance details

Defined in Plutarch.Builtin

type PElemConstraint PBuiltinList a Source # 
Instance details

Defined in Plutarch.Builtin

type PTryFromExcess PData (PAsData (PBuiltinList (PAsData a))) Source # 
Instance details

Defined in Plutarch.Builtin

type PTryFromExcess PData (PAsData (PBuiltinList PData)) Source # 
Instance details

Defined in Plutarch.Builtin

type PContravariant' (PBuiltinList a) Source # 
Instance details

Defined in Plutarch.Builtin

type PCovariant' (PBuiltinList a) Source # 
Instance details

Defined in Plutarch.Builtin

type PInner (PBuiltinList a) Source # 
Instance details

Defined in Plutarch.Builtin

type PVariant' (PBuiltinList a) Source # 
Instance details

Defined in Plutarch.Builtin

type PLifted (PBuiltinList a) Source # 
Instance details

Defined in Plutarch.Builtin

type PTryFromExcess (PBuiltinList PData) (PDataRecord ((name := pty) ': as)) Source # 
Instance details

Defined in Plutarch.DataRepr.Internal

type PTryFromExcess (PBuiltinList PData) (PDataRecord ((name := pty) ': as))
type PTryFromExcess (PBuiltinList PData) (PDataRecord ('[] :: [PLabeledType])) Source # 
Instance details

Defined in Plutarch.DataRepr.Internal

class PIsData a Source #

Laws: - If PSubtype PData a, then pdataImpl a must be pupcast. - pdataImpl . pupcast . pfromDataImpl ≡ id - pfromDataImpl . punsafeDowncast . pdataImpl ≡ id

Instances

Instances details
PIsData PAddress Source # 
Instance details

Defined in Plutarch.Api.V1.Address

Methods

pfromDataImpl :: forall (s :: S). Term s (PAsData PAddress) -> Term s PAddress Source #

pdataImpl :: forall (s :: S). Term s PAddress -> Term s PData Source #

PIsData PCredential Source # 
Instance details

Defined in Plutarch.Api.V1.Address

Methods

pfromDataImpl :: forall (s :: S). Term s (PAsData PCredential) -> Term s PCredential Source #

pdataImpl :: forall (s :: S). Term s PCredential -> Term s PData Source #

PIsData PStakingCredential Source # 
Instance details

Defined in Plutarch.Api.V1.Address

PIsData PScriptContext Source # 
Instance details

Defined in Plutarch.Api.V1.Contexts

Methods

pfromDataImpl :: forall (s :: S). Term s (PAsData PScriptContext) -> Term s PScriptContext Source #

pdataImpl :: forall (s :: S). Term s PScriptContext -> Term s PData Source #

PIsData PScriptPurpose Source # 
Instance details

Defined in Plutarch.Api.V1.Contexts

Methods

pfromDataImpl :: forall (s :: S). Term s (PAsData PScriptPurpose) -> Term s PScriptPurpose Source #

pdataImpl :: forall (s :: S). Term s PScriptPurpose -> Term s PData Source #

PIsData PTxInfo Source # 
Instance details

Defined in Plutarch.Api.V1.Contexts

Methods

pfromDataImpl :: forall (s :: S). Term s (PAsData PTxInfo) -> Term s PTxInfo Source #

pdataImpl :: forall (s :: S). Term s PTxInfo -> Term s PData Source #

PIsData PPubKeyHash Source # 
Instance details

Defined in Plutarch.Api.V1.Crypto

Methods

pfromDataImpl :: forall (s :: S). Term s (PAsData PPubKeyHash) -> Term s PPubKeyHash Source #

pdataImpl :: forall (s :: S). Term s PPubKeyHash -> Term s PData Source #

PIsData PDCert Source # 
Instance details

Defined in Plutarch.Api.V1.DCert

Methods

pfromDataImpl :: forall (s :: S). Term s (PAsData PDCert) -> Term s PDCert Source #

pdataImpl :: forall (s :: S). Term s PDCert -> Term s PData Source #

PIsData PDatum Source # 
Instance details

Defined in Plutarch.Api.V1.Scripts

Methods

pfromDataImpl :: forall (s :: S). Term s (PAsData PDatum) -> Term s PDatum Source #

pdataImpl :: forall (s :: S). Term s PDatum -> Term s PData Source #

PIsData PDatumHash Source # 
Instance details

Defined in Plutarch.Api.V1.Scripts

Methods

pfromDataImpl :: forall (s :: S). Term s (PAsData PDatumHash) -> Term s PDatumHash Source #

pdataImpl :: forall (s :: S). Term s PDatumHash -> Term s PData Source #

PIsData PRedeemer Source # 
Instance details

Defined in Plutarch.Api.V1.Scripts

Methods

pfromDataImpl :: forall (s :: S). Term s (PAsData PRedeemer) -> Term s PRedeemer Source #

pdataImpl :: forall (s :: S). Term s PRedeemer -> Term s PData Source #

PIsData PRedeemerHash Source # 
Instance details

Defined in Plutarch.Api.V1.Scripts

Methods

pfromDataImpl :: forall (s :: S). Term s (PAsData PRedeemerHash) -> Term s PRedeemerHash Source #

pdataImpl :: forall (s :: S). Term s PRedeemerHash -> Term s PData Source #

PIsData PScriptHash Source # 
Instance details

Defined in Plutarch.Api.V1.Scripts

Methods

pfromDataImpl :: forall (s :: S). Term s (PAsData PScriptHash) -> Term s PScriptHash Source #

pdataImpl :: forall (s :: S). Term s PScriptHash -> Term s PData Source #

PIsData PPOSIXTime Source # 
Instance details

Defined in Plutarch.Api.V1.Time

Methods

pfromDataImpl :: forall (s :: S). Term s (PAsData PPOSIXTime) -> Term s PPOSIXTime Source #

pdataImpl :: forall (s :: S). Term s PPOSIXTime -> Term s PData Source #

PIsData PTxId Source # 
Instance details

Defined in Plutarch.Api.V1.Tx

Methods

pfromDataImpl :: forall (s :: S). Term s (PAsData PTxId) -> Term s PTxId Source #

pdataImpl :: forall (s :: S). Term s PTxId -> Term s PData Source #

PIsData PTxInInfo Source # 
Instance details

Defined in Plutarch.Api.V1.Tx

Methods

pfromDataImpl :: forall (s :: S). Term s (PAsData PTxInInfo) -> Term s PTxInInfo Source #

pdataImpl :: forall (s :: S). Term s PTxInInfo -> Term s PData Source #

PIsData PTxOut Source # 
Instance details

Defined in Plutarch.Api.V1.Tx

Methods

pfromDataImpl :: forall (s :: S). Term s (PAsData PTxOut) -> Term s PTxOut Source #

pdataImpl :: forall (s :: S). Term s PTxOut -> Term s PData Source #

PIsData PTxOutRef Source # 
Instance details

Defined in Plutarch.Api.V1.Tx

Methods

pfromDataImpl :: forall (s :: S). Term s (PAsData PTxOutRef) -> Term s PTxOutRef Source #

pdataImpl :: forall (s :: S). Term s PTxOutRef -> Term s PData Source #

PIsData PCurrencySymbol Source # 
Instance details

Defined in Plutarch.Api.V1.Value

Methods

pfromDataImpl :: forall (s :: S). Term s (PAsData PCurrencySymbol) -> Term s PCurrencySymbol Source #

pdataImpl :: forall (s :: S). Term s PCurrencySymbol -> Term s PData Source #

PIsData PTokenName Source # 
Instance details

Defined in Plutarch.Api.V1.Value

Methods

pfromDataImpl :: forall (s :: S). Term s (PAsData PTokenName) -> Term s PTokenName Source #

pdataImpl :: forall (s :: S). Term s PTokenName -> Term s PData Source #

PIsData PScriptContext Source # 
Instance details

Defined in Plutarch.Api.V2.Contexts

Methods

pfromDataImpl :: forall (s :: S). Term s (PAsData PScriptContext) -> Term s PScriptContext Source #

pdataImpl :: forall (s :: S). Term s PScriptContext -> Term s PData Source #

PIsData PTxInfo Source # 
Instance details

Defined in Plutarch.Api.V2.Contexts

Methods

pfromDataImpl :: forall (s :: S). Term s (PAsData PTxInfo) -> Term s PTxInfo Source #

pdataImpl :: forall (s :: S). Term s PTxInfo -> Term s PData Source #

PIsData POutputDatum Source # 
Instance details

Defined in Plutarch.Api.V2.Tx

Methods

pfromDataImpl :: forall (s :: S). Term s (PAsData POutputDatum) -> Term s POutputDatum Source #

pdataImpl :: forall (s :: S). Term s POutputDatum -> Term s PData Source #

PIsData PTxInInfo Source # 
Instance details

Defined in Plutarch.Api.V2.Tx

Methods

pfromDataImpl :: forall (s :: S). Term s (PAsData PTxInInfo) -> Term s PTxInInfo Source #

pdataImpl :: forall (s :: S). Term s PTxInInfo -> Term s PData Source #

PIsData PTxOut Source # 
Instance details

Defined in Plutarch.Api.V2.Tx

Methods

pfromDataImpl :: forall (s :: S). Term s (PAsData PTxOut) -> Term s PTxOut Source #

pdataImpl :: forall (s :: S). Term s PTxOut -> Term s PData Source #

PIsData PBool Source #

Instance for PBool following the Plutus IsData repr given by makeIsDataIndexed ''Bool [('False,0),('True,1)], which is used in TxInfo via Closure.

Instance details

Defined in Plutarch.Builtin

Methods

pfromDataImpl :: forall (s :: S). Term s (PAsData PBool) -> Term s PBool Source #

pdataImpl :: forall (s :: S). Term s PBool -> Term s PData Source #

PIsData PData Source # 
Instance details

Defined in Plutarch.Builtin

Methods

pfromDataImpl :: forall (s :: S). Term s (PAsData PData) -> Term s PData Source #

pdataImpl :: forall (s :: S). Term s PData -> Term s PData Source #

PIsData PByteString Source # 
Instance details

Defined in Plutarch.Builtin

Methods

pfromDataImpl :: forall (s :: S). Term s (PAsData PByteString) -> Term s PByteString Source #

pdataImpl :: forall (s :: S). Term s PByteString -> Term s PData Source #

PIsData PInteger Source # 
Instance details

Defined in Plutarch.Builtin

Methods

pfromDataImpl :: forall (s :: S). Term s (PAsData PInteger) -> Term s PInteger Source #

pdataImpl :: forall (s :: S). Term s PInteger -> Term s PData Source #

PIsData PPositive Source # 
Instance details

Defined in Plutarch.Positive

Methods

pfromDataImpl :: forall (s :: S). Term s (PAsData PPositive) -> Term s PPositive Source #

pdataImpl :: forall (s :: S). Term s PPositive -> Term s PData Source #

PIsData PRational Source #

This instance _does not_ correspond to Rationals data encoding.

Instance details

Defined in Plutarch.Rational

Methods

pfromDataImpl :: forall (s :: S). Term s (PAsData PRational) -> Term s PRational Source #

pdataImpl :: forall (s :: S). Term s PRational -> Term s PData Source #

PIsData (PExtended a) Source # 
Instance details

Defined in Plutarch.Api.V1.Interval

Methods

pfromDataImpl :: forall (s :: S). Term s (PAsData (PExtended a)) -> Term s (PExtended a) Source #

pdataImpl :: forall (s :: S). Term s (PExtended a) -> Term s PData Source #

PIsData (PInterval a) Source # 
Instance details

Defined in Plutarch.Api.V1.Interval

Methods

pfromDataImpl :: forall (s :: S). Term s (PAsData (PInterval a)) -> Term s (PInterval a) Source #

pdataImpl :: forall (s :: S). Term s (PInterval a) -> Term s PData Source #

PIsData (PLowerBound a) Source # 
Instance details

Defined in Plutarch.Api.V1.Interval

Methods

pfromDataImpl :: forall (s :: S). Term s (PAsData (PLowerBound a)) -> Term s (PLowerBound a) Source #

pdataImpl :: forall (s :: S). Term s (PLowerBound a) -> Term s PData Source #

PIsData (PUpperBound a) Source # 
Instance details

Defined in Plutarch.Api.V1.Interval

Methods

pfromDataImpl :: forall (s :: S). Term s (PAsData (PUpperBound a)) -> Term s (PUpperBound a) Source #

pdataImpl :: forall (s :: S). Term s (PUpperBound a) -> Term s PData Source #

PIsData (PMaybeData a) Source # 
Instance details

Defined in Plutarch.Api.V1.Maybe

Methods

pfromDataImpl :: forall (s :: S). Term s (PAsData (PMaybeData a)) -> Term s (PMaybeData a) Source #

pdataImpl :: forall (s :: S). Term s (PMaybeData a) -> Term s PData Source #

PSubtype PData a => PIsData (PBuiltinList a) Source # 
Instance details

Defined in Plutarch.Builtin

Methods

pfromDataImpl :: forall (s :: S). Term s (PAsData (PBuiltinList a)) -> Term s (PBuiltinList a) Source #

pdataImpl :: forall (s :: S). Term s (PBuiltinList a) -> Term s PData Source #

PIsData (PDataRecord xs) Source # 
Instance details

Defined in Plutarch.DataRepr.Internal

Methods

pfromDataImpl :: forall (s :: S). Term s (PAsData (PDataRecord xs)) -> Term s (PDataRecord xs) Source #

pdataImpl :: forall (s :: S). Term s (PDataRecord xs) -> Term s PData Source #

PIsData (PDataSum defs) Source # 
Instance details

Defined in Plutarch.DataRepr.Internal

Methods

pfromDataImpl :: forall (s :: S). Term s (PAsData (PDataSum defs)) -> Term s (PDataSum defs) Source #

pdataImpl :: forall (s :: S). Term s (PDataSum defs) -> Term s PData Source #

PIsData (PUnit :: S -> Type) Source # 
Instance details

Defined in Plutarch.Builtin

Methods

pfromDataImpl :: forall (s :: S). Term s (PAsData PUnit) -> Term s PUnit Source #

pdataImpl :: forall (s :: S). Term s PUnit -> Term s PData Source #

PIsData (PValue keys amounts) Source # 
Instance details

Defined in Plutarch.Api.V1.Value

Methods

pfromDataImpl :: forall (s :: S). Term s (PAsData (PValue keys amounts)) -> Term s (PValue keys amounts) Source #

pdataImpl :: forall (s :: S). Term s (PValue keys amounts) -> Term s PData Source #

PIsData (PBuiltinPair (PAsData a) (PAsData b)) Source #

NB: `PAsData (PBuiltinPair (PAsData a) (PAsData b))` and `PAsData (PTuple a b)` have the same representation.

Instance details

Defined in Plutarch.Builtin

Methods

pfromDataImpl :: forall (s :: S). Term s (PAsData (PBuiltinPair (PAsData a) (PAsData b))) -> Term s (PBuiltinPair (PAsData a) (PAsData b)) Source #

pdataImpl :: forall (s :: S). Term s (PBuiltinPair (PAsData a) (PAsData b)) -> Term s PData Source #

PIsData (PBuiltinPair PData PData) Source # 
Instance details

Defined in Plutarch.Builtin

PIsData (PBuiltinPair PInteger (PBuiltinList PData)) Source # 
Instance details

Defined in Plutarch.Builtin

PIsData (PMap keysort k v) Source # 
Instance details

Defined in Plutarch.Api.V1.AssocMap

Methods

pfromDataImpl :: forall (s :: S). Term s (PAsData (PMap keysort k v)) -> Term s (PMap keysort k v) Source #

pdataImpl :: forall (s :: S). Term s (PMap keysort k v) -> Term s PData Source #

pfromData :: PIsData a => Term s (PAsData a) -> Term s a Source #

pdata :: PIsData a => Term s a -> Term s (PAsData a) Source #

data PAsData (a :: PType) (s :: S) Source #

Instances

Instances details
PFromDataable a (PAsData a) Source # 
Instance details

Defined in Plutarch.DataRepr.Internal.FromData

Methods

pmaybeFromAsData :: forall (s :: S). Term s (PAsData a) -> Term s (PAsData a) Source #

PTryFrom PData (PAsData PAddress) Source # 
Instance details

Defined in Plutarch.Api.V1.Address

Associated Types

type PTryFromExcess PData (PAsData PAddress) :: PType Source #

Methods

ptryFrom' :: forall (s :: S) (r :: PType). Term s PData -> ((Term s (PAsData PAddress), Reduce (PTryFromExcess PData (PAsData PAddress) s)) -> Term s r) -> Term s r Source #

PTryFrom PData (PAsData PCredential) Source # 
Instance details

Defined in Plutarch.Api.V1.Address

Methods

ptryFrom' :: forall (s :: S) (r :: PType). Term s PData -> ((Term s (PAsData PCredential), Reduce (PTryFromExcess PData (PAsData PCredential) s)) -> Term s r) -> Term s r Source #

PTryFrom PData (PAsData PStakingCredential) Source # 
Instance details

Defined in Plutarch.Api.V1.Address

Methods

ptryFrom' :: forall (s :: S) (r :: PType). Term s PData -> ((Term s (PAsData PStakingCredential), Reduce (PTryFromExcess PData (PAsData PStakingCredential) s)) -> Term s r) -> Term s r Source #

(POrd k, PIsData k, PIsData v, PTryFrom PData (PAsData k), PTryFrom PData (PAsData v)) => PTryFrom PData (PAsData (PMap 'Sorted k v)) Source # 
Instance details

Defined in Plutarch.Api.V1.AssocMap

Associated Types

type PTryFromExcess PData (PAsData (PMap 'Sorted k v)) :: PType Source #

Methods

ptryFrom' :: forall (s :: S) (r :: PType). Term s PData -> ((Term s (PAsData (PMap 'Sorted k v)), Reduce (PTryFromExcess PData (PAsData (PMap 'Sorted k v)) s)) -> Term s r) -> Term s r Source #

(PTryFrom PData (PAsData k), PTryFrom PData (PAsData v)) => PTryFrom PData (PAsData (PMap 'Unsorted k v)) Source # 
Instance details

Defined in Plutarch.Api.V1.AssocMap

Associated Types

type PTryFromExcess PData (PAsData (PMap 'Unsorted k v)) :: PType Source #

Methods

ptryFrom' :: forall (s :: S) (r :: PType). Term s PData -> ((Term s (PAsData (PMap 'Unsorted k v)), Reduce (PTryFromExcess PData (PAsData (PMap 'Unsorted k v)) s)) -> Term s r) -> Term s r Source #

PTryFrom PData (PAsData PPubKeyHash) Source # 
Instance details

Defined in Plutarch.Api.V1.Crypto

Methods

ptryFrom' :: forall (s :: S) (r :: PType). Term s PData -> ((Term s (PAsData PPubKeyHash), Reduce (PTryFromExcess PData (PAsData PPubKeyHash) s)) -> Term s r) -> Term s r Source #

PTryFrom PData a => PTryFrom PData (PAsData (PMaybeData a)) Source # 
Instance details

Defined in Plutarch.Api.V1.Maybe

Associated Types

type PTryFromExcess PData (PAsData (PMaybeData a)) :: PType Source #

Methods

ptryFrom' :: forall (s :: S) (r :: PType). Term s PData -> ((Term s (PAsData (PMaybeData a)), Reduce (PTryFromExcess PData (PAsData (PMaybeData a)) s)) -> Term s r) -> Term s r Source #

PTryFrom PData (PAsData PScriptHash) Source # 
Instance details

Defined in Plutarch.Api.V1.Scripts

Methods

ptryFrom' :: forall (s :: S) (r :: PType). Term s PData -> ((Term s (PAsData PScriptHash), Reduce (PTryFromExcess PData (PAsData PScriptHash) s)) -> Term s r) -> Term s r Source #

PTryFrom PData (PAsData PPOSIXTime) Source # 
Instance details

Defined in Plutarch.Api.V1.Time

Associated Types

type PTryFromExcess PData (PAsData PPOSIXTime) :: PType Source #

Methods

ptryFrom' :: forall (s :: S) (r :: PType). Term s PData -> ((Term s (PAsData PPOSIXTime), Reduce (PTryFromExcess PData (PAsData PPOSIXTime) s)) -> Term s r) -> Term s r Source #

PTryFrom PData (PAsData PTxId) Source # 
Instance details

Defined in Plutarch.Api.V1.Tx

Associated Types

type PTryFromExcess PData (PAsData PTxId) :: PType Source #

Methods

ptryFrom' :: forall (s :: S) (r :: PType). Term s PData -> ((Term s (PAsData PTxId), Reduce (PTryFromExcess PData (PAsData PTxId) s)) -> Term s r) -> Term s r Source #

PTryFrom PData (PAsData PTxOutRef) Source # 
Instance details

Defined in Plutarch.Api.V1.Tx

Associated Types

type PTryFromExcess PData (PAsData PTxOutRef) :: PType Source #

Methods

ptryFrom' :: forall (s :: S) (r :: PType). Term s PData -> ((Term s (PAsData PTxOutRef), Reduce (PTryFromExcess PData (PAsData PTxOutRef) s)) -> Term s r) -> Term s r Source #

PTryFrom PData (PAsData PCurrencySymbol) Source # 
Instance details

Defined in Plutarch.Api.V1.Value

Methods

ptryFrom' :: forall (s :: S) (r :: PType). Term s PData -> ((Term s (PAsData PCurrencySymbol), Reduce (PTryFromExcess PData (PAsData PCurrencySymbol) s)) -> Term s r) -> Term s r Source #

PTryFrom PData (PAsData PTokenName) Source # 
Instance details

Defined in Plutarch.Api.V1.Value

Associated Types

type PTryFromExcess PData (PAsData PTokenName) :: PType Source #

Methods

ptryFrom' :: forall (s :: S) (r :: PType). Term s PData -> ((Term s (PAsData PTokenName), Reduce (PTryFromExcess PData (PAsData PTokenName) s)) -> Term s r) -> Term s r Source #

PTryFrom PData (PAsData (PValue 'Sorted 'NoGuarantees)) Source # 
Instance details

Defined in Plutarch.Api.V1.Value

Methods

ptryFrom' :: forall (s :: S) (r :: PType). Term s PData -> ((Term s (PAsData (PValue 'Sorted 'NoGuarantees)), Reduce (PTryFromExcess PData (PAsData (PValue 'Sorted 'NoGuarantees)) s)) -> Term s r) -> Term s r Source #

PTryFrom PData (PAsData (PValue 'Sorted 'NonZero)) Source # 
Instance details

Defined in Plutarch.Api.V1.Value

Associated Types

type PTryFromExcess PData (PAsData (PValue 'Sorted 'NonZero)) :: PType Source #

Methods

ptryFrom' :: forall (s :: S) (r :: PType). Term s PData -> ((Term s (PAsData (PValue 'Sorted 'NonZero)), Reduce (PTryFromExcess PData (PAsData (PValue 'Sorted 'NonZero)) s)) -> Term s r) -> Term s r Source #

PTryFrom PData (PAsData (PValue 'Sorted 'Positive)) Source # 
Instance details

Defined in Plutarch.Api.V1.Value

Methods

ptryFrom' :: forall (s :: S) (r :: PType). Term s PData -> ((Term s (PAsData (PValue 'Sorted 'Positive)), Reduce (PTryFromExcess PData (PAsData (PValue 'Sorted 'Positive)) s)) -> Term s r) -> Term s r Source #

PTryFrom PData (PAsData (PValue 'Unsorted 'NoGuarantees)) Source # 
Instance details

Defined in Plutarch.Api.V1.Value

Methods

ptryFrom' :: forall (s :: S) (r :: PType). Term s PData -> ((Term s (PAsData (PValue 'Unsorted 'NoGuarantees)), Reduce (PTryFromExcess PData (PAsData (PValue 'Unsorted 'NoGuarantees)) s)) -> Term s r) -> Term s r Source #

PTryFrom PData (PAsData (PValue 'Unsorted 'NonZero)) Source # 
Instance details

Defined in Plutarch.Api.V1.Value

Methods

ptryFrom' :: forall (s :: S) (r :: PType). Term s PData -> ((Term s (PAsData (PValue 'Unsorted 'NonZero)), Reduce (PTryFromExcess PData (PAsData (PValue 'Unsorted 'NonZero)) s)) -> Term s r) -> Term s r Source #

PTryFrom PData (PAsData (PValue 'Unsorted 'Positive)) Source # 
Instance details

Defined in Plutarch.Api.V1.Value

Methods

ptryFrom' :: forall (s :: S) (r :: PType). Term s PData -> ((Term s (PAsData (PValue 'Unsorted 'Positive)), Reduce (PTryFromExcess PData (PAsData (PValue 'Unsorted 'Positive)) s)) -> Term s r) -> Term s r Source #

(PTryFrom PData (PAsData a), PIsData a) => PTryFrom PData (PAsData (PBuiltinList (PAsData a))) Source #

Recover a `PBuiltinList (PAsData a)`

Instance details

Defined in Plutarch.Builtin

Associated Types

type PTryFromExcess PData (PAsData (PBuiltinList (PAsData a))) :: PType Source #

Methods

ptryFrom' :: forall (s :: S) (r :: PType). Term s PData -> ((Term s (PAsData (PBuiltinList (PAsData a))), Reduce (PTryFromExcess PData (PAsData (PBuiltinList (PAsData a))) s)) -> Term s r) -> Term s r Source #

PTryFrom PData (PAsData (PBuiltinList PData)) Source #

This verifies a list to be indeed a list but doesn't recover the inner data use this instance instead of the one for `PData (PAsData (PBuiltinList (PAsData a)))` as this is O(1) instead of O(n)

Instance details

Defined in Plutarch.Builtin

Methods

ptryFrom' :: forall (s :: S) (r :: PType). Term s PData -> ((Term s (PAsData (PBuiltinList PData)), Reduce (PTryFromExcess PData (PAsData (PBuiltinList PData)) s)) -> Term s r) -> Term s r Source #

(PTryFrom PData a, a ~ PAsData a', PIsData a', PTryFrom PData b, b ~ PAsData b', PIsData b') => PTryFrom PData (PAsData (PBuiltinPair a b)) Source #

Recover a `PAsData (PBuiltinPair a b)`

Instance details

Defined in Plutarch.Builtin

Associated Types

type PTryFromExcess PData (PAsData (PBuiltinPair a b)) :: PType Source #

Methods

ptryFrom' :: forall (s :: S) (r :: PType). Term s PData -> ((Term s (PAsData (PBuiltinPair a b)), Reduce (PTryFromExcess PData (PAsData (PBuiltinPair a b)) s)) -> Term s r) -> Term s r Source #

PTryFrom PData (PAsData PData) Source # 
Instance details

Defined in Plutarch.Builtin

Associated Types

type PTryFromExcess PData (PAsData PData) :: PType Source #

Methods

ptryFrom' :: forall (s :: S) (r :: PType). Term s PData -> ((Term s (PAsData PData), Reduce (PTryFromExcess PData (PAsData PData) s)) -> Term s r) -> Term s r Source #

PTryFrom PData (PAsData PByteString) Source # 
Instance details

Defined in Plutarch.Builtin

Methods

ptryFrom' :: forall (s :: S) (r :: PType). Term s PData -> ((Term s (PAsData PByteString), Reduce (PTryFromExcess PData (PAsData PByteString) s)) -> Term s r) -> Term s r Source #

(PTryFrom (PBuiltinList PData) (PDataRecord as), PTryFromExcess (PBuiltinList PData) (PDataRecord as) ~ HRecP ase) => PTryFrom PData (PAsData (PDataRecord as)) Source # 
Instance details

Defined in Plutarch.DataRepr.Internal

Associated Types

type PTryFromExcess PData (PAsData (PDataRecord as)) :: PType Source #

Methods

ptryFrom' :: forall (s :: S) (r :: PType). Term s PData -> ((Term s (PAsData (PDataRecord as)), Reduce (PTryFromExcess PData (PAsData (PDataRecord as)) s)) -> Term s r) -> Term s r Source #

PTryFrom PData (PDataSum ys) => PTryFrom PData (PAsData (PDataSum ys)) Source # 
Instance details

Defined in Plutarch.DataRepr.Internal

Associated Types

type PTryFromExcess PData (PAsData (PDataSum ys)) :: PType Source #

Methods

ptryFrom' :: forall (s :: S) (r :: PType). Term s PData -> ((Term s (PAsData (PDataSum ys)), Reduce (PTryFromExcess PData (PAsData (PDataSum ys)) s)) -> Term s r) -> Term s r Source #

PTryFrom PData (PAsData PInteger) Source # 
Instance details

Defined in Plutarch.Builtin

Associated Types

type PTryFromExcess PData (PAsData PInteger) :: PType Source #

Methods

ptryFrom' :: forall (s :: S) (r :: PType). Term s PData -> ((Term s (PAsData PInteger), Reduce (PTryFromExcess PData (PAsData PInteger) s)) -> Term s r) -> Term s r Source #

PTryFrom PData (PAsData PPositive) Source # 
Instance details

Defined in Plutarch.Positive

Associated Types

type PTryFromExcess PData (PAsData PPositive) :: PType Source #

Methods

ptryFrom' :: forall (s :: S) (r :: PType). Term s PData -> ((Term s (PAsData PPositive), Reduce (PTryFromExcess PData (PAsData PPositive) s)) -> Term s r) -> Term s r Source #

PTryFrom PData (PAsData PRational) Source #

NOTE: This instance produces a verified PPositive as the excess output.

Instance details

Defined in Plutarch.Rational

Associated Types

type PTryFromExcess PData (PAsData PRational) :: PType Source #

Methods

ptryFrom' :: forall (s :: S) (r :: PType). Term s PData -> ((Term s (PAsData PRational), Reduce (PTryFromExcess PData (PAsData PRational) s)) -> Term s r) -> Term s r Source #

PEq (PAsData a) Source # 
Instance details

Defined in Plutarch.Builtin

Methods

(#==) :: forall (s :: S). Term s (PAsData a) -> Term s (PAsData a) -> Term s PBool Source #

(PIsData a, PDataFields a) => PDataFields (PAsData a) Source # 
Instance details

Defined in Plutarch.DataRepr.Internal.Field

Associated Types

type PFields (PAsData a) :: [PLabeledType] Source #

Methods

ptoFields :: forall (s :: S). Term s (PAsData a) -> Term s (PDataRecord (PFields (PAsData a))) Source #

PIsData a => PlutusType (PAsData a) Source # 
Instance details

Defined in Plutarch.Builtin

Associated Types

type PInner (PAsData a) :: PType Source #

type PCovariant' (PAsData a) Source #

type PContravariant' (PAsData a) Source #

type PVariant' (PAsData a) Source #

Methods

pcon' :: forall (s :: S). PAsData a s -> Term s (PInner (PAsData a)) Source #

pmatch' :: forall (s :: S) (b :: PType). Term s (PInner (PAsData a)) -> (PAsData a s -> Term s b) -> Term s b Source #

PUnsafeLiftDecl (PAsData a) Source # 
Instance details

Defined in Plutarch.Builtin

Associated Types

type PLifted (PAsData a) = (r :: Type) Source #

(PIsData a, PShow a) => PShow (PAsData a) Source # 
Instance details

Defined in Plutarch.Builtin

Methods

pshow' :: forall (s :: S). Bool -> Term s (PAsData a) -> Term s PString Source #

PIsData (PBuiltinPair (PAsData a) (PAsData b)) Source #

NB: `PAsData (PBuiltinPair (PAsData a) (PAsData b))` and `PAsData (PTuple a b)` have the same representation.

Instance details

Defined in Plutarch.Builtin

Methods

pfromDataImpl :: forall (s :: S). Term s (PAsData (PBuiltinPair (PAsData a) (PAsData b))) -> Term s (PBuiltinPair (PAsData a) (PAsData b)) Source #

pdataImpl :: forall (s :: S). Term s (PBuiltinPair (PAsData a) (PAsData b)) -> Term s PData Source #

type PTryFromExcess PData (PAsData PAddress) Source # 
Instance details

Defined in Plutarch.Api.V1.Address

type PTryFromExcess PData (PAsData PCredential) Source # 
Instance details

Defined in Plutarch.Api.V1.Address

type PTryFromExcess PData (PAsData PStakingCredential) Source # 
Instance details

Defined in Plutarch.Api.V1.Address

type PTryFromExcess PData (PAsData (PMap 'Sorted k v)) Source # 
Instance details

Defined in Plutarch.Api.V1.AssocMap

type PTryFromExcess PData (PAsData (PMap 'Unsorted k v)) Source # 
Instance details

Defined in Plutarch.Api.V1.AssocMap

type PTryFromExcess PData (PAsData PPubKeyHash) Source # 
Instance details

Defined in Plutarch.Api.V1.Crypto

type PTryFromExcess PData (PAsData (PMaybeData a)) Source # 
Instance details

Defined in Plutarch.Api.V1.Maybe

type PTryFromExcess PData (PAsData PScriptHash) Source # 
Instance details

Defined in Plutarch.Api.V1.Scripts

type PTryFromExcess PData (PAsData PPOSIXTime) Source # 
Instance details

Defined in Plutarch.Api.V1.Time

type PTryFromExcess PData (PAsData PTxId) Source # 
Instance details

Defined in Plutarch.Api.V1.Tx

type PTryFromExcess PData (PAsData PTxOutRef) Source # 
Instance details

Defined in Plutarch.Api.V1.Tx

type PTryFromExcess PData (PAsData PCurrencySymbol) Source # 
Instance details

Defined in Plutarch.Api.V1.Value

type PTryFromExcess PData (PAsData PTokenName) Source # 
Instance details

Defined in Plutarch.Api.V1.Value

type PTryFromExcess PData (PAsData (PValue 'Sorted 'NoGuarantees)) Source # 
Instance details

Defined in Plutarch.Api.V1.Value

type PTryFromExcess PData (PAsData (PValue 'Sorted 'NonZero)) Source # 
Instance details

Defined in Plutarch.Api.V1.Value

type PTryFromExcess PData (PAsData (PValue 'Sorted 'Positive)) Source # 
Instance details

Defined in Plutarch.Api.V1.Value

type PTryFromExcess PData (PAsData (PValue 'Unsorted 'NoGuarantees)) Source # 
Instance details

Defined in Plutarch.Api.V1.Value

type PTryFromExcess PData (PAsData (PValue 'Unsorted 'NonZero)) Source # 
Instance details

Defined in Plutarch.Api.V1.Value

type PTryFromExcess PData (PAsData (PValue 'Unsorted 'Positive)) Source # 
Instance details

Defined in Plutarch.Api.V1.Value

type PTryFromExcess PData (PAsData (PBuiltinList (PAsData a))) Source # 
Instance details

Defined in Plutarch.Builtin

type PTryFromExcess PData (PAsData (PBuiltinList PData)) Source # 
Instance details

Defined in Plutarch.Builtin

type PTryFromExcess PData (PAsData (PBuiltinPair a b)) Source # 
Instance details

Defined in Plutarch.Builtin

type PTryFromExcess PData (PAsData PData) Source # 
Instance details

Defined in Plutarch.Builtin

type PTryFromExcess PData (PAsData PByteString) Source # 
Instance details

Defined in Plutarch.Builtin

type PTryFromExcess PData (PAsData (PDataRecord as)) Source # 
Instance details

Defined in Plutarch.DataRepr.Internal

type PTryFromExcess PData (PAsData (PDataSum ys)) Source # 
Instance details

Defined in Plutarch.DataRepr.Internal

type PTryFromExcess PData (PAsData PInteger) Source # 
Instance details

Defined in Plutarch.Builtin

type PTryFromExcess PData (PAsData PPositive) Source # 
Instance details

Defined in Plutarch.Positive

type PTryFromExcess PData (PAsData PRational) Source # 
Instance details

Defined in Plutarch.Rational

type PFields (PAsData a) Source # 
Instance details

Defined in Plutarch.DataRepr.Internal.Field

type PFields (PAsData a) = PFields a
type PContravariant' (PAsData a) Source # 
Instance details

Defined in Plutarch.Builtin

type PCovariant' (PAsData a) Source # 
Instance details

Defined in Plutarch.Builtin

type PInner (PAsData a) Source # 
Instance details

Defined in Plutarch.Builtin

type PInner (PAsData a)
type PVariant' (PAsData a) Source # 
Instance details

Defined in Plutarch.Builtin

type PLifted (PAsData a) Source # 
Instance details

Defined in Plutarch.Builtin

type PLifted (PAsData a)

DataRepr and related functions

data PDataRecord (as :: [PLabeledType]) (s :: S) Source #

A "record" of `exists a. PAsData a`. The underlying representation is `PBuiltinList PData`.

Instances

Instances details
(PTryFrom (PBuiltinList PData) (PDataRecord as), PTryFromExcess (PBuiltinList PData) (PDataRecord as) ~ HRecP ase) => PTryFrom PData (PAsData (PDataRecord as)) Source # 
Instance details

Defined in Plutarch.DataRepr.Internal

Associated Types

type PTryFromExcess PData (PAsData (PDataRecord as)) :: PType Source #

Methods

ptryFrom' :: forall (s :: S) (r :: PType). Term s PData -> ((Term s (PAsData (PDataRecord as)), Reduce (PTryFromExcess PData (PAsData (PDataRecord as)) s)) -> Term s r) -> Term s r Source #

PEq (PDataRecord xs) Source #

This uses data equality. PEq instances of elements don't make any difference.

Instance details

Defined in Plutarch.DataRepr.Internal

Methods

(#==) :: forall (s :: S). Term s (PDataRecord xs) -> Term s (PDataRecord xs) -> Term s PBool Source #

(SListI xs, POrd x, PIsData x, POrd (PDataRecord (x' ': xs))) => POrd (PDataRecord ((label := x) ': (x' ': xs))) Source # 
Instance details

Defined in Plutarch.DataRepr.Internal

(POrd x, PIsData x) => POrd (PDataRecord '[label := x]) Source # 
Instance details

Defined in Plutarch.DataRepr.Internal

POrd (PDataRecord ('[] :: [PLabeledType])) Source # 
Instance details

Defined in Plutarch.DataRepr.Internal

(SListI xs, POrd x, PIsData x, POrd (PDataRecord (x' ': xs))) => PPartialOrd (PDataRecord ((label := x) ': (x' ': xs))) Source # 
Instance details

Defined in Plutarch.DataRepr.Internal

Methods

(#<=) :: forall (s :: S). Term s (PDataRecord ((label := x) ': (x' ': xs))) -> Term s (PDataRecord ((label := x) ': (x' ': xs))) -> Term s PBool Source #

(#<) :: forall (s :: S). Term s (PDataRecord ((label := x) ': (x' ': xs))) -> Term s (PDataRecord ((label := x) ': (x' ': xs))) -> Term s PBool Source #

(POrd x, PIsData x) => PPartialOrd (PDataRecord '[label := x]) Source # 
Instance details

Defined in Plutarch.DataRepr.Internal

Methods

(#<=) :: forall (s :: S). Term s (PDataRecord '[label := x]) -> Term s (PDataRecord '[label := x]) -> Term s PBool Source #

(#<) :: forall (s :: S). Term s (PDataRecord '[label := x]) -> Term s (PDataRecord '[label := x]) -> Term s PBool Source #

PPartialOrd (PDataRecord ('[] :: [PLabeledType])) Source # 
Instance details

Defined in Plutarch.DataRepr.Internal

Methods

(#<=) :: forall (s :: S). Term s (PDataRecord '[]) -> Term s (PDataRecord '[]) -> Term s PBool Source #

(#<) :: forall (s :: S). Term s (PDataRecord '[]) -> Term s (PDataRecord '[]) -> Term s PBool Source #

PIsData (PDataRecord xs) Source # 
Instance details

Defined in Plutarch.DataRepr.Internal

Methods

pfromDataImpl :: forall (s :: S). Term s (PAsData (PDataRecord xs)) -> Term s (PDataRecord xs) Source #

pdataImpl :: forall (s :: S). Term s (PDataRecord xs) -> Term s PData Source #

PDataFields (PDataRecord as) Source # 
Instance details

Defined in Plutarch.DataRepr.Internal.Field

Associated Types

type PFields (PDataRecord as) :: [PLabeledType] Source #

Methods

ptoFields :: forall (s :: S). Term s (PDataRecord as) -> Term s (PDataRecord (PFields (PDataRecord as))) Source #

SListI l => PlutusType (PDataRecord l) Source # 
Instance details

Defined in Plutarch.DataRepr.Internal

Methods

pcon' :: forall (s :: S). PDataRecord l s -> Term s (PInner (PDataRecord l)) Source #

pmatch' :: forall (s :: S) (b :: PType). Term s (PInner (PDataRecord l)) -> (PDataRecord l s -> Term s b) -> Term s b Source #

(All (Top :: PLabeledType -> Constraint) xs, KnownSymbol label, PIsData x, PShow x, PShow (PDataRecordShowHelper xs)) => PShow (PDataRecord ((label := x) ': xs)) Source # 
Instance details

Defined in Plutarch.DataRepr.Internal

Methods

pshow' :: forall (s :: S). Bool -> Term s (PDataRecord ((label := x) ': xs)) -> Term s PString Source #

PShow (PDataRecord ('[] :: [PLabeledType])) Source # 
Instance details

Defined in Plutarch.DataRepr.Internal

Methods

pshow' :: forall (s :: S). Bool -> Term s (PDataRecord '[]) -> Term s PString Source #

(Helper2 (PSubtype' PData pty) pty, PTryFrom (PBuiltinList PData) (PDataRecord as), PTryFromExcess (PBuiltinList PData) (PDataRecord as) ~ HRecP ase) => PTryFrom (PBuiltinList PData) (PDataRecord ((name := pty) ': as)) Source # 
Instance details

Defined in Plutarch.DataRepr.Internal

Associated Types

type PTryFromExcess (PBuiltinList PData) (PDataRecord ((name := pty) ': as)) :: PType Source #

Methods

ptryFrom' :: forall (s :: S) (r :: PType). Term s (PBuiltinList PData) -> ((Term s (PDataRecord ((name := pty) ': as)), Reduce (PTryFromExcess (PBuiltinList PData) (PDataRecord ((name := pty) ': as)) s)) -> Term s r) -> Term s r Source #

PTryFrom (PBuiltinList PData) (PDataRecord ('[] :: [PLabeledType])) Source # 
Instance details

Defined in Plutarch.DataRepr.Internal

Associated Types

type PTryFromExcess (PBuiltinList PData) (PDataRecord '[]) :: PType Source #

Methods

ptryFrom' :: forall (s :: S) (r :: PType). Term s (PBuiltinList PData) -> ((Term s (PDataRecord '[]), Reduce (PTryFromExcess (PBuiltinList PData) (PDataRecord '[]) s)) -> Term s r) -> Term s r Source #

type PTryFromExcess PData (PAsData (PDataRecord as)) Source # 
Instance details

Defined in Plutarch.DataRepr.Internal

type PFields (PDataRecord as) Source # 
Instance details

Defined in Plutarch.DataRepr.Internal.Field

type PFields (PDataRecord as) = as
type PContravariant' (PDataRecord l) Source # 
Instance details

Defined in Plutarch.DataRepr.Internal

type PCovariant' (PDataRecord l) Source # 
Instance details

Defined in Plutarch.DataRepr.Internal

type PInner (PDataRecord l) Source # 
Instance details

Defined in Plutarch.DataRepr.Internal

type PVariant' (PDataRecord l) Source # 
Instance details

Defined in Plutarch.DataRepr.Internal

type PTryFromExcess (PBuiltinList PData) (PDataRecord ((name := pty) ': as)) Source # 
Instance details

Defined in Plutarch.DataRepr.Internal

type PTryFromExcess (PBuiltinList PData) (PDataRecord ((name := pty) ': as))
type PTryFromExcess (PBuiltinList PData) (PDataRecord ('[] :: [PLabeledType])) Source # 
Instance details

Defined in Plutarch.DataRepr.Internal

data PDataSum defs s Source #

A sum of PDataRecords. The underlying representation is the Constr constructor, where the integer is the index of the variant and the list is the record.

Instances

Instances details
PTryFrom PData (PDataSum ys) => PTryFrom PData (PAsData (PDataSum ys)) Source # 
Instance details

Defined in Plutarch.DataRepr.Internal

Associated Types

type PTryFromExcess PData (PAsData (PDataSum ys)) :: PType Source #

Methods

ptryFrom' :: forall (s :: S) (r :: PType). Term s PData -> ((Term s (PAsData (PDataSum ys)), Reduce (PTryFromExcess PData (PAsData (PDataSum ys)) s)) -> Term s r) -> Term s r Source #

SumValidation 0 ys => PTryFrom PData (PDataSum ys) Source # 
Instance details

Defined in Plutarch.DataRepr.Internal

Associated Types

type PTryFromExcess PData (PDataSum ys) :: PType Source #

Methods

ptryFrom' :: forall (s :: S) (r :: PType). Term s PData -> ((Term s (PDataSum ys), Reduce (PTryFromExcess PData (PDataSum ys) s)) -> Term s r) -> Term s r Source #

PEq (PDataSum defs) Source # 
Instance details

Defined in Plutarch.DataRepr.Internal

Methods

(#==) :: forall (s :: S). Term s (PDataSum defs) -> Term s (PDataSum defs) -> Term s PBool Source #

All (Compose POrd PDataRecord) defs => POrd (PDataSum defs) Source # 
Instance details

Defined in Plutarch.DataRepr.Internal

All (Compose POrd PDataRecord) defs => PPartialOrd (PDataSum defs) Source # 
Instance details

Defined in Plutarch.DataRepr.Internal

Methods

(#<=) :: forall (s :: S). Term s (PDataSum defs) -> Term s (PDataSum defs) -> Term s PBool Source #

(#<) :: forall (s :: S). Term s (PDataSum defs) -> Term s (PDataSum defs) -> Term s PBool Source #

PIsData (PDataSum defs) Source # 
Instance details

Defined in Plutarch.DataRepr.Internal

Methods

pfromDataImpl :: forall (s :: S). Term s (PAsData (PDataSum defs)) -> Term s (PDataSum defs) Source #

pdataImpl :: forall (s :: S). Term s (PDataSum defs) -> Term s PData Source #

PDataFields (PDataSum '[as]) Source # 
Instance details

Defined in Plutarch.DataRepr.Internal.Field

Associated Types

type PFields (PDataSum '[as]) :: [PLabeledType] Source #

Methods

ptoFields :: forall (s :: S). Term s (PDataSum '[as]) -> Term s (PDataRecord (PFields (PDataSum '[as]))) Source #

SListI defs => PlutusType (PDataSum defs) Source # 
Instance details

Defined in Plutarch.DataRepr.Internal

Associated Types

type PInner (PDataSum defs) :: PType Source #

type PCovariant' (PDataSum defs) Source #

type PContravariant' (PDataSum defs) Source #

type PVariant' (PDataSum defs) Source #

Methods

pcon' :: forall (s :: S). PDataSum defs s -> Term s (PInner (PDataSum defs)) Source #

pmatch' :: forall (s :: S) (b :: PType). Term s (PInner (PDataSum defs)) -> (PDataSum defs s -> Term s b) -> Term s b Source #

(All (Top :: [PLabeledType] -> Constraint) defs, All (Compose PShow PDataRecord) defs) => PShow (PDataSum defs) Source # 
Instance details

Defined in Plutarch.DataRepr.Internal

Methods

pshow' :: forall (s :: S). Bool -> Term s (PDataSum defs) -> Term s PString Source #

type PTryFromExcess PData (PAsData (PDataSum ys)) Source # 
Instance details

Defined in Plutarch.DataRepr.Internal

type PTryFromExcess PData (PDataSum ys) Source # 
Instance details

Defined in Plutarch.DataRepr.Internal

type PTryFromExcess PData (PDataSum ys) = Const () :: S -> Type
type PFields (PDataSum '[as]) Source # 
Instance details

Defined in Plutarch.DataRepr.Internal.Field

type PFields (PDataSum '[as]) = as
type PContravariant' (PDataSum defs) Source # 
Instance details

Defined in Plutarch.DataRepr.Internal

type PCovariant' (PDataSum defs) Source # 
Instance details

Defined in Plutarch.DataRepr.Internal

type PCovariant' (PDataSum defs)
type PInner (PDataSum defs) Source # 
Instance details

Defined in Plutarch.DataRepr.Internal

type PInner (PDataSum defs) = PData
type PVariant' (PDataSum defs) Source # 
Instance details

Defined in Plutarch.DataRepr.Internal

type PVariant' (PDataSum defs)

data PLabeledType Source #

Constructors

Symbol := PType 

Instances

Instances details
(SListI xs, POrd x, PIsData x, POrd (PDataRecord (x' ': xs))) => POrd (PDataRecord ((label := x) ': (x' ': xs))) Source # 
Instance details

Defined in Plutarch.DataRepr.Internal

(POrd x, PIsData x) => POrd (PDataRecord '[label := x]) Source # 
Instance details

Defined in Plutarch.DataRepr.Internal

POrd (PDataRecord ('[] :: [PLabeledType])) Source # 
Instance details

Defined in Plutarch.DataRepr.Internal

(SListI xs, POrd x, PIsData x, POrd (PDataRecord (x' ': xs))) => PPartialOrd (PDataRecord ((label := x) ': (x' ': xs))) Source # 
Instance details

Defined in Plutarch.DataRepr.Internal

Methods

(#<=) :: forall (s :: S). Term s (PDataRecord ((label := x) ': (x' ': xs))) -> Term s (PDataRecord ((label := x) ': (x' ': xs))) -> Term s PBool Source #

(#<) :: forall (s :: S). Term s (PDataRecord ((label := x) ': (x' ': xs))) -> Term s (PDataRecord ((label := x) ': (x' ': xs))) -> Term s PBool Source #

(POrd x, PIsData x) => PPartialOrd (PDataRecord '[label := x]) Source # 
Instance details

Defined in Plutarch.DataRepr.Internal

Methods

(#<=) :: forall (s :: S). Term s (PDataRecord '[label := x]) -> Term s (PDataRecord '[label := x]) -> Term s PBool Source #

(#<) :: forall (s :: S). Term s (PDataRecord '[label := x]) -> Term s (PDataRecord '[label := x]) -> Term s PBool Source #

PPartialOrd (PDataRecord ('[] :: [PLabeledType])) Source # 
Instance details

Defined in Plutarch.DataRepr.Internal

Methods

(#<=) :: forall (s :: S). Term s (PDataRecord '[]) -> Term s (PDataRecord '[]) -> Term s PBool Source #

(#<) :: forall (s :: S). Term s (PDataRecord '[]) -> Term s (PDataRecord '[]) -> Term s PBool Source #

PDataFields (PDataSum '[as]) Source # 
Instance details

Defined in Plutarch.DataRepr.Internal.Field

Associated Types

type PFields (PDataSum '[as]) :: [PLabeledType] Source #

Methods

ptoFields :: forall (s :: S). Term s (PDataSum '[as]) -> Term s (PDataRecord (PFields (PDataSum '[as]))) Source #

(All (Top :: PLabeledType -> Constraint) xs, KnownSymbol label, PIsData x, PShow x, PShow (PDataRecordShowHelper xs)) => PShow (PDataRecord ((label := x) ': xs)) Source # 
Instance details

Defined in Plutarch.DataRepr.Internal

Methods

pshow' :: forall (s :: S). Bool -> Term s (PDataRecord ((label := x) ': xs)) -> Term s PString Source #

PShow (PDataRecord ('[] :: [PLabeledType])) Source # 
Instance details

Defined in Plutarch.DataRepr.Internal

Methods

pshow' :: forall (s :: S). Bool -> Term s (PDataRecord '[]) -> Term s PString Source #

(Helper2 (PSubtype' PData pty) pty, PTryFrom (PBuiltinList PData) (PDataRecord as), PTryFromExcess (PBuiltinList PData) (PDataRecord as) ~ HRecP ase) => PTryFrom (PBuiltinList PData) (PDataRecord ((name := pty) ': as)) Source # 
Instance details

Defined in Plutarch.DataRepr.Internal

Associated Types

type PTryFromExcess (PBuiltinList PData) (PDataRecord ((name := pty) ': as)) :: PType Source #

Methods

ptryFrom' :: forall (s :: S) (r :: PType). Term s (PBuiltinList PData) -> ((Term s (PDataRecord ((name := pty) ': as)), Reduce (PTryFromExcess (PBuiltinList PData) (PDataRecord ((name := pty) ': as)) s)) -> Term s r) -> Term s r Source #

PTryFrom (PBuiltinList PData) (PDataRecord ('[] :: [PLabeledType])) Source # 
Instance details

Defined in Plutarch.DataRepr.Internal

Associated Types

type PTryFromExcess (PBuiltinList PData) (PDataRecord '[]) :: PType Source #

Methods

ptryFrom' :: forall (s :: S) (r :: PType). Term s (PBuiltinList PData) -> ((Term s (PDataRecord '[]), Reduce (PTryFromExcess (PBuiltinList PData) (PDataRecord '[]) s)) -> Term s r) -> Term s r Source #

type PFields (PDataSum '[as]) Source # 
Instance details

Defined in Plutarch.DataRepr.Internal.Field

type PFields (PDataSum '[as]) = as
type PTryFromExcess (PBuiltinList PData) (PDataRecord ((name := pty) ': as)) Source # 
Instance details

Defined in Plutarch.DataRepr.Internal

type PTryFromExcess (PBuiltinList PData) (PDataRecord ((name := pty) ': as))
type PTryFromExcess (PBuiltinList PData) (PDataRecord ('[] :: [PLabeledType])) Source # 
Instance details

Defined in Plutarch.DataRepr.Internal

pdcons :: forall label a l s. Term s (PAsData a :--> (PDataRecord l :--> PDataRecord ((label := a) ': l))) Source #

Cons a field to a data record.

You can specify the label to associate with the field using type applications-

foo :: Term s (PDataRecord '[ "fooField" ':= PByteString ])
foo = pdcons @"fooField" # pdata (phexByteStr "ab") # pdnil

pfield :: forall name b p s a as n. (PDataFields p, as ~ PFields p, n ~ PLabelIndex name as, KnownNat n, a ~ PUnLabel (IndexList n as), PFromDataable a b) => Term s (p :--> b) Source #

Get a single field from a Term.

  • NB*: If you access more than one field from the same value you should use pletFields instead, which will generate the bindings more efficiently.

getField :: HasField x r a => r -> a Source #

Selector function to extract the field from the record.

pletFields :: forall fs a s b ps bs. (PDataFields a, ps ~ PFields a, bs ~ Bindings ps fs, BindFields ps bs) => Term s a -> (HRecOf a fs s -> Term s b) -> Term s b Source #

Bind a HRec of named fields containing all the specified fields.

Tracing

class PShow t Source #

Instances

Instances details
PShow PAddress Source # 
Instance details

Defined in Plutarch.Api.V1.Address

Methods

pshow' :: forall (s :: S). Bool -> Term s PAddress -> Term s PString Source #

PShow PCredential Source # 
Instance details

Defined in Plutarch.Api.V1.Address

Methods

pshow' :: forall (s :: S). Bool -> Term s PCredential -> Term s PString Source #

PShow PStakingCredential Source # 
Instance details

Defined in Plutarch.Api.V1.Address

Methods

pshow' :: forall (s :: S). Bool -> Term s PStakingCredential -> Term s PString Source #

PShow PScriptContext Source # 
Instance details

Defined in Plutarch.Api.V1.Contexts

Methods

pshow' :: forall (s :: S). Bool -> Term s PScriptContext -> Term s PString Source #

PShow PScriptPurpose Source # 
Instance details

Defined in Plutarch.Api.V1.Contexts

Methods

pshow' :: forall (s :: S). Bool -> Term s PScriptPurpose -> Term s PString Source #

PShow PTxInfo Source # 
Instance details

Defined in Plutarch.Api.V1.Contexts

Methods

pshow' :: forall (s :: S). Bool -> Term s PTxInfo -> Term s PString Source #

PShow PPubKeyHash Source # 
Instance details

Defined in Plutarch.Api.V1.Crypto

Methods

pshow' :: forall (s :: S). Bool -> Term s PPubKeyHash -> Term s PString Source #

PShow PDCert Source # 
Instance details

Defined in Plutarch.Api.V1.DCert

Methods

pshow' :: forall (s :: S). Bool -> Term s PDCert -> Term s PString Source #

PShow PDatum Source # 
Instance details

Defined in Plutarch.Api.V1.Scripts

Methods

pshow' :: forall (s :: S). Bool -> Term s PDatum -> Term s PString Source #

PShow PDatumHash Source # 
Instance details

Defined in Plutarch.Api.V1.Scripts

Methods

pshow' :: forall (s :: S). Bool -> Term s PDatumHash -> Term s PString Source #

PShow PRedeemer Source # 
Instance details

Defined in Plutarch.Api.V1.Scripts

Methods

pshow' :: forall (s :: S). Bool -> Term s PRedeemer -> Term s PString Source #

PShow PRedeemerHash Source # 
Instance details

Defined in Plutarch.Api.V1.Scripts

Methods

pshow' :: forall (s :: S). Bool -> Term s PRedeemerHash -> Term s PString Source #

PShow PScriptHash Source # 
Instance details

Defined in Plutarch.Api.V1.Scripts

Methods

pshow' :: forall (s :: S). Bool -> Term s PScriptHash -> Term s PString Source #

PShow PPOSIXTime Source # 
Instance details

Defined in Plutarch.Api.V1.Time

Methods

pshow' :: forall (s :: S). Bool -> Term s PPOSIXTime -> Term s PString Source #

PShow PTxId Source # 
Instance details

Defined in Plutarch.Api.V1.Tx

Methods

pshow' :: forall (s :: S). Bool -> Term s PTxId -> Term s PString Source #

PShow PTxInInfo Source # 
Instance details

Defined in Plutarch.Api.V1.Tx

Methods

pshow' :: forall (s :: S). Bool -> Term s PTxInInfo -> Term s PString Source #

PShow PTxOut Source # 
Instance details

Defined in Plutarch.Api.V1.Tx

Methods

pshow' :: forall (s :: S). Bool -> Term s PTxOut -> Term s PString Source #

PShow PTxOutRef Source # 
Instance details

Defined in Plutarch.Api.V1.Tx

Methods

pshow' :: forall (s :: S). Bool -> Term s PTxOutRef -> Term s PString Source #

PShow PCurrencySymbol Source # 
Instance details

Defined in Plutarch.Api.V1.Value

Methods

pshow' :: forall (s :: S). Bool -> Term s PCurrencySymbol -> Term s PString Source #

PShow PTokenName Source # 
Instance details

Defined in Plutarch.Api.V1.Value

Methods

pshow' :: forall (s :: S). Bool -> Term s PTokenName -> Term s PString Source #

PShow PScriptContext Source # 
Instance details

Defined in Plutarch.Api.V2.Contexts

Methods

pshow' :: forall (s :: S). Bool -> Term s PScriptContext -> Term s PString Source #

PShow PTxInfo Source # 
Instance details

Defined in Plutarch.Api.V2.Contexts

Methods

pshow' :: forall (s :: S). Bool -> Term s PTxInfo -> Term s PString Source #

PShow POutputDatum Source # 
Instance details

Defined in Plutarch.Api.V2.Tx

Methods

pshow' :: forall (s :: S). Bool -> Term s POutputDatum -> Term s PString Source #

PShow PTxInInfo Source # 
Instance details

Defined in Plutarch.Api.V2.Tx

Methods

pshow' :: forall (s :: S). Bool -> Term s PTxInInfo -> Term s PString Source #

PShow PTxOut Source # 
Instance details

Defined in Plutarch.Api.V2.Tx

Methods

pshow' :: forall (s :: S). Bool -> Term s PTxOut -> Term s PString Source #

PShow PBool Source # 
Instance details

Defined in Plutarch.Show

Methods

pshow' :: forall (s :: S). Bool -> Term s PBool -> Term s PString Source #

PShow PData Source # 
Instance details

Defined in Plutarch.Builtin

Methods

pshow' :: forall (s :: S). Bool -> Term s PData -> Term s PString Source #

PShow PByteString Source # 
Instance details

Defined in Plutarch.Show

Methods

pshow' :: forall (s :: S). Bool -> Term s PByteString -> Term s PString Source #

PShow PInteger Source # 
Instance details

Defined in Plutarch.Show

Methods

pshow' :: forall (s :: S). Bool -> Term s PInteger -> Term s PString Source #

PShow PPositive Source # 
Instance details

Defined in Plutarch.Positive

Methods

pshow' :: forall (s :: S). Bool -> Term s PPositive -> Term s PString Source #

PShow PRational Source # 
Instance details

Defined in Plutarch.Rational

Methods

pshow' :: forall (s :: S). Bool -> Term s PRational -> Term s PString Source #

PShow PString Source # 
Instance details

Defined in Plutarch.Show

Methods

pshow' :: forall (s :: S). Bool -> Term s PString -> Term s PString Source #

(PIsData a, PShow a) => PShow (PExtended a) Source # 
Instance details

Defined in Plutarch.Api.V1.Interval

Methods

pshow' :: forall (s :: S). Bool -> Term s (PExtended a) -> Term s PString Source #

(PIsData a, PShow a) => PShow (PInterval a) Source # 
Instance details

Defined in Plutarch.Api.V1.Interval

Methods

pshow' :: forall (s :: S). Bool -> Term s (PInterval a) -> Term s PString Source #

(PIsData a, PShow a) => PShow (PLowerBound a) Source # 
Instance details

Defined in Plutarch.Api.V1.Interval

Methods

pshow' :: forall (s :: S). Bool -> Term s (PLowerBound a) -> Term s PString Source #

(PIsData a, PShow a) => PShow (PUpperBound a) Source # 
Instance details

Defined in Plutarch.Api.V1.Interval

Methods

pshow' :: forall (s :: S). Bool -> Term s (PUpperBound a) -> Term s PString Source #

(PIsData a, PShow a) => PShow (PMaybeData a) Source # 
Instance details

Defined in Plutarch.Api.V1.Maybe

Methods

pshow' :: forall (s :: S). Bool -> Term s (PMaybeData a) -> Term s PString Source #

(PIsData a, PShow a) => PShow (PAsData a) Source # 
Instance details

Defined in Plutarch.Builtin

Methods

pshow' :: forall (s :: S). Bool -> Term s (PAsData a) -> Term s PString Source #

(PShow a, PLift a) => PShow (PBuiltinList a) Source # 
Instance details

Defined in Plutarch.Builtin

Methods

pshow' :: forall (s :: S). Bool -> Term s (PBuiltinList a) -> Term s PString Source #

(All (Top :: PLabeledType -> Constraint) xs, KnownSymbol label, PIsData x, PShow x, PShow (PDataRecordShowHelper xs)) => PShow (PDataRecord ((label := x) ': xs)) Source # 
Instance details

Defined in Plutarch.DataRepr.Internal

Methods

pshow' :: forall (s :: S). Bool -> Term s (PDataRecord ((label := x) ': xs)) -> Term s PString Source #

PShow (PDataRecord ('[] :: [PLabeledType])) Source # 
Instance details

Defined in Plutarch.DataRepr.Internal

Methods

pshow' :: forall (s :: S). Bool -> Term s (PDataRecord '[]) -> Term s PString Source #

(All (Top :: [PLabeledType] -> Constraint) defs, All (Compose PShow PDataRecord) defs) => PShow (PDataSum defs) Source # 
Instance details

Defined in Plutarch.DataRepr.Internal

Methods

pshow' :: forall (s :: S). Bool -> Term s (PDataSum defs) -> Term s PString Source #

PShow a => PShow (PTxList a) Source # 
Instance details

Defined in Plutarch.FFI

Methods

pshow' :: forall (s :: S). Bool -> Term s (PTxList a) -> Term s PString Source #

PShow a => PShow (PTxMaybe a) Source # 
Instance details

Defined in Plutarch.FFI

Methods

pshow' :: forall (s :: S). Bool -> Term s (PTxMaybe a) -> Term s PString Source #

PShow a => PShow (PList a) Source # 
Instance details

Defined in Plutarch.List

Methods

pshow' :: forall (s :: S). Bool -> Term s (PList a) -> Term s PString Source #

PShow a => PShow (PMaybe a) Source # 
Instance details

Defined in Plutarch.Maybe

Methods

pshow' :: forall (s :: S). Bool -> Term s (PMaybe a) -> Term s PString Source #

PShow (PUnit :: S -> Type) Source # 
Instance details

Defined in Plutarch.Unit

Methods

pshow' :: forall (s :: S). Bool -> Term s PUnit -> Term s PString Source #

PShow (PValue keys amounts) Source # 
Instance details

Defined in Plutarch.Api.V1.Value

Methods

pshow' :: forall (s :: S). Bool -> Term s (PValue keys amounts) -> Term s PString Source #

(PShow a, PShow b) => PShow (PBuiltinPair a b) Source # 
Instance details

Defined in Plutarch.Builtin

Methods

pshow' :: forall (s :: S). Bool -> Term s (PBuiltinPair a b) -> Term s PString Source #

(PShow a, PShow b) => PShow (PEither a b) Source # 
Instance details

Defined in Plutarch.Either

Methods

pshow' :: forall (s :: S). Bool -> Term s (PEither a b) -> Term s PString Source #

(PShow a, PShow b) => PShow (PPair a b) Source # 
Instance details

Defined in Plutarch.Pair

Methods

pshow' :: forall (s :: S). Bool -> Term s (PPair a b) -> Term s PString Source #

(PIsData k, PIsData v, PShow k, PShow v) => PShow (PMap keysort k v) Source # 
Instance details

Defined in Plutarch.Api.V1.AssocMap

Methods

pshow' :: forall (s :: S). Bool -> Term s (PMap keysort k v) -> Term s PString Source #

pshow :: PShow a => Term s a -> Term s PString Source #

Return the string representation of a Plutarch value

ptrace :: Term s PString -> Term s a -> Term s a Source #

Trace the given message before evaluating the argument.

ptraceShowId :: PShow a => Term s a -> Term s a Source #

Like Haskell's traceShowId but for Plutarch

ptraceIfFalse :: Term s PString -> Term s PBool -> Term s PBool Source #

Trace the given message if the argument evaluates to False.

ptraceIfTrue :: Term s PString -> Term s PBool -> Term s PBool Source #

Trace the given message if the argument evaluates to true.

ptraceError :: Term s PString -> Term s a Source #

Trace the given message and terminate evaluation with a perror.

Cryptographic hashes and signatures

pverifySignature :: Term s (PByteString :--> (PByteString :--> (PByteString :--> PBool))) Source #

Deprecated: use one of the Ed25519, Schnorr- or ECDSA Secp256k1 signature verification functions

Verify the signature against the public key and message.

Converstion between Plutarch terms and Haskell types

pconstant :: forall p s. PLift p => PLifted p -> Term s p Source #

Create a Plutarch-level constant, from a Haskell value. Example: > pconstant @PInteger 42

pconstantData :: forall p h s. (ToData h, PLifted p ~ h, PConstanted h ~ p) => h -> Term s (PAsData p) Source #

Create a Plutarch-level PAsData constant, from a Haskell value. Example: > pconstantData @PInteger 42

plift :: forall p. (HasCallStack, PLift p) => ClosedTerm p -> PLifted p Source #

Like plift` but throws on failure.

type PConstant a = (a ~ PLifted (PConstanted a), PConstantDecl a) Source #

Type synonym to simplify deriving of PConstant via DerivePConstantViaNewtype.

A newtype Foo a is considered Constantable if:

  • The wrapped type a has a PConstant instance.
  • The lifted type of a has a PUnsafeLiftDecl instance.
  • There is type equality between a and PLifted (PConstanted a).

These constraints are sufficient to derive a PConstant instance for the newtype.

For deriving PConstant for a wrapped type represented in UPLC as Data, see DerivePConstantViaData.

type PLift = PUnsafeLiftDecl Source #

Class of Plutarch types p that can be converted to/from a Haskell type.

The Haskell type is determined by `PLifted p`.

This typeclass is closely tied with PConstant.

type PConstantData h = (PConstant h, FromData h, ToData h, PIsData (PConstanted h)) Source #

Type synonym to simplify deriving of PConstant via DerivePConstantViaData.

A type Foo a is considered ConstantableData if:

  • The wrapped type a has a PConstant instance.
  • The lifted type of a has a PUnsafeLiftDecl instance.
  • There is type equality between a and PLifted (PConstanted a).
  • The newtype has FromData and ToData instances

These constraints are sufficient to derive a PConstant instance for the newtype.

For deriving PConstant for a wrapped type represented in UPLC as Data, see DerivePConstantViaData.

Polymorphic types can be derived as follows:

data Bar a = Bar a deriving stock (GHC.Generic)

PlutusTx.makeLift ''Bar
PlutusTx.makeIsDataIndexed ''Bar [('Bar, 0)]

data PBar (a :: PType) (s :: S)
  = PBar (Term s (PDataRecord '["_0" ':= a]))
  deriving stock (GHC.Generic)
  deriving anyclass (SOP.Generic, PIsDataRepr)
  deriving (PlutusType, PIsData, PDataFields) via PIsDataReprInstances (PBar a)

instance
  forall a.
  PLiftData a =>
  PUnsafeLiftDecl (PBar a)
  where
  type PLifted (PBar a) = Bar (PLifted a)

deriving via
  ( DerivePConstantViaData
      (Bar a)
      (PBar (PConstanted a))
  )
  instance
    PConstantData a =>
    PConstantDecl (Bar a)

Continuation monad

newtype TermCont :: forall (r :: PType). S -> Type -> Type where Source #

Constructors

TermCont 

Fields

Instances

Instances details
MonadFail (TermCont s) Source # 
Instance details

Defined in Plutarch.TermCont

Methods

fail :: String -> TermCont s a Source #

Applicative (TermCont s) Source # 
Instance details

Defined in Plutarch.TermCont

Methods

pure :: a -> TermCont s a Source #

(<*>) :: TermCont s (a -> b) -> TermCont s a -> TermCont s b Source #

liftA2 :: (a -> b -> c) -> TermCont s a -> TermCont s b -> TermCont s c Source #

(*>) :: TermCont s a -> TermCont s b -> TermCont s b Source #

(<*) :: TermCont s a -> TermCont s b -> TermCont s a Source #

Functor (TermCont s) Source # 
Instance details

Defined in Plutarch.TermCont

Methods

fmap :: (a -> b) -> TermCont s a -> TermCont s b Source #

(<$) :: a -> TermCont s b -> TermCont s a Source #

Monad (TermCont s) Source # 
Instance details

Defined in Plutarch.TermCont

Methods

(>>=) :: TermCont s a -> (a -> TermCont s b) -> TermCont s b Source #

(>>) :: TermCont s a -> TermCont s b -> TermCont s b Source #

return :: a -> TermCont s a Source #

unTermCont :: TermCont @a s (Term s a) -> Term s a Source #

tcont :: ((a -> Term s r) -> Term s r) -> TermCont @r s a Source #

pupcast :: forall a b s. PSubtype a b => Term s b -> Term s a Source #

ptryFrom :: forall b a s r. PTryFrom a b => Term s a -> ((Term s b, Reduce (PTryFromExcess a b s)) -> Term s r) -> Term s r Source #

class PSubtype a b => PTryFrom (a :: PType) (b :: PType) Source #

PTryFrom a b represents a subtyping relationship between a and b, and a way to go from a to b. Laws: - (punsafeCoerce . fst) $ tcont (ptryFrom x) ≡ pure x

Instances

Instances details
PTryFrom PData PAddress Source # 
Instance details

Defined in Plutarch.Api.V1.Address

Associated Types

type PTryFromExcess PData PAddress :: PType Source #

Methods

ptryFrom' :: forall (s :: S) (r :: PType). Term s PData -> ((Term s PAddress, Reduce (PTryFromExcess PData PAddress s)) -> Term s r) -> Term s r Source #

PTryFrom PData PCredential Source # 
Instance details

Defined in Plutarch.Api.V1.Address

Associated Types

type PTryFromExcess PData PCredential :: PType Source #

Methods

ptryFrom' :: forall (s :: S) (r :: PType). Term s PData -> ((Term s PCredential, Reduce (PTryFromExcess PData PCredential s)) -> Term s r) -> Term s r Source #

PTryFrom PData PStakingCredential Source # 
Instance details

Defined in Plutarch.Api.V1.Address

Methods

ptryFrom' :: forall (s :: S) (r :: PType). Term s PData -> ((Term s PStakingCredential, Reduce (PTryFromExcess PData PStakingCredential s)) -> Term s r) -> Term s r Source #

PTryFrom PData PTxId Source # 
Instance details

Defined in Plutarch.Api.V1.Tx

Associated Types

type PTryFromExcess PData PTxId :: PType Source #

Methods

ptryFrom' :: forall (s :: S) (r :: PType). Term s PData -> ((Term s PTxId, Reduce (PTryFromExcess PData PTxId s)) -> Term s r) -> Term s r Source #

PTryFrom PData PTxOutRef Source # 
Instance details

Defined in Plutarch.Api.V1.Tx

Associated Types

type PTryFromExcess PData PTxOutRef :: PType Source #

Methods

ptryFrom' :: forall (s :: S) (r :: PType). Term s PData -> ((Term s PTxOutRef, Reduce (PTryFromExcess PData PTxOutRef s)) -> Term s r) -> Term s r Source #

PTryFrom PData PData Source # 
Instance details

Defined in Plutarch.Builtin

Associated Types

type PTryFromExcess PData PData :: PType Source #

Methods

ptryFrom' :: forall (s :: S) (r :: PType). Term s PData -> ((Term s PData, Reduce (PTryFromExcess PData PData s)) -> Term s r) -> Term s r Source #

PTryFrom PInteger PPositive Source # 
Instance details

Defined in Plutarch.Positive

Associated Types

type PTryFromExcess PInteger PPositive :: PType Source #

Methods

ptryFrom' :: forall (s :: S) (r :: PType). Term s PInteger -> ((Term s PPositive, Reduce (PTryFromExcess PInteger PPositive s)) -> Term s r) -> Term s r Source #

PTryFrom PData a => PTryFrom PData (PMaybeData a) Source # 
Instance details

Defined in Plutarch.Api.V1.Maybe

Associated Types

type PTryFromExcess PData (PMaybeData a) :: PType Source #

Methods

ptryFrom' :: forall (s :: S) (r :: PType). Term s PData -> ((Term s (PMaybeData a), Reduce (PTryFromExcess PData (PMaybeData a) s)) -> Term s r) -> Term s r Source #

PTryFrom PData (PAsData PAddress) Source # 
Instance details

Defined in Plutarch.Api.V1.Address

Associated Types

type PTryFromExcess PData (PAsData PAddress) :: PType Source #

Methods

ptryFrom' :: forall (s :: S) (r :: PType). Term s PData -> ((Term s (PAsData PAddress), Reduce (PTryFromExcess PData (PAsData PAddress) s)) -> Term s r) -> Term s r Source #

PTryFrom PData (PAsData PCredential) Source # 
Instance details

Defined in Plutarch.Api.V1.Address

Methods

ptryFrom' :: forall (s :: S) (r :: PType). Term s PData -> ((Term s (PAsData PCredential), Reduce (PTryFromExcess PData (PAsData PCredential) s)) -> Term s r) -> Term s r Source #

PTryFrom PData (PAsData PStakingCredential) Source # 
Instance details

Defined in Plutarch.Api.V1.Address

Methods

ptryFrom' :: forall (s :: S) (r :: PType). Term s PData -> ((Term s (PAsData PStakingCredential), Reduce (PTryFromExcess PData (PAsData PStakingCredential) s)) -> Term s r) -> Term s r Source #

(POrd k, PIsData k, PIsData v, PTryFrom PData (PAsData k), PTryFrom PData (PAsData v)) => PTryFrom PData (PAsData (PMap 'Sorted k v)) Source # 
Instance details

Defined in Plutarch.Api.V1.AssocMap

Associated Types

type PTryFromExcess PData (PAsData (PMap 'Sorted k v)) :: PType Source #

Methods

ptryFrom' :: forall (s :: S) (r :: PType). Term s PData -> ((Term s (PAsData (PMap 'Sorted k v)), Reduce (PTryFromExcess PData (PAsData (PMap 'Sorted k v)) s)) -> Term s r) -> Term s r Source #

(PTryFrom PData (PAsData k), PTryFrom PData (PAsData v)) => PTryFrom PData (PAsData (PMap 'Unsorted k v)) Source # 
Instance details

Defined in Plutarch.Api.V1.AssocMap

Associated Types

type PTryFromExcess PData (PAsData (PMap 'Unsorted k v)) :: PType Source #

Methods

ptryFrom' :: forall (s :: S) (r :: PType). Term s PData -> ((Term s (PAsData (PMap 'Unsorted k v)), Reduce (PTryFromExcess PData (PAsData (PMap 'Unsorted k v)) s)) -> Term s r) -> Term s r Source #

PTryFrom PData (PAsData PPubKeyHash) Source # 
Instance details

Defined in Plutarch.Api.V1.Crypto

Methods

ptryFrom' :: forall (s :: S) (r :: PType). Term s PData -> ((Term s (PAsData PPubKeyHash), Reduce (PTryFromExcess PData (PAsData PPubKeyHash) s)) -> Term s r) -> Term s r Source #

PTryFrom PData a => PTryFrom PData (PAsData (PMaybeData a)) Source # 
Instance details

Defined in Plutarch.Api.V1.Maybe

Associated Types

type PTryFromExcess PData (PAsData (PMaybeData a)) :: PType Source #

Methods

ptryFrom' :: forall (s :: S) (r :: PType). Term s PData -> ((Term s (PAsData (PMaybeData a)), Reduce (PTryFromExcess PData (PAsData (PMaybeData a)) s)) -> Term s r) -> Term s r Source #

PTryFrom PData (PAsData PScriptHash) Source # 
Instance details

Defined in Plutarch.Api.V1.Scripts

Methods

ptryFrom' :: forall (s :: S) (r :: PType). Term s PData -> ((Term s (PAsData PScriptHash), Reduce (PTryFromExcess PData (PAsData PScriptHash) s)) -> Term s r) -> Term s r Source #

PTryFrom PData (PAsData PPOSIXTime) Source # 
Instance details

Defined in Plutarch.Api.V1.Time

Associated Types

type PTryFromExcess PData (PAsData PPOSIXTime) :: PType Source #

Methods

ptryFrom' :: forall (s :: S) (r :: PType). Term s PData -> ((Term s (PAsData PPOSIXTime), Reduce (PTryFromExcess PData (PAsData PPOSIXTime) s)) -> Term s r) -> Term s r Source #

PTryFrom PData (PAsData PTxId) Source # 
Instance details

Defined in Plutarch.Api.V1.Tx

Associated Types

type PTryFromExcess PData (PAsData PTxId) :: PType Source #

Methods

ptryFrom' :: forall (s :: S) (r :: PType). Term s PData -> ((Term s (PAsData PTxId), Reduce (PTryFromExcess PData (PAsData PTxId) s)) -> Term s r) -> Term s r Source #

PTryFrom PData (PAsData PTxOutRef) Source # 
Instance details

Defined in Plutarch.Api.V1.Tx

Associated Types

type PTryFromExcess PData (PAsData PTxOutRef) :: PType Source #

Methods

ptryFrom' :: forall (s :: S) (r :: PType). Term s PData -> ((Term s (PAsData PTxOutRef), Reduce (PTryFromExcess PData (PAsData PTxOutRef) s)) -> Term s r) -> Term s r Source #

PTryFrom PData (PAsData PCurrencySymbol) Source # 
Instance details

Defined in Plutarch.Api.V1.Value

Methods

ptryFrom' :: forall (s :: S) (r :: PType). Term s PData -> ((Term s (PAsData PCurrencySymbol), Reduce (PTryFromExcess PData (PAsData PCurrencySymbol) s)) -> Term s r) -> Term s r Source #

PTryFrom PData (PAsData PTokenName) Source # 
Instance details

Defined in Plutarch.Api.V1.Value

Associated Types

type PTryFromExcess PData (PAsData PTokenName) :: PType Source #

Methods

ptryFrom' :: forall (s :: S) (r :: PType). Term s PData -> ((Term s (PAsData PTokenName), Reduce (PTryFromExcess PData (PAsData PTokenName) s)) -> Term s r) -> Term s r Source #

PTryFrom PData (PAsData (PValue 'Sorted 'NoGuarantees)) Source # 
Instance details

Defined in Plutarch.Api.V1.Value

Methods

ptryFrom' :: forall (s :: S) (r :: PType). Term s PData -> ((Term s (PAsData (PValue 'Sorted 'NoGuarantees)), Reduce (PTryFromExcess PData (PAsData (PValue 'Sorted 'NoGuarantees)) s)) -> Term s r) -> Term s r Source #

PTryFrom PData (PAsData (PValue 'Sorted 'NonZero)) Source # 
Instance details

Defined in Plutarch.Api.V1.Value

Associated Types

type PTryFromExcess PData (PAsData (PValue 'Sorted 'NonZero)) :: PType Source #

Methods

ptryFrom' :: forall (s :: S) (r :: PType). Term s PData -> ((Term s (PAsData (PValue 'Sorted 'NonZero)), Reduce (PTryFromExcess PData (PAsData (PValue 'Sorted 'NonZero)) s)) -> Term s r) -> Term s r Source #

PTryFrom PData (PAsData (PValue 'Sorted 'Positive)) Source # 
Instance details

Defined in Plutarch.Api.V1.Value

Methods

ptryFrom' :: forall (s :: S) (r :: PType). Term s PData -> ((Term s (PAsData (PValue 'Sorted 'Positive)), Reduce (PTryFromExcess PData (PAsData (PValue 'Sorted 'Positive)) s)) -> Term s r) -> Term s r Source #

PTryFrom PData (PAsData (PValue 'Unsorted 'NoGuarantees)) Source # 
Instance details

Defined in Plutarch.Api.V1.Value

Methods

ptryFrom' :: forall (s :: S) (r :: PType). Term s PData -> ((Term s (PAsData (PValue 'Unsorted 'NoGuarantees)), Reduce (PTryFromExcess PData (PAsData (PValue 'Unsorted 'NoGuarantees)) s)) -> Term s r) -> Term s r Source #

PTryFrom PData (PAsData (PValue 'Unsorted 'NonZero)) Source # 
Instance details

Defined in Plutarch.Api.V1.Value

Methods

ptryFrom' :: forall (s :: S) (r :: PType). Term s PData -> ((Term s (PAsData (PValue 'Unsorted 'NonZero)), Reduce (PTryFromExcess PData (PAsData (PValue 'Unsorted 'NonZero)) s)) -> Term s r) -> Term s r Source #

PTryFrom PData (PAsData (PValue 'Unsorted 'Positive)) Source # 
Instance details

Defined in Plutarch.Api.V1.Value

Methods

ptryFrom' :: forall (s :: S) (r :: PType). Term s PData -> ((Term s (PAsData (PValue 'Unsorted 'Positive)), Reduce (PTryFromExcess PData (PAsData (PValue 'Unsorted 'Positive)) s)) -> Term s r) -> Term s r Source #

(PTryFrom PData (PAsData a), PIsData a) => PTryFrom PData (PAsData (PBuiltinList (PAsData a))) Source #

Recover a `PBuiltinList (PAsData a)`

Instance details

Defined in Plutarch.Builtin

Associated Types

type PTryFromExcess PData (PAsData (PBuiltinList (PAsData a))) :: PType Source #

Methods

ptryFrom' :: forall (s :: S) (r :: PType). Term s PData -> ((Term s (PAsData (PBuiltinList (PAsData a))), Reduce (PTryFromExcess PData (PAsData (PBuiltinList (PAsData a))) s)) -> Term s r) -> Term s r Source #

PTryFrom PData (PAsData (PBuiltinList PData)) Source #

This verifies a list to be indeed a list but doesn't recover the inner data use this instance instead of the one for `PData (PAsData (PBuiltinList (PAsData a)))` as this is O(1) instead of O(n)

Instance details

Defined in Plutarch.Builtin

Methods

ptryFrom' :: forall (s :: S) (r :: PType). Term s PData -> ((Term s (PAsData (PBuiltinList PData)), Reduce (PTryFromExcess PData (PAsData (PBuiltinList PData)) s)) -> Term s r) -> Term s r Source #

(PTryFrom PData a, a ~ PAsData a', PIsData a', PTryFrom PData b, b ~ PAsData b', PIsData b') => PTryFrom PData (PAsData (PBuiltinPair a b)) Source #

Recover a `PAsData (PBuiltinPair a b)`

Instance details

Defined in Plutarch.Builtin

Associated Types

type PTryFromExcess PData (PAsData (PBuiltinPair a b)) :: PType Source #

Methods

ptryFrom' :: forall (s :: S) (r :: PType). Term s PData -> ((Term s (PAsData (PBuiltinPair a b)), Reduce (PTryFromExcess PData (PAsData (PBuiltinPair a b)) s)) -> Term s r) -> Term s r Source #

PTryFrom PData (PAsData PData) Source # 
Instance details

Defined in Plutarch.Builtin

Associated Types

type PTryFromExcess PData (PAsData PData) :: PType Source #

Methods

ptryFrom' :: forall (s :: S) (r :: PType). Term s PData -> ((Term s (PAsData PData), Reduce (PTryFromExcess PData (PAsData PData) s)) -> Term s r) -> Term s r Source #

PTryFrom PData (PAsData PByteString) Source # 
Instance details

Defined in Plutarch.Builtin

Methods

ptryFrom' :: forall (s :: S) (r :: PType). Term s PData -> ((Term s (PAsData PByteString), Reduce (PTryFromExcess PData (PAsData PByteString) s)) -> Term s r) -> Term s r Source #

(PTryFrom (PBuiltinList PData) (PDataRecord as), PTryFromExcess (PBuiltinList PData) (PDataRecord as) ~ HRecP ase) => PTryFrom PData (PAsData (PDataRecord as)) Source # 
Instance details

Defined in Plutarch.DataRepr.Internal

Associated Types

type PTryFromExcess PData (PAsData (PDataRecord as)) :: PType Source #

Methods

ptryFrom' :: forall (s :: S) (r :: PType). Term s PData -> ((Term s (PAsData (PDataRecord as)), Reduce (PTryFromExcess PData (PAsData (PDataRecord as)) s)) -> Term s r) -> Term s r Source #

PTryFrom PData (PDataSum ys) => PTryFrom PData (PAsData (PDataSum ys)) Source # 
Instance details

Defined in Plutarch.DataRepr.Internal

Associated Types

type PTryFromExcess PData (PAsData (PDataSum ys)) :: PType Source #

Methods

ptryFrom' :: forall (s :: S) (r :: PType). Term s PData -> ((Term s (PAsData (PDataSum ys)), Reduce (PTryFromExcess PData (PAsData (PDataSum ys)) s)) -> Term s r) -> Term s r Source #

PTryFrom PData (PAsData PInteger) Source # 
Instance details

Defined in Plutarch.Builtin

Associated Types

type PTryFromExcess PData (PAsData PInteger) :: PType Source #

Methods

ptryFrom' :: forall (s :: S) (r :: PType). Term s PData -> ((Term s (PAsData PInteger), Reduce (PTryFromExcess PData (PAsData PInteger) s)) -> Term s r) -> Term s r Source #

PTryFrom PData (PAsData PPositive) Source # 
Instance details

Defined in Plutarch.Positive

Associated Types

type PTryFromExcess PData (PAsData PPositive) :: PType Source #

Methods

ptryFrom' :: forall (s :: S) (r :: PType). Term s PData -> ((Term s (PAsData PPositive), Reduce (PTryFromExcess PData (PAsData PPositive) s)) -> Term s r) -> Term s r Source #

PTryFrom PData (PAsData PRational) Source #

NOTE: This instance produces a verified PPositive as the excess output.

Instance details

Defined in Plutarch.Rational

Associated Types

type PTryFromExcess PData (PAsData PRational) :: PType Source #

Methods

ptryFrom' :: forall (s :: S) (r :: PType). Term s PData -> ((Term s (PAsData PRational), Reduce (PTryFromExcess PData (PAsData PRational) s)) -> Term s r) -> Term s r Source #

SumValidation 0 ys => PTryFrom PData (PDataSum ys) Source # 
Instance details

Defined in Plutarch.DataRepr.Internal

Associated Types

type PTryFromExcess PData (PDataSum ys) :: PType Source #

Methods

ptryFrom' :: forall (s :: S) (r :: PType). Term s PData -> ((Term s (PDataSum ys), Reduce (PTryFromExcess PData (PDataSum ys) s)) -> Term s r) -> Term s r Source #

(Helper2 (PSubtype' PData pty) pty, PTryFrom (PBuiltinList PData) (PDataRecord as), PTryFromExcess (PBuiltinList PData) (PDataRecord as) ~ HRecP ase) => PTryFrom (PBuiltinList PData) (PDataRecord ((name := pty) ': as)) Source # 
Instance details

Defined in Plutarch.DataRepr.Internal

Associated Types

type PTryFromExcess (PBuiltinList PData) (PDataRecord ((name := pty) ': as)) :: PType Source #

Methods

ptryFrom' :: forall (s :: S) (r :: PType). Term s (PBuiltinList PData) -> ((Term s (PDataRecord ((name := pty) ': as)), Reduce (PTryFromExcess (PBuiltinList PData) (PDataRecord ((name := pty) ': as)) s)) -> Term s r) -> Term s r Source #

PTryFrom (PBuiltinList PData) (PDataRecord ('[] :: [PLabeledType])) Source # 
Instance details

Defined in Plutarch.DataRepr.Internal

Associated Types

type PTryFromExcess (PBuiltinList PData) (PDataRecord '[]) :: PType Source #

Methods

ptryFrom' :: forall (s :: S) (r :: PType). Term s (PBuiltinList PData) -> ((Term s (PDataRecord '[]), Reduce (PTryFromExcess (PBuiltinList PData) (PDataRecord '[]) s)) -> Term s r) -> Term s r Source #

type family PSubtype (a :: PType) (b :: PType) :: Constraint where ... Source #

Equations

PSubtype a b = (PSubtype' a b ~ 'PSubtypeRelation, PSubtypeHelper a b (PSubtype' a b)) 

class Generic a Source #

Representable types of kind *. This class is derivable in GHC with the DeriveGeneric flag on.

A Generic instance must satisfy the following laws:

from . toid
to . fromid

Minimal complete definition

from, to

Instances

Instances details
Generic Value 
Instance details

Defined in Data.Aeson.Types.Internal

Associated Types

type Rep Value :: Type -> Type Source #

Methods

from :: Value -> Rep Value x Source #

to :: Rep Value x -> Value Source #

Generic AdjacencyIntMap 
Instance details

Defined in Algebra.Graph.AdjacencyIntMap

Associated Types

type Rep AdjacencyIntMap :: Type -> Type Source #

Generic All 
Instance details

Defined in Data.Semigroup.Internal

Associated Types

type Rep All :: Type -> Type Source #

Methods

from :: All -> Rep All x Source #

to :: Rep All x -> All Source #

Generic Any 
Instance details

Defined in Data.Semigroup.Internal

Associated Types

type Rep Any :: Type -> Type Source #

Methods

from :: Any -> Rep Any x Source #

to :: Rep Any x -> Any Source #

Generic Version 
Instance details

Defined in Data.Version

Associated Types

type Rep Version :: Type -> Type Source #

Generic Void 
Instance details

Defined in Data.Void

Associated Types

type Rep Void :: Type -> Type Source #

Methods

from :: Void -> Rep Void x Source #

to :: Rep Void x -> Void Source #

Generic ByteOrder 
Instance details

Defined in GHC.ByteOrder

Associated Types

type Rep ByteOrder :: Type -> Type Source #

Generic Fingerprint 
Instance details

Defined in GHC.Generics

Associated Types

type Rep Fingerprint :: Type -> Type Source #

Generic Associativity 
Instance details

Defined in GHC.Generics

Associated Types

type Rep Associativity :: Type -> Type Source #

Generic DecidedStrictness 
Instance details

Defined in GHC.Generics

Associated Types

type Rep DecidedStrictness :: Type -> Type Source #

Generic Fixity 
Instance details

Defined in GHC.Generics

Associated Types

type Rep Fixity :: Type -> Type Source #

Generic SourceStrictness 
Instance details

Defined in GHC.Generics

Associated Types

type Rep SourceStrictness :: Type -> Type Source #

Generic SourceUnpackedness 
Instance details

Defined in GHC.Generics

Associated Types

type Rep SourceUnpackedness :: Type -> Type Source #

Generic ExitCode 
Instance details

Defined in GHC.IO.Exception

Associated Types

type Rep ExitCode :: Type -> Type Source #

Generic CCFlags 
Instance details

Defined in GHC.RTS.Flags

Associated Types

type Rep CCFlags :: Type -> Type Source #

Generic ConcFlags 
Instance details

Defined in GHC.RTS.Flags

Associated Types

type Rep ConcFlags :: Type -> Type Source #

Generic DebugFlags 
Instance details

Defined in GHC.RTS.Flags

Associated Types

type Rep DebugFlags :: Type -> Type Source #

Generic DoCostCentres 
Instance details

Defined in GHC.RTS.Flags

Associated Types

type Rep DoCostCentres :: Type -> Type Source #

Generic DoHeapProfile 
Instance details

Defined in GHC.RTS.Flags

Associated Types

type Rep DoHeapProfile :: Type -> Type Source #

Generic DoTrace 
Instance details

Defined in GHC.RTS.Flags

Associated Types

type Rep DoTrace :: Type -> Type Source #

Generic GCFlags 
Instance details

Defined in GHC.RTS.Flags

Associated Types

type Rep GCFlags :: Type -> Type Source #

Generic GiveGCStats 
Instance details

Defined in GHC.RTS.Flags

Associated Types

type Rep GiveGCStats :: Type -> Type Source #

Generic MiscFlags 
Instance details

Defined in GHC.RTS.Flags

Associated Types

type Rep MiscFlags :: Type -> Type Source #

Generic ParFlags 
Instance details

Defined in GHC.RTS.Flags

Associated Types

type Rep ParFlags :: Type -> Type Source #

Generic ProfFlags 
Instance details

Defined in GHC.RTS.Flags

Associated Types

type Rep ProfFlags :: Type -> Type Source #

Generic RTSFlags 
Instance details

Defined in GHC.RTS.Flags

Associated Types

type Rep RTSFlags :: Type -> Type Source #

Generic TickyFlags 
Instance details

Defined in GHC.RTS.Flags

Associated Types

type Rep TickyFlags :: Type -> Type Source #

Generic TraceFlags 
Instance details

Defined in GHC.RTS.Flags

Associated Types

type Rep TraceFlags :: Type -> Type Source #

Generic SrcLoc 
Instance details

Defined in GHC.Generics

Associated Types

type Rep SrcLoc :: Type -> Type Source #

Generic GCDetails 
Instance details

Defined in GHC.Stats

Associated Types

type Rep GCDetails :: Type -> Type Source #

Generic RTSStats 
Instance details

Defined in GHC.Stats

Associated Types

type Rep RTSStats :: Type -> Type Source #

Generic GeneralCategory 
Instance details

Defined in GHC.Generics

Associated Types

type Rep GeneralCategory :: Type -> Type Source #

Generic ByteSpan 
Instance details

Defined in Cardano.Binary.Annotated

Associated Types

type Rep ByteSpan :: Type -> Type Source #

Generic Filler 
Instance details

Defined in Flat.Filler

Associated Types

type Rep Filler :: Type -> Type Source #

Generic ForeignSrcLang 
Instance details

Defined in GHC.ForeignSrcLang.Type

Associated Types

type Rep ForeignSrcLang :: Type -> Type Source #

Generic Extension 
Instance details

Defined in GHC.LanguageExtensions.Type

Associated Types

type Rep Extension :: Type -> Type Source #

Generic ClosureType 
Instance details

Defined in GHC.Exts.Heap.ClosureTypes

Associated Types

type Rep ClosureType :: Type -> Type Source #

Generic PrimType 
Instance details

Defined in GHC.Exts.Heap.Closures

Associated Types

type Rep PrimType :: Type -> Type Source #

Generic TsoFlags 
Instance details

Defined in GHC.Exts.Heap.Closures

Associated Types

type Rep TsoFlags :: Type -> Type Source #

Generic WhatNext 
Instance details

Defined in GHC.Exts.Heap.Closures

Associated Types

type Rep WhatNext :: Type -> Type Source #

Generic WhyBlocked 
Instance details

Defined in GHC.Exts.Heap.Closures

Associated Types

type Rep WhyBlocked :: Type -> Type Source #

Generic StgInfoTable 
Instance details

Defined in GHC.Exts.Heap.InfoTable.Types

Associated Types

type Rep StgInfoTable :: Type -> Type Source #

Generic CostCentre 
Instance details

Defined in GHC.Exts.Heap.ProfInfo.Types

Associated Types

type Rep CostCentre :: Type -> Type Source #

Generic CostCentreStack 
Instance details

Defined in GHC.Exts.Heap.ProfInfo.Types

Associated Types

type Rep CostCentreStack :: Type -> Type Source #

Generic IndexTable 
Instance details

Defined in GHC.Exts.Heap.ProfInfo.Types

Associated Types

type Rep IndexTable :: Type -> Type Source #

Generic StgTSOProfInfo 
Instance details

Defined in GHC.Exts.Heap.ProfInfo.Types

Associated Types

type Rep StgTSOProfInfo :: Type -> Type Source #

Generic Ordering 
Instance details

Defined in GHC.Generics

Associated Types

type Rep Ordering :: Type -> Type Source #

Generic Half 
Instance details

Defined in Numeric.Half.Internal

Associated Types

type Rep Half :: Type -> Type Source #

Methods

from :: Half -> Rep Half x Source #

to :: Rep Half x -> Half Source #

Generic InvalidPosException 
Instance details

Defined in Text.Megaparsec.Pos

Associated Types

type Rep InvalidPosException :: Type -> Type Source #

Generic Pos 
Instance details

Defined in Text.Megaparsec.Pos

Associated Types

type Rep Pos :: Type -> Type Source #

Methods

from :: Pos -> Rep Pos x Source #

to :: Rep Pos x -> Pos Source #

Generic SourcePos 
Instance details

Defined in Text.Megaparsec.Pos

Associated Types

type Rep SourcePos :: Type -> Type Source #

Generic Script Source # 
Instance details

Defined in Plutarch.Script

Associated Types

type Rep Script :: Type -> Type Source #

Generic SatInt 
Instance details

Defined in Data.SatInt

Associated Types

type Rep SatInt :: Type -> Type Source #

Generic Data 
Instance details

Defined in PlutusCore.Data

Associated Types

type Rep Data :: Type -> Type Source #

Methods

from :: Data -> Rep Data x Source #

to :: Rep Data x -> Data Source #

Generic DeBruijn 
Instance details

Defined in PlutusCore.DeBruijn.Internal

Associated Types

type Rep DeBruijn :: Type -> Type Source #

Generic FreeVariableError 
Instance details

Defined in PlutusCore.DeBruijn.Internal

Associated Types

type Rep FreeVariableError :: Type -> Type Source #

Generic Index 
Instance details

Defined in PlutusCore.DeBruijn.Internal

Associated Types

type Rep Index :: Type -> Type Source #

Methods

from :: Index -> Rep Index x Source #

to :: Rep Index x -> Index Source #

Generic NamedDeBruijn 
Instance details

Defined in PlutusCore.DeBruijn.Internal

Associated Types

type Rep NamedDeBruijn :: Type -> Type Source #

Generic NamedTyDeBruijn 
Instance details

Defined in PlutusCore.DeBruijn.Internal

Associated Types

type Rep NamedTyDeBruijn :: Type -> Type Source #

Generic TyDeBruijn 
Instance details

Defined in PlutusCore.DeBruijn.Internal

Associated Types

type Rep TyDeBruijn :: Type -> Type Source #

Generic DefaultFun 
Instance details

Defined in PlutusCore.Default.Builtins

Associated Types

type Rep DefaultFun :: Type -> Type Source #

Generic ParserError 
Instance details

Defined in PlutusCore.Error

Associated Types

type Rep ParserError :: Type -> Type Source #

Generic ParserErrorBundle 
Instance details

Defined in PlutusCore.Error

Associated Types

type Rep ParserErrorBundle :: Type -> Type Source #

Generic CkUserError 
Instance details

Defined in PlutusCore.Evaluation.Machine.Ck

Associated Types

type Rep CkUserError :: Type -> Type Source #

Methods

from :: CkUserError -> Rep CkUserError x Source #

to :: Rep CkUserError x -> CkUserError Source #

Generic ModelAddedSizes 
Instance details

Defined in PlutusCore.Evaluation.Machine.CostingFun.Core

Associated Types

type Rep ModelAddedSizes :: Type -> Type Source #

Generic ModelConstantOrLinear 
Instance details

Defined in PlutusCore.Evaluation.Machine.CostingFun.Core

Associated Types

type Rep ModelConstantOrLinear :: Type -> Type Source #

Generic ModelConstantOrTwoArguments 
Instance details

Defined in PlutusCore.Evaluation.Machine.CostingFun.Core

Associated Types

type Rep ModelConstantOrTwoArguments :: Type -> Type Source #

Generic ModelFiveArguments 
Instance details

Defined in PlutusCore.Evaluation.Machine.CostingFun.Core

Associated Types

type Rep ModelFiveArguments :: Type -> Type Source #

Generic ModelFourArguments 
Instance details

Defined in PlutusCore.Evaluation.Machine.CostingFun.Core

Associated Types

type Rep ModelFourArguments :: Type -> Type Source #

Generic ModelLinearSize 
Instance details

Defined in PlutusCore.Evaluation.Machine.CostingFun.Core

Associated Types

type Rep ModelLinearSize :: Type -> Type Source #

Generic ModelMaxSize 
Instance details

Defined in PlutusCore.Evaluation.Machine.CostingFun.Core

Associated Types

type Rep ModelMaxSize :: Type -> Type Source #

Generic ModelMinSize 
Instance details

Defined in PlutusCore.Evaluation.Machine.CostingFun.Core

Associated Types

type Rep ModelMinSize :: Type -> Type Source #

Generic ModelMultipliedSizes 
Instance details

Defined in PlutusCore.Evaluation.Machine.CostingFun.Core

Associated Types

type Rep ModelMultipliedSizes :: Type -> Type Source #

Generic ModelOneArgument 
Instance details

Defined in PlutusCore.Evaluation.Machine.CostingFun.Core

Associated Types

type Rep ModelOneArgument :: Type -> Type Source #

Generic ModelSixArguments 
Instance details

Defined in PlutusCore.Evaluation.Machine.CostingFun.Core

Associated Types

type Rep ModelSixArguments :: Type -> Type Source #

Generic ModelSubtractedSizes 
Instance details

Defined in PlutusCore.Evaluation.Machine.CostingFun.Core

Associated Types

type Rep ModelSubtractedSizes :: Type -> Type Source #

Generic ModelThreeArguments 
Instance details

Defined in PlutusCore.Evaluation.Machine.CostingFun.Core

Associated Types

type Rep ModelThreeArguments :: Type -> Type Source #

Generic ModelTwoArguments 
Instance details

Defined in PlutusCore.Evaluation.Machine.CostingFun.Core

Associated Types

type Rep ModelTwoArguments :: Type -> Type Source #

Generic ExBudget 
Instance details

Defined in PlutusCore.Evaluation.Machine.ExBudget

Associated Types

type Rep ExBudget :: Type -> Type Source #

Generic ExCPU 
Instance details

Defined in PlutusCore.Evaluation.Machine.ExMemory

Associated Types

type Rep ExCPU :: Type -> Type Source #

Methods

from :: ExCPU -> Rep ExCPU x Source #

to :: Rep ExCPU x -> ExCPU Source #

Generic ExMemory 
Instance details

Defined in PlutusCore.Evaluation.Machine.ExMemory

Associated Types

type Rep ExMemory :: Type -> Type Source #

Generic Name 
Instance details

Defined in PlutusCore.Name

Associated Types

type Rep Name :: Type -> Type Source #

Methods

from :: Name -> Rep Name x Source #

to :: Rep Name x -> Name Source #

Generic TyName 
Instance details

Defined in PlutusCore.Name

Associated Types

type Rep TyName :: Type -> Type Source #

Generic Recursivity 
Instance details

Defined in PlutusIR.Core.Type

Associated Types

type Rep Recursivity :: Type -> Type Source #

Generic Strictness 
Instance details

Defined in PlutusIR.Core.Type

Associated Types

type Rep Strictness :: Type -> Type Source #

Generic CekMachineCosts 
Instance details

Defined in UntypedPlutusCore.Evaluation.Machine.Cek.CekMachineCosts

Associated Types

type Rep CekMachineCosts :: Type -> Type Source #

Generic CekUserError 
Instance details

Defined in UntypedPlutusCore.Evaluation.Machine.Cek.Internal

Associated Types

type Rep CekUserError :: Type -> Type Source #

Generic StepKind 
Instance details

Defined in UntypedPlutusCore.Evaluation.Machine.Cek.Internal

Associated Types

type Rep StepKind :: Type -> Type Source #

Generic EvaluationContext 
Instance details

Defined in PlutusLedgerApi.Common.Eval

Associated Types

type Rep EvaluationContext :: Type -> Type Source #

Generic ProtocolVersion 
Instance details

Defined in PlutusLedgerApi.Common.ProtocolVersions

Associated Types

type Rep ProtocolVersion :: Type -> Type Source #

Generic LedgerPlutusVersion 
Instance details

Defined in PlutusLedgerApi.Common.Versions

Associated Types

type Rep LedgerPlutusVersion :: Type -> Type Source #

Generic Address 
Instance details

Defined in PlutusLedgerApi.V1.Address

Associated Types

type Rep Address :: Type -> Type Source #

Generic LedgerBytes 
Instance details

Defined in PlutusLedgerApi.V1.Bytes

Associated Types

type Rep LedgerBytes :: Type -> Type Source #

Generic ScriptContext 
Instance details

Defined in PlutusLedgerApi.V1.Contexts

Associated Types

type Rep ScriptContext :: Type -> Type Source #

Generic ScriptPurpose 
Instance details

Defined in PlutusLedgerApi.V1.Contexts

Associated Types

type Rep ScriptPurpose :: Type -> Type Source #

Generic TxInInfo 
Instance details

Defined in PlutusLedgerApi.V1.Contexts

Associated Types

type Rep TxInInfo :: Type -> Type Source #

Generic TxInfo 
Instance details

Defined in PlutusLedgerApi.V1.Contexts

Associated Types

type Rep TxInfo :: Type -> Type Source #

Generic Credential 
Instance details

Defined in PlutusLedgerApi.V1.Credential

Associated Types

type Rep Credential :: Type -> Type Source #

Generic StakingCredential 
Instance details

Defined in PlutusLedgerApi.V1.Credential

Associated Types

type Rep StakingCredential :: Type -> Type Source #

Generic PubKeyHash 
Instance details

Defined in PlutusLedgerApi.V1.Crypto

Associated Types

type Rep PubKeyHash :: Type -> Type Source #

Generic DCert 
Instance details

Defined in PlutusLedgerApi.V1.DCert

Associated Types

type Rep DCert :: Type -> Type Source #

Methods

from :: DCert -> Rep DCert x Source #

to :: Rep DCert x -> DCert Source #

Generic ParamName 
Instance details

Defined in PlutusLedgerApi.V1.ParamName

Associated Types

type Rep ParamName :: Type -> Type Source #

Generic Datum 
Instance details

Defined in PlutusLedgerApi.V1.Scripts

Associated Types

type Rep Datum :: Type -> Type Source #

Methods

from :: Datum -> Rep Datum x Source #

to :: Rep Datum x -> Datum Source #

Generic DatumHash 
Instance details

Defined in PlutusLedgerApi.V1.Scripts

Associated Types

type Rep DatumHash :: Type -> Type Source #

Generic Redeemer 
Instance details

Defined in PlutusLedgerApi.V1.Scripts

Associated Types

type Rep Redeemer :: Type -> Type Source #

Generic RedeemerHash 
Instance details

Defined in PlutusLedgerApi.V1.Scripts

Associated Types

type Rep RedeemerHash :: Type -> Type Source #

Generic ScriptError 
Instance details

Defined in PlutusLedgerApi.V1.Scripts

Associated Types

type Rep ScriptError :: Type -> Type Source #

Generic ScriptHash 
Instance details

Defined in PlutusLedgerApi.V1.Scripts

Associated Types

type Rep ScriptHash :: Type -> Type Source #

Generic DiffMilliSeconds 
Instance details

Defined in PlutusLedgerApi.V1.Time

Associated Types

type Rep DiffMilliSeconds :: Type -> Type Source #

Generic POSIXTime 
Instance details

Defined in PlutusLedgerApi.V1.Time

Associated Types

type Rep POSIXTime :: Type -> Type Source #

Generic RedeemerPtr 
Instance details

Defined in PlutusLedgerApi.V1.Tx

Associated Types

type Rep RedeemerPtr :: Type -> Type Source #

Generic ScriptTag 
Instance details

Defined in PlutusLedgerApi.V1.Tx

Associated Types

type Rep ScriptTag :: Type -> Type Source #

Generic TxId 
Instance details

Defined in PlutusLedgerApi.V1.Tx

Associated Types

type Rep TxId :: Type -> Type Source #

Methods

from :: TxId -> Rep TxId x Source #

to :: Rep TxId x -> TxId Source #

Generic TxOut 
Instance details

Defined in PlutusLedgerApi.V1.Tx

Associated Types

type Rep TxOut :: Type -> Type Source #

Methods

from :: TxOut -> Rep TxOut x Source #

to :: Rep TxOut x -> TxOut Source #

Generic TxOutRef 
Instance details

Defined in PlutusLedgerApi.V1.Tx

Associated Types

type Rep TxOutRef :: Type -> Type Source #

Generic AssetClass 
Instance details

Defined in PlutusLedgerApi.V1.Value

Associated Types

type Rep AssetClass :: Type -> Type Source #

Generic CurrencySymbol 
Instance details

Defined in PlutusLedgerApi.V1.Value

Associated Types

type Rep CurrencySymbol :: Type -> Type Source #

Generic TokenName 
Instance details

Defined in PlutusLedgerApi.V1.Value

Associated Types

type Rep TokenName :: Type -> Type Source #

Generic Value 
Instance details

Defined in PlutusLedgerApi.V1.Value

Associated Types

type Rep Value :: Type -> Type Source #

Methods

from :: Value -> Rep Value x Source #

to :: Rep Value x -> Value Source #

Generic ScriptContext 
Instance details

Defined in PlutusLedgerApi.V2.Contexts

Associated Types

type Rep ScriptContext :: Type -> Type Source #

Generic TxInInfo 
Instance details

Defined in PlutusLedgerApi.V2.Contexts

Associated Types

type Rep TxInInfo :: Type -> Type Source #

Generic TxInfo 
Instance details

Defined in PlutusLedgerApi.V2.Contexts

Associated Types

type Rep TxInfo :: Type -> Type Source #

Generic ParamName 
Instance details

Defined in PlutusLedgerApi.V2.ParamName

Associated Types

type Rep ParamName :: Type -> Type Source #

Generic OutputDatum 
Instance details

Defined in PlutusLedgerApi.V2.Tx

Associated Types

type Rep OutputDatum :: Type -> Type Source #

Generic TxOut 
Instance details

Defined in PlutusLedgerApi.V2.Tx

Associated Types

type Rep TxOut :: Type -> Type Source #

Methods

from :: TxOut -> Rep TxOut x Source #

to :: Rep TxOut x -> TxOut Source #

Generic CovLoc 
Instance details

Defined in PlutusTx.Coverage

Associated Types

type Rep CovLoc :: Type -> Type Source #

Generic CoverageAnnotation 
Instance details

Defined in PlutusTx.Coverage

Associated Types

type Rep CoverageAnnotation :: Type -> Type Source #

Generic CoverageData 
Instance details

Defined in PlutusTx.Coverage

Associated Types

type Rep CoverageData :: Type -> Type Source #

Generic CoverageIndex 
Instance details

Defined in PlutusTx.Coverage

Associated Types

type Rep CoverageIndex :: Type -> Type Source #

Generic CoverageMetadata 
Instance details

Defined in PlutusTx.Coverage

Associated Types

type Rep CoverageMetadata :: Type -> Type Source #

Generic CoverageReport 
Instance details

Defined in PlutusTx.Coverage

Associated Types

type Rep CoverageReport :: Type -> Type Source #

Generic Metadata 
Instance details

Defined in PlutusTx.Coverage

Associated Types

type Rep Metadata :: Type -> Type Source #

Generic Mode 
Instance details

Defined in Text.PrettyPrint.Annotated.HughesPJ

Associated Types

type Rep Mode :: Type -> Type Source #

Methods

from :: Mode -> Rep Mode x Source #

to :: Rep Mode x -> Mode Source #

Generic Style 
Instance details

Defined in Text.PrettyPrint.Annotated.HughesPJ

Associated Types

type Rep Style :: Type -> Type Source #

Methods

from :: Style -> Rep Style x Source #

to :: Rep Style x -> Style Source #

Generic TextDetails 
Instance details

Defined in Text.PrettyPrint.Annotated.HughesPJ

Associated Types

type Rep TextDetails :: Type -> Type Source #

Generic Doc 
Instance details

Defined in Text.PrettyPrint.HughesPJ

Associated Types

type Rep Doc :: Type -> Type Source #

Methods

from :: Doc -> Rep Doc x Source #

to :: Rep Doc x -> Doc Source #

Generic AnnLookup 
Instance details

Defined in Language.Haskell.TH.Syntax

Associated Types

type Rep AnnLookup :: Type -> Type Source #

Generic AnnTarget 
Instance details

Defined in Language.Haskell.TH.Syntax

Associated Types

type Rep AnnTarget :: Type -> Type Source #

Generic Bang 
Instance details

Defined in Language.Haskell.TH.Syntax

Associated Types

type Rep Bang :: Type -> Type Source #

Methods

from :: Bang -> Rep Bang x Source #

to :: Rep Bang x -> Bang Source #

Generic Body 
Instance details

Defined in Language.Haskell.TH.Syntax

Associated Types

type Rep Body :: Type -> Type Source #

Methods

from :: Body -> Rep Body x Source #

to :: Rep Body x -> Body Source #

Generic Bytes 
Instance details

Defined in Language.Haskell.TH.Syntax

Associated Types

type Rep Bytes :: Type -> Type Source #

Methods

from :: Bytes -> Rep Bytes x Source #

to :: Rep Bytes x -> Bytes Source #

Generic Callconv 
Instance details

Defined in Language.Haskell.TH.Syntax

Associated Types

type Rep Callconv :: Type -> Type Source #

Generic Clause 
Instance details

Defined in Language.Haskell.TH.Syntax

Associated Types

type Rep Clause :: Type -> Type Source #

Generic Con 
Instance details

Defined in Language.Haskell.TH.Syntax

Associated Types

type Rep Con :: Type -> Type Source #

Methods

from :: Con -> Rep Con x Source #

to :: Rep Con x -> Con Source #

Generic Dec 
Instance details

Defined in Language.Haskell.TH.Syntax

Associated Types

type Rep Dec :: Type -> Type Source #

Methods

from :: Dec -> Rep Dec x Source #

to :: Rep Dec x -> Dec Source #

Generic DecidedStrictness 
Instance details

Defined in Language.Haskell.TH.Syntax

Associated Types

type Rep DecidedStrictness :: Type -> Type Source #

Generic DerivClause 
Instance details

Defined in Language.Haskell.TH.Syntax

Associated Types

type Rep DerivClause :: Type -> Type Source #

Generic DerivStrategy 
Instance details

Defined in Language.Haskell.TH.Syntax

Associated Types

type Rep DerivStrategy :: Type -> Type Source #

Generic DocLoc 
Instance details

Defined in Language.Haskell.TH.Syntax

Associated Types

type Rep DocLoc :: Type -> Type Source #

Generic Exp 
Instance details

Defined in Language.Haskell.TH.Syntax

Associated Types

type Rep Exp :: Type -> Type Source #

Methods

from :: Exp -> Rep Exp x Source #

to :: Rep Exp x -> Exp Source #

Generic FamilyResultSig 
Instance details

Defined in Language.Haskell.TH.Syntax

Associated Types

type Rep FamilyResultSig :: Type -> Type Source #

Generic Fixity 
Instance details

Defined in Language.Haskell.TH.Syntax

Associated Types

type Rep Fixity :: Type -> Type Source #

Generic FixityDirection 
Instance details

Defined in Language.Haskell.TH.Syntax

Associated Types

type Rep FixityDirection :: Type -> Type Source #

Generic Foreign 
Instance details

Defined in Language.Haskell.TH.Syntax

Associated Types

type Rep Foreign :: Type -> Type Source #

Generic FunDep 
Instance details

Defined in Language.Haskell.TH.Syntax

Associated Types

type Rep FunDep :: Type -> Type Source #

Generic Guard 
Instance details

Defined in Language.Haskell.TH.Syntax

Associated Types

type Rep Guard :: Type -> Type Source #

Methods

from :: Guard -> Rep Guard x Source #

to :: Rep Guard x -> Guard Source #

Generic Info 
Instance details

Defined in Language.Haskell.TH.Syntax

Associated Types

type Rep Info :: Type -> Type Source #

Methods

from :: Info -> Rep Info x Source #

to :: Rep Info x -> Info Source #

Generic InjectivityAnn 
Instance details

Defined in Language.Haskell.TH.Syntax

Associated Types

type Rep InjectivityAnn :: Type -> Type Source #

Generic Inline 
Instance details

Defined in Language.Haskell.TH.Syntax

Associated Types

type Rep Inline :: Type -> Type Source #

Generic Lit 
Instance details

Defined in Language.Haskell.TH.Syntax

Associated Types

type Rep Lit :: Type -> Type Source #

Methods

from :: Lit -> Rep Lit x Source #

to :: Rep Lit x -> Lit Source #

Generic Loc 
Instance details

Defined in Language.Haskell.TH.Syntax

Associated Types

type Rep Loc :: Type -> Type Source #

Methods

from :: Loc -> Rep Loc x Source #

to :: Rep Loc x -> Loc Source #

Generic Match 
Instance details

Defined in Language.Haskell.TH.Syntax

Associated Types

type Rep Match :: Type -> Type Source #

Methods

from :: Match -> Rep Match x Source #

to :: Rep Match x -> Match Source #

Generic ModName 
Instance details

Defined in Language.Haskell.TH.Syntax

Associated Types

type Rep ModName :: Type -> Type Source #

Generic Module 
Instance details

Defined in Language.Haskell.TH.Syntax

Associated Types

type Rep Module :: Type -> Type Source #

Generic ModuleInfo 
Instance details

Defined in Language.Haskell.TH.Syntax

Associated Types

type Rep ModuleInfo :: Type -> Type Source #

Generic Name 
Instance details

Defined in Language.Haskell.TH.Syntax

Associated Types

type Rep Name :: Type -> Type Source #

Methods

from :: Name -> Rep Name x Source #

to :: Rep Name x -> Name Source #

Generic NameFlavour 
Instance details

Defined in Language.Haskell.TH.Syntax

Associated Types

type Rep NameFlavour :: Type -> Type Source #

Generic NameSpace 
Instance details

Defined in Language.Haskell.TH.Syntax

Associated Types

type Rep NameSpace :: Type -> Type Source #

Generic OccName 
Instance details

Defined in Language.Haskell.TH.Syntax

Associated Types

type Rep OccName :: Type -> Type Source #

Generic Overlap 
Instance details

Defined in Language.Haskell.TH.Syntax

Associated Types

type Rep Overlap :: Type -> Type Source #

Generic Pat 
Instance details

Defined in Language.Haskell.TH.Syntax

Associated Types

type Rep Pat :: Type -> Type Source #

Methods

from :: Pat -> Rep Pat x Source #

to :: Rep Pat x -> Pat Source #

Generic PatSynArgs 
Instance details

Defined in Language.Haskell.TH.Syntax

Associated Types

type Rep PatSynArgs :: Type -> Type Source #

Generic PatSynDir 
Instance details

Defined in Language.Haskell.TH.Syntax

Associated Types

type Rep PatSynDir :: Type -> Type Source #

Generic Phases 
Instance details

Defined in Language.Haskell.TH.Syntax

Associated Types

type Rep Phases :: Type -> Type Source #

Generic PkgName 
Instance details

Defined in Language.Haskell.TH.Syntax

Associated Types

type Rep PkgName :: Type -> Type Source #

Generic Pragma 
Instance details

Defined in Language.Haskell.TH.Syntax

Associated Types

type Rep Pragma :: Type -> Type Source #

Generic Range 
Instance details

Defined in Language.Haskell.TH.Syntax

Associated Types

type Rep Range :: Type -> Type Source #

Methods

from :: Range -> Rep Range x Source #

to :: Rep Range x -> Range Source #

Generic Role 
Instance details

Defined in Language.Haskell.TH.Syntax

Associated Types

type Rep Role :: Type -> Type Source #

Methods

from :: Role -> Rep Role x Source #

to :: Rep Role x -> Role Source #

Generic RuleBndr 
Instance details

Defined in Language.Haskell.TH.Syntax

Associated Types

type Rep RuleBndr :: Type -> Type Source #

Generic RuleMatch 
Instance details

Defined in Language.Haskell.TH.Syntax

Associated Types

type Rep RuleMatch :: Type -> Type Source #

Generic Safety 
Instance details

Defined in Language.Haskell.TH.Syntax

Associated Types

type Rep Safety :: Type -> Type Source #

Generic SourceStrictness 
Instance details

Defined in Language.Haskell.TH.Syntax

Associated Types

type Rep SourceStrictness :: Type -> Type Source #

Generic SourceUnpackedness 
Instance details

Defined in Language.Haskell.TH.Syntax

Associated Types

type Rep SourceUnpackedness :: Type -> Type Source #

Generic Specificity 
Instance details

Defined in Language.Haskell.TH.Syntax

Associated Types

type Rep Specificity :: Type -> Type Source #

Generic Stmt 
Instance details

Defined in Language.Haskell.TH.Syntax

Associated Types

type Rep Stmt :: Type -> Type Source #

Methods

from :: Stmt -> Rep Stmt x Source #

to :: Rep Stmt x -> Stmt Source #

Generic TyLit 
Instance details

Defined in Language.Haskell.TH.Syntax

Associated Types

type Rep TyLit :: Type -> Type Source #

Methods

from :: TyLit -> Rep TyLit x Source #

to :: Rep TyLit x -> TyLit Source #

Generic TySynEqn 
Instance details

Defined in Language.Haskell.TH.Syntax

Associated Types

type Rep TySynEqn :: Type -> Type Source #

Generic Type 
Instance details

Defined in Language.Haskell.TH.Syntax

Associated Types

type Rep Type :: Type -> Type Source #

Methods

from :: Type -> Rep Type x Source #

to :: Rep Type x -> Type Source #

Generic TypeFamilyHead 
Instance details

Defined in Language.Haskell.TH.Syntax

Associated Types

type Rep TypeFamilyHead :: Type -> Type Source #

Generic ConstructorInfo 
Instance details

Defined in Language.Haskell.TH.Datatype

Associated Types

type Rep ConstructorInfo :: Type -> Type Source #

Generic ConstructorVariant 
Instance details

Defined in Language.Haskell.TH.Datatype

Associated Types

type Rep ConstructorVariant :: Type -> Type Source #

Generic DatatypeInfo 
Instance details

Defined in Language.Haskell.TH.Datatype

Associated Types

type Rep DatatypeInfo :: Type -> Type Source #

Generic DatatypeVariant 
Instance details

Defined in Language.Haskell.TH.Datatype

Associated Types

type Rep DatatypeVariant :: Type -> Type Source #

Generic FieldStrictness 
Instance details

Defined in Language.Haskell.TH.Datatype

Associated Types

type Rep FieldStrictness :: Type -> Type Source #

Generic Strictness 
Instance details

Defined in Language.Haskell.TH.Datatype

Associated Types

type Rep Strictness :: Type -> Type Source #

Generic Unpackedness 
Instance details

Defined in Language.Haskell.TH.Datatype

Associated Types

type Rep Unpackedness :: Type -> Type Source #

Generic () 
Instance details

Defined in GHC.Generics

Associated Types

type Rep () :: Type -> Type Source #

Methods

from :: () -> Rep () x Source #

to :: Rep () x -> () Source #

Generic Bool 
Instance details

Defined in GHC.Generics

Associated Types

type Rep Bool :: Type -> Type Source #

Methods

from :: Bool -> Rep Bool x Source #

to :: Rep Bool x -> Bool Source #

Generic (Only a) 
Instance details

Defined in Data.Tuple.Only

Associated Types

type Rep (Only a) :: Type -> Type Source #

Methods

from :: Only a -> Rep (Only a) x Source #

to :: Rep (Only a) x -> Only a Source #

Generic (Graph a) 
Instance details

Defined in Algebra.Graph

Associated Types

type Rep (Graph a) :: Type -> Type Source #

Methods

from :: Graph a -> Rep (Graph a) x Source #

to :: Rep (Graph a) x -> Graph a Source #

Generic (AdjacencyMap a) 
Instance details

Defined in Algebra.Graph.AdjacencyMap

Associated Types

type Rep (AdjacencyMap a) :: Type -> Type Source #

Generic (AdjacencyMap a) 
Instance details

Defined in Algebra.Graph.NonEmpty.AdjacencyMap

Associated Types

type Rep (AdjacencyMap a) :: Type -> Type Source #

Generic (Graph a) 
Instance details

Defined in Algebra.Graph.Undirected

Associated Types

type Rep (Graph a) :: Type -> Type Source #

Methods

from :: Graph a -> Rep (Graph a) x Source #

to :: Rep (Graph a) x -> Graph a Source #

Generic (ZipList a) 
Instance details

Defined in Control.Applicative

Associated Types

type Rep (ZipList a) :: Type -> Type Source #

Methods

from :: ZipList a -> Rep (ZipList a) x Source #

to :: Rep (ZipList a) x -> ZipList a Source #

Generic (Complex a) 
Instance details

Defined in Data.Complex

Associated Types

type Rep (Complex a) :: Type -> Type Source #

Methods

from :: Complex a -> Rep (Complex a) x Source #

to :: Rep (Complex a) x -> Complex a Source #

Generic (Identity a) 
Instance details

Defined in Data.Functor.Identity

Associated Types

type Rep (Identity a) :: Type -> Type Source #

Methods

from :: Identity a -> Rep (Identity a) x Source #

to :: Rep (Identity a) x -> Identity a Source #

Generic (First a) 
Instance details

Defined in Data.Monoid

Associated Types

type Rep (First a) :: Type -> Type Source #

Methods

from :: First a -> Rep (First a) x Source #

to :: Rep (First a) x -> First a Source #

Generic (Last a) 
Instance details

Defined in Data.Monoid

Associated Types

type Rep (Last a) :: Type -> Type Source #

Methods

from :: Last a -> Rep (Last a) x Source #

to :: Rep (Last a) x -> Last a Source #

Generic (Down a) 
Instance details

Defined in GHC.Generics

Associated Types

type Rep (Down a) :: Type -> Type Source #

Methods

from :: Down a -> Rep (Down a) x Source #

to :: Rep (Down a) x -> Down a Source #

Generic (First a) 
Instance details

Defined in Data.Semigroup

Associated Types

type Rep (First a) :: Type -> Type Source #

Methods

from :: First a -> Rep (First a) x Source #

to :: Rep (First a) x -> First a Source #

Generic (Last a) 
Instance details

Defined in Data.Semigroup

Associated Types

type Rep (Last a) :: Type -> Type Source #

Methods

from :: Last a -> Rep (Last a) x Source #

to :: Rep (Last a) x -> Last a Source #

Generic (Max a) 
Instance details

Defined in Data.Semigroup

Associated Types

type Rep (Max a) :: Type -> Type Source #

Methods

from :: Max a -> Rep (Max a) x Source #

to :: Rep (Max a) x -> Max a Source #

Generic (Min a) 
Instance details

Defined in Data.Semigroup

Associated Types

type Rep (Min a) :: Type -> Type Source #

Methods

from :: Min a -> Rep (Min a) x Source #

to :: Rep (Min a) x -> Min a Source #

Generic (WrappedMonoid m) 
Instance details

Defined in Data.Semigroup

Associated Types

type Rep (WrappedMonoid m) :: Type -> Type Source #

Generic (Dual a) 
Instance details

Defined in Data.Semigroup.Internal

Associated Types

type Rep (Dual a) :: Type -> Type Source #

Methods

from :: Dual a -> Rep (Dual a) x Source #

to :: Rep (Dual a) x -> Dual a Source #

Generic (Endo a) 
Instance details

Defined in Data.Semigroup.Internal

Associated Types

type Rep (Endo a) :: Type -> Type Source #

Methods

from :: Endo a -> Rep (Endo a) x Source #

to :: Rep (Endo a) x -> Endo a Source #

Generic (Product a) 
Instance details

Defined in Data.Semigroup.Internal

Associated Types

type Rep (Product a) :: Type -> Type Source #

Methods

from :: Product a -> Rep (Product a) x Source #

to :: Rep (Product a) x -> Product a Source #

Generic (Sum a) 
Instance details

Defined in Data.Semigroup.Internal

Associated Types

type Rep (Sum a) :: Type -> Type Source #

Methods

from :: Sum a -> Rep (Sum a) x Source #

to :: Rep (Sum a) x -> Sum a Source #

Generic (Par1 p) 
Instance details

Defined in GHC.Generics

Associated Types

type Rep (Par1 p) :: Type -> Type Source #

Methods

from :: Par1 p -> Rep (Par1 p) x Source #

to :: Rep (Par1 p) x -> Par1 p Source #

Generic (SigDSIGN EcdsaSecp256k1DSIGN) 
Instance details

Defined in Cardano.Crypto.DSIGN.EcdsaSecp256k1

Associated Types

type Rep (SigDSIGN EcdsaSecp256k1DSIGN) :: Type -> Type Source #

Generic (SigDSIGN Ed25519DSIGN) 
Instance details

Defined in Cardano.Crypto.DSIGN.Ed25519

Associated Types

type Rep (SigDSIGN Ed25519DSIGN) :: Type -> Type Source #

Generic (SigDSIGN SchnorrSecp256k1DSIGN) 
Instance details

Defined in Cardano.Crypto.DSIGN.SchnorrSecp256k1

Associated Types

type Rep (SigDSIGN SchnorrSecp256k1DSIGN) :: Type -> Type Source #

Generic (SignKeyDSIGN EcdsaSecp256k1DSIGN) 
Instance details

Defined in Cardano.Crypto.DSIGN.EcdsaSecp256k1

Associated Types

type Rep (SignKeyDSIGN EcdsaSecp256k1DSIGN) :: Type -> Type Source #

Generic (SignKeyDSIGN Ed25519DSIGN) 
Instance details

Defined in Cardano.Crypto.DSIGN.Ed25519

Associated Types

type Rep (SignKeyDSIGN Ed25519DSIGN) :: Type -> Type Source #

Generic (SignKeyDSIGN SchnorrSecp256k1DSIGN) 
Instance details

Defined in Cardano.Crypto.DSIGN.SchnorrSecp256k1

Associated Types

type Rep (SignKeyDSIGN SchnorrSecp256k1DSIGN) :: Type -> Type Source #

Generic (VerKeyDSIGN EcdsaSecp256k1DSIGN) 
Instance details

Defined in Cardano.Crypto.DSIGN.EcdsaSecp256k1

Associated Types

type Rep (VerKeyDSIGN EcdsaSecp256k1DSIGN) :: Type -> Type Source #

Generic (VerKeyDSIGN Ed25519DSIGN) 
Instance details

Defined in Cardano.Crypto.DSIGN.Ed25519

Associated Types

type Rep (VerKeyDSIGN Ed25519DSIGN) :: Type -> Type Source #

Generic (VerKeyDSIGN SchnorrSecp256k1DSIGN) 
Instance details

Defined in Cardano.Crypto.DSIGN.SchnorrSecp256k1

Associated Types

type Rep (VerKeyDSIGN SchnorrSecp256k1DSIGN) :: Type -> Type Source #

Generic (SCC vertex) 
Instance details

Defined in Data.Graph

Associated Types

type Rep (SCC vertex) :: Type -> Type Source #

Methods

from :: SCC vertex -> Rep (SCC vertex) x Source #

to :: Rep (SCC vertex) x -> SCC vertex Source #

Generic (Digit a) 
Instance details

Defined in Data.Sequence.Internal

Associated Types

type Rep (Digit a) :: Type -> Type Source #

Methods

from :: Digit a -> Rep (Digit a) x Source #

to :: Rep (Digit a) x -> Digit a Source #

Generic (Elem a) 
Instance details

Defined in Data.Sequence.Internal

Associated Types

type Rep (Elem a) :: Type -> Type Source #

Methods

from :: Elem a -> Rep (Elem a) x Source #

to :: Rep (Elem a) x -> Elem a Source #

Generic (FingerTree a) 
Instance details

Defined in Data.Sequence.Internal

Associated Types

type Rep (FingerTree a) :: Type -> Type Source #

Methods

from :: FingerTree a -> Rep (FingerTree a) x Source #

to :: Rep (FingerTree a) x -> FingerTree a Source #

Generic (Node a) 
Instance details

Defined in Data.Sequence.Internal

Associated Types

type Rep (Node a) :: Type -> Type Source #

Methods

from :: Node a -> Rep (Node a) x Source #

to :: Rep (Node a) x -> Node a Source #

Generic (ViewL a) 
Instance details

Defined in Data.Sequence.Internal

Associated Types

type Rep (ViewL a) :: Type -> Type Source #

Methods

from :: ViewL a -> Rep (ViewL a) x Source #

to :: Rep (ViewL a) x -> ViewL a Source #

Generic (ViewR a) 
Instance details

Defined in Data.Sequence.Internal

Associated Types

type Rep (ViewR a) :: Type -> Type Source #

Methods

from :: ViewR a -> Rep (ViewR a) x Source #

to :: Rep (ViewR a) x -> ViewR a Source #

Generic (Tree a) 
Instance details

Defined in Data.Tree

Associated Types

type Rep (Tree a) :: Type -> Type Source #

Methods

from :: Tree a -> Rep (Tree a) x Source #

to :: Rep (Tree a) x -> Tree a Source #

Generic (Fix f) 
Instance details

Defined in Data.Fix

Associated Types

type Rep (Fix f) :: Type -> Type Source #

Methods

from :: Fix f -> Rep (Fix f) x Source #

to :: Rep (Fix f) x -> Fix f Source #

Generic (PostAligned a) 
Instance details

Defined in Flat.Filler

Associated Types

type Rep (PostAligned a) :: Type -> Type Source #

Generic (PreAligned a) 
Instance details

Defined in Flat.Filler

Associated Types

type Rep (PreAligned a) :: Type -> Type Source #

Methods

from :: PreAligned a -> Rep (PreAligned a) x Source #

to :: Rep (PreAligned a) x -> PreAligned a Source #

Generic (GenClosure b) 
Instance details

Defined in GHC.Exts.Heap.Closures

Associated Types

type Rep (GenClosure b) :: Type -> Type Source #

Methods

from :: GenClosure b -> Rep (GenClosure b) x Source #

to :: Rep (GenClosure b) x -> GenClosure b Source #

Generic (ErrorFancy e) 
Instance details

Defined in Text.Megaparsec.Error

Associated Types

type Rep (ErrorFancy e) :: Type -> Type Source #

Methods

from :: ErrorFancy e -> Rep (ErrorFancy e) x Source #

to :: Rep (ErrorFancy e) x -> ErrorFancy e Source #

Generic (ErrorItem t) 
Instance details

Defined in Text.Megaparsec.Error

Associated Types

type Rep (ErrorItem t) :: Type -> Type Source #

Methods

from :: ErrorItem t -> Rep (ErrorItem t) x Source #

to :: Rep (ErrorItem t) x -> ErrorItem t Source #

Generic (PosState s) 
Instance details

Defined in Text.Megaparsec.State

Associated Types

type Rep (PosState s) :: Type -> Type Source #

Methods

from :: PosState s -> Rep (PosState s) x Source #

to :: Rep (PosState s) x -> PosState s Source #

Generic (PAddress s) Source # 
Instance details

Defined in Plutarch.Api.V1.Address

Associated Types

type Rep (PAddress s) :: Type -> Type Source #

Methods

from :: PAddress s -> Rep (PAddress s) x Source #

to :: Rep (PAddress s) x -> PAddress s Source #

Generic (PCredential s) Source # 
Instance details

Defined in Plutarch.Api.V1.Address

Associated Types

type Rep (PCredential s) :: Type -> Type Source #

Generic (PStakingCredential s) Source # 
Instance details

Defined in Plutarch.Api.V1.Address

Associated Types

type Rep (PStakingCredential s) :: Type -> Type Source #

Generic (PScriptContext s) Source # 
Instance details

Defined in Plutarch.Api.V1.Contexts

Associated Types

type Rep (PScriptContext s) :: Type -> Type Source #

Generic (PScriptPurpose s) Source # 
Instance details

Defined in Plutarch.Api.V1.Contexts

Associated Types

type Rep (PScriptPurpose s) :: Type -> Type Source #

Generic (PTxInfo s) Source # 
Instance details

Defined in Plutarch.Api.V1.Contexts

Associated Types

type Rep (PTxInfo s) :: Type -> Type Source #

Methods

from :: PTxInfo s -> Rep (PTxInfo s) x Source #

to :: Rep (PTxInfo s) x -> PTxInfo s Source #

Generic (PPubKeyHash s) Source # 
Instance details

Defined in Plutarch.Api.V1.Crypto

Associated Types

type Rep (PPubKeyHash s) :: Type -> Type Source #

Generic (PDCert s) Source # 
Instance details

Defined in Plutarch.Api.V1.DCert

Associated Types

type Rep (PDCert s) :: Type -> Type Source #

Methods

from :: PDCert s -> Rep (PDCert s) x Source #

to :: Rep (PDCert s) x -> PDCert s Source #

Generic (PDatum s) Source # 
Instance details

Defined in Plutarch.Api.V1.Scripts

Associated Types

type Rep (PDatum s) :: Type -> Type Source #

Methods

from :: PDatum s -> Rep (PDatum s) x Source #

to :: Rep (PDatum s) x -> PDatum s Source #

Generic (PDatumHash s) Source # 
Instance details

Defined in Plutarch.Api.V1.Scripts

Associated Types

type Rep (PDatumHash s) :: Type -> Type Source #

Methods

from :: PDatumHash s -> Rep (PDatumHash s) x Source #

to :: Rep (PDatumHash s) x -> PDatumHash s Source #

Generic (PRedeemer s) Source # 
Instance details

Defined in Plutarch.Api.V1.Scripts

Associated Types

type Rep (PRedeemer s) :: Type -> Type Source #

Methods

from :: PRedeemer s -> Rep (PRedeemer s) x Source #

to :: Rep (PRedeemer s) x -> PRedeemer s Source #

Generic (PRedeemerHash s) Source # 
Instance details

Defined in Plutarch.Api.V1.Scripts

Associated Types

type Rep (PRedeemerHash s) :: Type -> Type Source #

Generic (PScriptHash s) Source # 
Instance details

Defined in Plutarch.Api.V1.Scripts

Associated Types

type Rep (PScriptHash s) :: Type -> Type Source #

Generic (PPOSIXTime s) Source # 
Instance details

Defined in Plutarch.Api.V1.Time

Associated Types

type Rep (PPOSIXTime s) :: Type -> Type Source #

Methods

from :: PPOSIXTime s -> Rep (PPOSIXTime s) x Source #

to :: Rep (PPOSIXTime s) x -> PPOSIXTime s Source #

Generic (PTxId s) Source # 
Instance details

Defined in Plutarch.Api.V1.Tx

Associated Types

type Rep (PTxId s) :: Type -> Type Source #

Methods

from :: PTxId s -> Rep (PTxId s) x Source #

to :: Rep (PTxId s) x -> PTxId s Source #

Generic (PTxInInfo s) Source # 
Instance details

Defined in Plutarch.Api.V1.Tx

Associated Types

type Rep (PTxInInfo s) :: Type -> Type Source #

Methods

from :: PTxInInfo s -> Rep (PTxInInfo s) x Source #

to :: Rep (PTxInInfo s) x -> PTxInInfo s Source #

Generic (PTxOut s) Source # 
Instance details

Defined in Plutarch.Api.V1.Tx

Associated Types

type Rep (PTxOut s) :: Type -> Type Source #

Methods

from :: PTxOut s -> Rep (PTxOut s) x Source #

to :: Rep (PTxOut s) x -> PTxOut s Source #

Generic (PTxOutRef s) Source # 
Instance details

Defined in Plutarch.Api.V1.Tx

Associated Types

type Rep (PTxOutRef s) :: Type -> Type Source #

Methods

from :: PTxOutRef s -> Rep (PTxOutRef s) x Source #

to :: Rep (PTxOutRef s) x -> PTxOutRef s Source #

Generic (PCurrencySymbol s) Source # 
Instance details

Defined in Plutarch.Api.V1.Value

Associated Types

type Rep (PCurrencySymbol s) :: Type -> Type Source #

Generic (PTokenName s) Source # 
Instance details

Defined in Plutarch.Api.V1.Value

Associated Types

type Rep (PTokenName s) :: Type -> Type Source #

Methods

from :: PTokenName s -> Rep (PTokenName s) x Source #

to :: Rep (PTokenName s) x -> PTokenName s Source #

Generic (PScriptContext s) Source # 
Instance details

Defined in Plutarch.Api.V2.Contexts

Associated Types

type Rep (PScriptContext s) :: Type -> Type Source #

Generic (PTxInfo s) Source # 
Instance details

Defined in Plutarch.Api.V2.Contexts

Associated Types

type Rep (PTxInfo s) :: Type -> Type Source #

Methods

from :: PTxInfo s -> Rep (PTxInfo s) x Source #

to :: Rep (PTxInfo s) x -> PTxInfo s Source #

Generic (POutputDatum s) Source # 
Instance details

Defined in Plutarch.Api.V2.Tx

Associated Types

type Rep (POutputDatum s) :: Type -> Type Source #

Generic (PTxInInfo s) Source # 
Instance details

Defined in Plutarch.Api.V2.Tx

Associated Types

type Rep (PTxInInfo s) :: Type -> Type Source #

Methods

from :: PTxInInfo s -> Rep (PTxInInfo s) x Source #

to :: Rep (PTxInInfo s) x -> PTxInInfo s Source #

Generic (PTxOut s) Source # 
Instance details

Defined in Plutarch.Api.V2.Tx

Associated Types

type Rep (PTxOut s) :: Type -> Type Source #

Methods

from :: PTxOut s -> Rep (PTxOut s) x Source #

to :: Rep (PTxOut s) x -> PTxOut s Source #

Generic (PByteString s) Source # 
Instance details

Defined in Plutarch.ByteString

Associated Types

type Rep (PByteString s) :: Type -> Type Source #

Generic (PInteger s) Source # 
Instance details

Defined in Plutarch.Integer

Associated Types

type Rep (PInteger s) :: Type -> Type Source #

Methods

from :: PInteger s -> Rep (PInteger s) x Source #

to :: Rep (PInteger s) x -> PInteger s Source #

Generic (PPositive s) Source # 
Instance details

Defined in Plutarch.Positive

Associated Types

type Rep (PPositive s) :: Type -> Type Source #

Methods

from :: PPositive s -> Rep (PPositive s) x Source #

to :: Rep (PPositive s) x -> PPositive s Source #

Generic (PRational s) Source # 
Instance details

Defined in Plutarch.Rational

Associated Types

type Rep (PRational s) :: Type -> Type Source #

Methods

from :: PRational s -> Rep (PRational s) x Source #

to :: Rep (PRational s) x -> PRational s Source #

Generic (PString s) Source # 
Instance details

Defined in Plutarch.String

Associated Types

type Rep (PString s) :: Type -> Type Source #

Methods

from :: PString s -> Rep (PString s) x Source #

to :: Rep (PString s) x -> PString s Source #

Generic (Kind ann) 
Instance details

Defined in PlutusCore.Core.Type

Associated Types

type Rep (Kind ann) :: Type -> Type Source #

Methods

from :: Kind ann -> Rep (Kind ann) x Source #

to :: Rep (Kind ann) x -> Kind ann Source #

Generic (Normalized a) 
Instance details

Defined in PlutusCore.Core.Type

Associated Types

type Rep (Normalized a) :: Type -> Type Source #

Methods

from :: Normalized a -> Rep (Normalized a) x Source #

to :: Rep (Normalized a) x -> Normalized a Source #

Generic (Version ann) 
Instance details

Defined in PlutusCore.Core.Type

Associated Types

type Rep (Version ann) :: Type -> Type Source #

Methods

from :: Version ann -> Rep (Version ann) x Source #

to :: Rep (Version ann) x -> Version ann Source #

Generic (LR a) 
Instance details

Defined in PlutusCore.Eq

Associated Types

type Rep (LR a) :: Type -> Type Source #

Methods

from :: LR a -> Rep (LR a) x Source #

to :: Rep (LR a) x -> LR a Source #

Generic (RL a) 
Instance details

Defined in PlutusCore.Eq

Associated Types

type Rep (RL a) :: Type -> Type Source #

Methods

from :: RL a -> Rep (RL a) x Source #

to :: Rep (RL a) x -> RL a Source #

Generic (UniqueError ann) 
Instance details

Defined in PlutusCore.Error

Associated Types

type Rep (UniqueError ann) :: Type -> Type Source #

Methods

from :: UniqueError ann -> Rep (UniqueError ann) x Source #

to :: Rep (UniqueError ann) x -> UniqueError ann Source #

Generic (BuiltinCostModelBase f) 
Instance details

Defined in PlutusCore.Evaluation.Machine.BuiltinCostModel

Associated Types

type Rep (BuiltinCostModelBase f) :: Type -> Type Source #

Generic (CostingFun model) 
Instance details

Defined in PlutusCore.Evaluation.Machine.CostingFun.Core

Associated Types

type Rep (CostingFun model) :: Type -> Type Source #

Methods

from :: CostingFun model -> Rep (CostingFun model) x Source #

to :: Rep (CostingFun model) x -> CostingFun model Source #

Generic (MachineError fun) 
Instance details

Defined in PlutusCore.Evaluation.Machine.Exception

Associated Types

type Rep (MachineError fun) :: Type -> Type Source #

Methods

from :: MachineError fun -> Rep (MachineError fun) x Source #

to :: Rep (MachineError fun) x -> MachineError fun Source #

Generic (EvaluationResult a) 
Instance details

Defined in PlutusCore.Evaluation.Result

Associated Types

type Rep (EvaluationResult a) :: Type -> Type Source #

Generic (CekExTally fun) 
Instance details

Defined in UntypedPlutusCore.Evaluation.Machine.Cek.ExBudgetMode

Associated Types

type Rep (CekExTally fun) :: Type -> Type Source #

Methods

from :: CekExTally fun -> Rep (CekExTally fun) x Source #

to :: Rep (CekExTally fun) x -> CekExTally fun Source #

Generic (TallyingSt fun) 
Instance details

Defined in UntypedPlutusCore.Evaluation.Machine.Cek.ExBudgetMode

Associated Types

type Rep (TallyingSt fun) :: Type -> Type Source #

Methods

from :: TallyingSt fun -> Rep (TallyingSt fun) x Source #

to :: Rep (TallyingSt fun) x -> TallyingSt fun Source #

Generic (ExBudgetCategory fun) 
Instance details

Defined in UntypedPlutusCore.Evaluation.Machine.Cek.Internal

Associated Types

type Rep (ExBudgetCategory fun) :: Type -> Type Source #

Generic (Extended a) 
Instance details

Defined in PlutusLedgerApi.V1.Interval

Associated Types

type Rep (Extended a) :: Type -> Type Source #

Methods

from :: Extended a -> Rep (Extended a) x Source #

to :: Rep (Extended a) x -> Extended a Source #

Generic (Interval a) 
Instance details

Defined in PlutusLedgerApi.V1.Interval

Associated Types

type Rep (Interval a) :: Type -> Type Source #

Methods

from :: Interval a -> Rep (Interval a) x Source #

to :: Rep (Interval a) x -> Interval a Source #

Generic (LowerBound a) 
Instance details

Defined in PlutusLedgerApi.V1.Interval

Associated Types

type Rep (LowerBound a) :: Type -> Type Source #

Methods

from :: LowerBound a -> Rep (LowerBound a) x Source #

to :: Rep (LowerBound a) x -> LowerBound a Source #

Generic (UpperBound a) 
Instance details

Defined in PlutusLedgerApi.V1.Interval

Associated Types

type Rep (UpperBound a) :: Type -> Type Source #

Methods

from :: UpperBound a -> Rep (UpperBound a) x Source #

to :: Rep (UpperBound a) x -> UpperBound a Source #

Generic (Doc a) 
Instance details

Defined in Text.PrettyPrint.Annotated.HughesPJ

Associated Types

type Rep (Doc a) :: Type -> Type Source #

Methods

from :: Doc a -> Rep (Doc a) x Source #

to :: Rep (Doc a) x -> Doc a Source #

Generic (Doc ann) 
Instance details

Defined in Prettyprinter.Internal

Associated Types

type Rep (Doc ann) :: Type -> Type Source #

Methods

from :: Doc ann -> Rep (Doc ann) x Source #

to :: Rep (Doc ann) x -> Doc ann Source #

Generic (SimpleDocStream ann) 
Instance details

Defined in Prettyprinter.Internal

Associated Types

type Rep (SimpleDocStream ann) :: Type -> Type Source #

Generic (I a) 
Instance details

Defined in Data.SOP.BasicFunctors

Associated Types

type Rep (I a) :: Type -> Type Source #

Methods

from :: I a -> Rep (I a) x Source #

to :: Rep (I a) x -> I a Source #

Generic (Maybe a) 
Instance details

Defined in Data.Strict.Maybe

Associated Types

type Rep (Maybe a) :: Type -> Type Source #

Methods

from :: Maybe a -> Rep (Maybe a) x Source #

to :: Rep (Maybe a) x -> Maybe a Source #

Generic (TyVarBndr flag) 
Instance details

Defined in Language.Haskell.TH.Syntax

Associated Types

type Rep (TyVarBndr flag) :: Type -> Type Source #

Methods

from :: TyVarBndr flag -> Rep (TyVarBndr flag) x Source #

to :: Rep (TyVarBndr flag) x -> TyVarBndr flag Source #

Generic (Window a) 
Instance details

Defined in System.Console.Terminal.Common

Associated Types

type Rep (Window a) :: Type -> Type Source #

Methods

from :: Window a -> Rep (Window a) x Source #

to :: Rep (Window a) x -> Window a Source #

Generic (Doc a) 
Instance details

Defined in Text.PrettyPrint.Annotated.WL

Associated Types

type Rep (Doc a) :: Type -> Type Source #

Methods

from :: Doc a -> Rep (Doc a) x Source #

to :: Rep (Doc a) x -> Doc a Source #

Generic (SimpleDoc a) 
Instance details

Defined in Text.PrettyPrint.Annotated.WL

Associated Types

type Rep (SimpleDoc a) :: Type -> Type Source #

Methods

from :: SimpleDoc a -> Rep (SimpleDoc a) x Source #

to :: Rep (SimpleDoc a) x -> SimpleDoc a Source #

Generic (NonEmpty a) 
Instance details

Defined in GHC.Generics

Associated Types

type Rep (NonEmpty a) :: Type -> Type Source #

Methods

from :: NonEmpty a -> Rep (NonEmpty a) x Source #

to :: Rep (NonEmpty a) x -> NonEmpty a Source #

Generic (Maybe a) 
Instance details

Defined in GHC.Generics

Associated Types

type Rep (Maybe a) :: Type -> Type Source #

Methods

from :: Maybe a -> Rep (Maybe a) x Source #

to :: Rep (Maybe a) x -> Maybe a Source #

Generic (a) 
Instance details

Defined in GHC.Generics

Associated Types

type Rep (a) :: Type -> Type Source #

Methods

from :: (a) -> Rep (a) x Source #

to :: Rep (a) x -> (a) Source #

Generic [a] 
Instance details

Defined in GHC.Generics

Associated Types

type Rep [a] :: Type -> Type Source #

Methods

from :: [a] -> Rep [a] x Source #

to :: Rep [a] x -> [a] Source #

Generic (Graph e a) 
Instance details

Defined in Algebra.Graph.Labelled

Associated Types

type Rep (Graph e a) :: Type -> Type Source #

Methods

from :: Graph e a -> Rep (Graph e a) x Source #

to :: Rep (Graph e a) x -> Graph e a Source #

Generic (AdjacencyMap e a) 
Instance details

Defined in Algebra.Graph.Labelled.AdjacencyMap

Associated Types

type Rep (AdjacencyMap e a) :: Type -> Type Source #

Methods

from :: AdjacencyMap e a -> Rep (AdjacencyMap e a) x Source #

to :: Rep (AdjacencyMap e a) x -> AdjacencyMap e a Source #

Generic (Container b a) 
Instance details

Defined in Barbies.Internal.Containers

Associated Types

type Rep (Container b a) :: Type -> Type Source #

Methods

from :: Container b a -> Rep (Container b a) x Source #

to :: Rep (Container b a) x -> Container b a Source #

Generic (ErrorContainer b e) 
Instance details

Defined in Barbies.Internal.Containers

Associated Types

type Rep (ErrorContainer b e) :: Type -> Type Source #

Generic (Unit f) 
Instance details

Defined in Barbies.Internal.Trivial

Associated Types

type Rep (Unit f) :: Type -> Type Source #

Methods

from :: Unit f -> Rep (Unit f) x Source #

to :: Rep (Unit f) x -> Unit f Source #

Generic (Void f) 
Instance details

Defined in Barbies.Internal.Trivial

Associated Types

type Rep (Void f) :: Type -> Type Source #

Methods

from :: Void f -> Rep (Void f) x Source #

to :: Rep (Void f) x -> Void f Source #

Generic (WrappedMonad m a) 
Instance details

Defined in Control.Applicative

Associated Types

type Rep (WrappedMonad m a) :: Type -> Type Source #

Methods

from :: WrappedMonad m a -> Rep (WrappedMonad m a) x Source #

to :: Rep (WrappedMonad m a) x -> WrappedMonad m a Source #

Generic (Either a b) 
Instance details

Defined in GHC.Generics

Associated Types

type Rep (Either a b) :: Type -> Type Source #

Methods

from :: Either a b -> Rep (Either a b) x Source #

to :: Rep (Either a b) x -> Either a b Source #

Generic (Proxy t) 
Instance details

Defined in GHC.Generics

Associated Types

type Rep (Proxy t) :: Type -> Type Source #

Methods

from :: Proxy t -> Rep (Proxy t) x Source #

to :: Rep (Proxy t) x -> Proxy t Source #

Generic (Arg a b) 
Instance details

Defined in Data.Semigroup

Associated Types

type Rep (Arg a b) :: Type -> Type Source #

Methods

from :: Arg a b -> Rep (Arg a b) x Source #

to :: Rep (Arg a b) x -> Arg a b Source #

Generic (U1 p) 
Instance details

Defined in GHC.Generics

Associated Types

type Rep (U1 p) :: Type -> Type Source #

Methods

from :: U1 p -> Rep (U1 p) x Source #

to :: Rep (U1 p) x -> U1 p Source #

Generic (V1 p) 
Instance details

Defined in GHC.Generics

Associated Types

type Rep (V1 p) :: Type -> Type Source #

Methods

from :: V1 p -> Rep (V1 p) x Source #

to :: Rep (V1 p) x -> V1 p Source #

Generic (Bimap a b) 
Instance details

Defined in Data.Bimap

Associated Types

type Rep (Bimap a b) :: Type -> Type Source #

Methods

from :: Bimap a b -> Rep (Bimap a b) x Source #

to :: Rep (Bimap a b) x -> Bimap a b Source #

Generic (Annotated b a) 
Instance details

Defined in Cardano.Binary.Annotated

Associated Types

type Rep (Annotated b a) :: Type -> Type Source #

Methods

from :: Annotated b a -> Rep (Annotated b a) x Source #

to :: Rep (Annotated b a) x -> Annotated b a Source #

Generic (SignedDSIGN v a) 
Instance details

Defined in Cardano.Crypto.DSIGN.Class

Associated Types

type Rep (SignedDSIGN v a) :: Type -> Type Source #

Methods

from :: SignedDSIGN v a -> Rep (SignedDSIGN v a) x Source #

to :: Rep (SignedDSIGN v a) x -> SignedDSIGN v a Source #

Generic (Hash h a) 
Instance details

Defined in Cardano.Crypto.Hash.Class

Associated Types

type Rep (Hash h a) :: Type -> Type Source #

Methods

from :: Hash h a -> Rep (Hash h a) x Source #

to :: Rep (Hash h a) x -> Hash h a Source #

Generic (Cofree f a) 
Instance details

Defined in Control.Comonad.Cofree

Associated Types

type Rep (Cofree f a) :: Type -> Type Source #

Methods

from :: Cofree f a -> Rep (Cofree f a) x Source #

to :: Rep (Cofree f a) x -> Cofree f a Source #

Generic (Free f a) 
Instance details

Defined in Control.Monad.Free

Associated Types

type Rep (Free f a) :: Type -> Type Source #

Methods

from :: Free f a -> Rep (Free f a) x Source #

to :: Rep (Free f a) x -> Free f a Source #

Generic (ListT m a) 
Instance details

Defined in ListT

Associated Types

type Rep (ListT m a) :: Type -> Type Source #

Methods

from :: ListT m a -> Rep (ListT m a) x Source #

to :: Rep (ListT m a) x -> ListT m a Source #

Generic (ParseError s e) 
Instance details

Defined in Text.Megaparsec.Error

Associated Types

type Rep (ParseError s e) :: Type -> Type Source #

Methods

from :: ParseError s e -> Rep (ParseError s e) x Source #

to :: Rep (ParseError s e) x -> ParseError s e Source #

Generic (ParseErrorBundle s e) 
Instance details

Defined in Text.Megaparsec.Error

Associated Types

type Rep (ParseErrorBundle s e) :: Type -> Type Source #

Generic (State s e) 
Instance details

Defined in Text.Megaparsec.State

Associated Types

type Rep (State s e) :: Type -> Type Source #

Methods

from :: State s e -> Rep (State s e) x Source #

to :: Rep (State s e) x -> State s e Source #

Generic (PExtended a s) Source # 
Instance details

Defined in Plutarch.Api.V1.Interval

Associated Types

type Rep (PExtended a s) :: Type -> Type Source #

Methods

from :: PExtended a s -> Rep (PExtended a s) x Source #

to :: Rep (PExtended a s) x -> PExtended a s Source #

Generic (PInterval a s) Source # 
Instance details

Defined in Plutarch.Api.V1.Interval

Associated Types

type Rep (PInterval a s) :: Type -> Type Source #

Methods

from :: PInterval a s -> Rep (PInterval a s) x Source #

to :: Rep (PInterval a s) x -> PInterval a s Source #

Generic (PLowerBound a s) Source # 
Instance details

Defined in Plutarch.Api.V1.Interval

Associated Types

type Rep (PLowerBound a s) :: Type -> Type Source #

Methods

from :: PLowerBound a s -> Rep (PLowerBound a s) x Source #

to :: Rep (PLowerBound a s) x -> PLowerBound a s Source #

Generic (PUpperBound a s) Source # 
Instance details

Defined in Plutarch.Api.V1.Interval

Associated Types

type Rep (PUpperBound a s) :: Type -> Type Source #

Methods

from :: PUpperBound a s -> Rep (PUpperBound a s) x Source #

to :: Rep (PUpperBound a s) x -> PUpperBound a s Source #

Generic (PMaybeData a s) Source # 
Instance details

Defined in Plutarch.Api.V1.Maybe

Associated Types

type Rep (PMaybeData a s) :: Type -> Type Source #

Methods

from :: PMaybeData a s -> Rep (PMaybeData a s) x Source #

to :: Rep (PMaybeData a s) x -> PMaybeData a s Source #

Generic (PTxList a s) Source # 
Instance details

Defined in Plutarch.FFI

Associated Types

type Rep (PTxList a s) :: Type -> Type Source #

Methods

from :: PTxList a s -> Rep (PTxList a s) x Source #

to :: Rep (PTxList a s) x -> PTxList a s Source #

Generic (PTxMaybe a s) Source # 
Instance details

Defined in Plutarch.FFI

Associated Types

type Rep (PTxMaybe a s) :: Type -> Type Source #

Methods

from :: PTxMaybe a s -> Rep (PTxMaybe a s) x Source #

to :: Rep (PTxMaybe a s) x -> PTxMaybe a s Source #

Generic (PList a s) Source # 
Instance details

Defined in Plutarch.List

Associated Types

type Rep (PList a s) :: Type -> Type Source #

Methods

from :: PList a s -> Rep (PList a s) x Source #

to :: Rep (PList a s) x -> PList a s Source #

Generic (PMaybe a s) Source # 
Instance details

Defined in Plutarch.Maybe

Associated Types

type Rep (PMaybe a s) :: Type -> Type Source #

Methods

from :: PMaybe a s -> Rep (PMaybe a s) x Source #

to :: Rep (PMaybe a s) x -> PMaybe a s Source #

Generic (TyVarDecl tyname ann) 
Instance details

Defined in PlutusCore.Core.Type

Associated Types

type Rep (TyVarDecl tyname ann) :: Type -> Type Source #

Methods

from :: TyVarDecl tyname ann -> Rep (TyVarDecl tyname ann) x Source #

to :: Rep (TyVarDecl tyname ann) x -> TyVarDecl tyname ann Source #

Generic (ErrorWithCause err cause) 
Instance details

Defined in PlutusCore.Evaluation.Machine.Exception

Associated Types

type Rep (ErrorWithCause err cause) :: Type -> Type Source #

Methods

from :: ErrorWithCause err cause -> Rep (ErrorWithCause err cause) x Source #

to :: Rep (ErrorWithCause err cause) x -> ErrorWithCause err cause Source #

Generic (EvaluationError user internal) 
Instance details

Defined in PlutusCore.Evaluation.Machine.Exception

Associated Types

type Rep (EvaluationError user internal) :: Type -> Type Source #

Methods

from :: EvaluationError user internal -> Rep (EvaluationError user internal) x Source #

to :: Rep (EvaluationError user internal) x -> EvaluationError user internal Source #

Generic (Def var val) 
Instance details

Defined in PlutusCore.MkPlc

Associated Types

type Rep (Def var val) :: Type -> Type Source #

Methods

from :: Def var val -> Rep (Def var val) x Source #

to :: Rep (Def var val) x -> Def var val Source #

Generic (TypeErrorExt uni ann) 
Instance details

Defined in PlutusIR.Error

Associated Types

type Rep (TypeErrorExt uni ann) :: Type -> Type Source #

Methods

from :: TypeErrorExt uni ann -> Rep (TypeErrorExt uni ann) x Source #

to :: Rep (TypeErrorExt uni ann) x -> TypeErrorExt uni ann Source #

Generic (UVarDecl name ann) 
Instance details

Defined in UntypedPlutusCore.Core.Type

Associated Types

type Rep (UVarDecl name ann) :: Type -> Type Source #

Methods

from :: UVarDecl name ann -> Rep (UVarDecl name ann) x Source #

to :: Rep (UVarDecl name ann) x -> UVarDecl name ann Source #

Generic (Map k v) 
Instance details

Defined in PlutusTx.AssocMap

Associated Types

type Rep (Map k v) :: Type -> Type Source #

Methods

from :: Map k v -> Rep (Map k v) x Source #

to :: Rep (Map k v) x -> Map k v Source #

Generic (ListF a b) 
Instance details

Defined in Data.Functor.Base

Associated Types

type Rep (ListF a b) :: Type -> Type Source #

Methods

from :: ListF a b -> Rep (ListF a b) x Source #

to :: Rep (ListF a b) x -> ListF a b Source #

Generic (NonEmptyF a b) 
Instance details

Defined in Data.Functor.Base

Associated Types

type Rep (NonEmptyF a b) :: Type -> Type Source #

Methods

from :: NonEmptyF a b -> Rep (NonEmptyF a b) x Source #

to :: Rep (NonEmptyF a b) x -> NonEmptyF a b Source #

Generic (TreeF a b) 
Instance details

Defined in Data.Functor.Base

Associated Types

type Rep (TreeF a b) :: Type -> Type Source #

Methods

from :: TreeF a b -> Rep (TreeF a b) x Source #

to :: Rep (TreeF a b) x -> TreeF a b Source #

Generic (Either a b) 
Instance details

Defined in Data.Strict.Either

Associated Types

type Rep (Either a b) :: Type -> Type Source #

Methods

from :: Either a b -> Rep (Either a b) x Source #

to :: Rep (Either a b) x -> Either a b Source #

Generic (These a b) 
Instance details

Defined in Data.Strict.These

Associated Types

type Rep (These a b) :: Type -> Type Source #

Methods

from :: These a b -> Rep (These a b) x Source #

to :: Rep (These a b) x -> These a b Source #

Generic (Pair a b) 
Instance details

Defined in Data.Strict.Tuple

Associated Types

type Rep (Pair a b) :: Type -> Type Source #

Methods

from :: Pair a b -> Rep (Pair a b) x Source #

to :: Rep (Pair a b) x -> Pair a b Source #

Generic (These a b) 
Instance details

Defined in Data.These

Associated Types

type Rep (These a b) :: Type -> Type Source #

Methods

from :: These a b -> Rep (These a b) x Source #

to :: Rep (These a b) x -> These a b Source #

Generic (a, b) 
Instance details

Defined in GHC.Generics

Associated Types

type Rep (a, b) :: Type -> Type Source #

Methods

from :: (a, b) -> Rep (a, b) x Source #

to :: Rep (a, b) x -> (a, b) Source #

Generic (WrappedArrow a b c) 
Instance details

Defined in Control.Applicative

Associated Types

type Rep (WrappedArrow a b c) :: Type -> Type Source #

Methods

from :: WrappedArrow a b c -> Rep (WrappedArrow a b c) x Source #

to :: Rep (WrappedArrow a b c) x -> WrappedArrow a b c Source #

Generic (Kleisli m a b) 
Instance details

Defined in Control.Arrow

Associated Types

type Rep (Kleisli m a b) :: Type -> Type Source #

Methods

from :: Kleisli m a b -> Rep (Kleisli m a b) x Source #

to :: Rep (Kleisli m a b) x -> Kleisli m a b Source #

Generic (Const a b) 
Instance details

Defined in Data.Functor.Const

Associated Types

type Rep (Const a b) :: Type -> Type Source #

Methods

from :: Const a b -> Rep (Const a b) x Source #

to :: Rep (Const a b) x -> Const a b Source #

Generic (Ap f a) 
Instance details

Defined in Data.Monoid

Associated Types

type Rep (Ap f a) :: Type -> Type Source #

Methods

from :: Ap f a -> Rep (Ap f a) x Source #

to :: Rep (Ap f a) x -> Ap f a Source #

Generic (Alt f a) 
Instance details

Defined in Data.Semigroup.Internal

Associated Types

type Rep (Alt f a) :: Type -> Type Source #

Methods

from :: Alt f a -> Rep (Alt f a) x Source #

to :: Rep (Alt f a) x -> Alt f a Source #

Generic (Rec1 f p) 
Instance details

Defined in GHC.Generics

Associated Types

type Rep (Rec1 f p) :: Type -> Type Source #

Methods

from :: Rec1 f p -> Rep (Rec1 f p) x Source #

to :: Rep (Rec1 f p) x -> Rec1 f p Source #

Generic (URec (Ptr ()) p) 
Instance details

Defined in GHC.Generics

Associated Types

type Rep (URec (Ptr ()) p) :: Type -> Type Source #

Methods

from :: URec (Ptr ()) p -> Rep (URec (Ptr ()) p) x Source #

to :: Rep (URec (Ptr ()) p) x -> URec (Ptr ()) p Source #

Generic (URec Char p) 
Instance details

Defined in GHC.Generics

Associated Types

type Rep (URec Char p) :: Type -> Type Source #

Methods

from :: URec Char p -> Rep (URec Char p) x Source #

to :: Rep (URec Char p) x -> URec Char p Source #

Generic (URec Double p) 
Instance details

Defined in GHC.Generics

Associated Types

type Rep (URec Double p) :: Type -> Type Source #

Methods

from :: URec Double p -> Rep (URec Double p) x Source #

to :: Rep (URec Double p) x -> URec Double p Source #

Generic (URec Float p) 
Instance details

Defined in GHC.Generics

Associated Types

type Rep (URec Float p) :: Type -> Type Source #

Methods

from :: URec Float p -> Rep (URec Float p) x Source #

to :: Rep (URec Float p) x -> URec Float p Source #

Generic (URec Int p) 
Instance details

Defined in GHC.Generics

Associated Types

type Rep (URec Int p) :: Type -> Type Source #

Methods

from :: URec Int p -> Rep (URec Int p) x Source #

to :: Rep (URec Int p) x -> URec Int p Source #

Generic (URec Word p) 
Instance details

Defined in GHC.Generics

Associated Types

type Rep (URec Word p) :: Type -> Type Source #

Methods

from :: URec Word p -> Rep (URec Word p) x Source #

to :: Rep (URec Word p) x -> URec Word p Source #

Generic (Fix p a) 
Instance details

Defined in Data.Bifunctor.Fix

Associated Types

type Rep (Fix p a) :: Type -> Type Source #

Methods

from :: Fix p a -> Rep (Fix p a) x Source #

to :: Rep (Fix p a) x -> Fix p a Source #

Generic (Join p a) 
Instance details

Defined in Data.Bifunctor.Join

Associated Types

type Rep (Join p a) :: Type -> Type Source #

Methods

from :: Join p a -> Rep (Join p a) x Source #

to :: Rep (Join p a) x -> Join p a Source #

Generic (CofreeF f a b) 
Instance details

Defined in Control.Comonad.Trans.Cofree

Associated Types

type Rep (CofreeF f a b) :: Type -> Type Source #

Methods

from :: CofreeF f a b -> Rep (CofreeF f a b) x Source #

to :: Rep (CofreeF f a b) x -> CofreeF f a b Source #

Generic (FreeF f a b) 
Instance details

Defined in Control.Monad.Trans.Free

Associated Types

type Rep (FreeF f a b) :: Type -> Type Source #

Methods

from :: FreeF f a b -> Rep (FreeF f a b) x Source #

to :: Rep (FreeF f a b) x -> FreeF f a b Source #

Generic (PValue keys amounts s) Source # 
Instance details

Defined in Plutarch.Api.V1.Value

Associated Types

type Rep (PValue keys amounts s) :: Type -> Type Source #

Methods

from :: PValue keys amounts s -> Rep (PValue keys amounts s) x Source #

to :: Rep (PValue keys amounts s) x -> PValue keys amounts s Source #

Generic (PEither a b s) Source # 
Instance details

Defined in Plutarch.Either

Associated Types

type Rep (PEither a b s) :: Type -> Type Source #

Methods

from :: PEither a b s -> Rep (PEither a b s) x Source #

to :: Rep (PEither a b s) x -> PEither a b s Source #

Generic (PPair a b s) Source # 
Instance details

Defined in Plutarch.Pair

Associated Types

type Rep (PPair a b s) :: Type -> Type Source #

Methods

from :: PPair a b s -> Rep (PPair a b s) x Source #

to :: Rep (PPair a b s) x -> PPair a b s Source #

Generic (TyDecl tyname uni ann) 
Instance details

Defined in PlutusCore.Core.Type

Associated Types

type Rep (TyDecl tyname uni ann) :: Type -> Type Source #

Methods

from :: TyDecl tyname uni ann -> Rep (TyDecl tyname uni ann) x Source #

to :: Rep (TyDecl tyname uni ann) x -> TyDecl tyname uni ann Source #

Generic (Type tyname uni ann) 
Instance details

Defined in PlutusCore.Core.Type

Associated Types

type Rep (Type tyname uni ann) :: Type -> Type Source #

Methods

from :: Type tyname uni ann -> Rep (Type tyname uni ann) x Source #

to :: Rep (Type tyname uni ann) x -> Type tyname uni ann Source #

Generic (Error uni fun ann) 
Instance details

Defined in PlutusCore.Error

Associated Types

type Rep (Error uni fun ann) :: Type -> Type Source #

Methods

from :: Error uni fun ann -> Rep (Error uni fun ann) x Source #

to :: Rep (Error uni fun ann) x -> Error uni fun ann Source #

Generic (K a b) 
Instance details

Defined in Data.SOP.BasicFunctors

Associated Types

type Rep (K a b) :: Type -> Type Source #

Methods

from :: K a b -> Rep (K a b) x Source #

to :: Rep (K a b) x -> K a b Source #

Generic (Tagged s b) 
Instance details

Defined in Data.Tagged

Associated Types

type Rep (Tagged s b) :: Type -> Type Source #

Methods

from :: Tagged s b -> Rep (Tagged s b) x Source #

to :: Rep (Tagged s b) x -> Tagged s b Source #

Generic (These1 f g a) 
Instance details

Defined in Data.Functor.These

Associated Types

type Rep (These1 f g a) :: Type -> Type Source #

Methods

from :: These1 f g a -> Rep (These1 f g a) x Source #

to :: Rep (These1 f g a) x -> These1 f g a Source #

Generic (a, b, c) 
Instance details

Defined in GHC.Generics

Associated Types

type Rep (a, b, c) :: Type -> Type Source #

Methods

from :: (a, b, c) -> Rep (a, b, c) x Source #

to :: Rep (a, b, c) x -> (a, b, c) Source #

Generic (Product f g a) 
Instance details

Defined in Data.Functor.Product

Associated Types

type Rep (Product f g a) :: Type -> Type Source #

Methods

from :: Product f g a -> Rep (Product f g a) x Source #

to :: Rep (Product f g a) x -> Product f g a Source #

Generic (Sum f g a) 
Instance details

Defined in Data.Functor.Sum

Associated Types

type Rep (Sum f g a) :: Type -> Type Source #

Methods

from :: Sum f g a -> Rep (Sum f g a) x Source #

to :: Rep (Sum f g a) x -> Sum f g a Source #

Generic ((f :*: g) p) 
Instance details

Defined in GHC.Generics

Associated Types

type Rep ((f :*: g) p) :: Type -> Type Source #

Methods

from :: (f :*: g) p -> Rep ((f :*: g) p) x Source #

to :: Rep ((f :*: g) p) x -> (f :*: g) p Source #

Generic ((f :+: g) p) 
Instance details

Defined in GHC.Generics

Associated Types

type Rep ((f :+: g) p) :: Type -> Type Source #

Methods

from :: (f :+: g) p -> Rep ((f :+: g) p) x Source #

to :: Rep ((f :+: g) p) x -> (f :+: g) p Source #

Generic (K1 i c p) 
Instance details

Defined in GHC.Generics

Associated Types

type Rep (K1 i c p) :: Type -> Type Source #

Methods

from :: K1 i c p -> Rep (K1 i c p) x Source #

to :: Rep (K1 i c p) x -> K1 i c p Source #

Generic (PMap keysort k v s) Source # 
Instance details

Defined in Plutarch.Api.V1.AssocMap

Associated Types

type Rep (PMap keysort k v s) :: Type -> Type Source #

Methods

from :: PMap keysort k v s -> Rep (PMap keysort k v s) x Source #

to :: Rep (PMap keysort k v s) x -> PMap keysort k v s Source #

Generic (VarDecl tyname name uni ann) 
Instance details

Defined in PlutusCore.Core.Type

Associated Types

type Rep (VarDecl tyname name uni ann) :: Type -> Type Source #

Methods

from :: VarDecl tyname name uni ann -> Rep (VarDecl tyname name uni ann) x Source #

to :: Rep (VarDecl tyname name uni ann) x -> VarDecl tyname name uni ann Source #

Generic (TypeError term uni fun ann) 
Instance details

Defined in PlutusCore.Error

Associated Types

type Rep (TypeError term uni fun ann) :: Type -> Type Source #

Methods

from :: TypeError term uni fun ann -> Rep (TypeError term uni fun ann) x Source #

to :: Rep (TypeError term uni fun ann) x -> TypeError term uni fun ann Source #

Generic (MachineParameters machinecosts term uni fun) 
Instance details

Defined in PlutusCore.Evaluation.Machine.MachineParameters

Associated Types

type Rep (MachineParameters machinecosts term uni fun) :: Type -> Type Source #

Methods

from :: MachineParameters machinecosts term uni fun -> Rep (MachineParameters machinecosts term uni fun) x Source #

to :: Rep (MachineParameters machinecosts term uni fun) x -> MachineParameters machinecosts term uni fun Source #

Generic (Datatype tyname name uni a) 
Instance details

Defined in PlutusIR.Core.Type

Associated Types

type Rep (Datatype tyname name uni a) :: Type -> Type Source #

Methods

from :: Datatype tyname name uni a -> Rep (Datatype tyname name uni a) x Source #

to :: Rep (Datatype tyname name uni a) x -> Datatype tyname name uni a Source #

Generic (Program name uni fun ann) 
Instance details

Defined in UntypedPlutusCore.Core.Type

Associated Types

type Rep (Program name uni fun ann) :: Type -> Type Source #

Methods

from :: Program name uni fun ann -> Rep (Program name uni fun ann) x Source #

to :: Rep (Program name uni fun ann) x -> Program name uni fun ann Source #

Generic (Term name uni fun ann) 
Instance details

Defined in UntypedPlutusCore.Core.Type

Associated Types

type Rep (Term name uni fun ann) :: Type -> Type Source #

Methods

from :: Term name uni fun ann -> Rep (Term name uni fun ann) x Source #

to :: Rep (Term name uni fun ann) x -> Term name uni fun ann Source #

Generic (Subst name uni fun a) 
Instance details

Defined in UntypedPlutusCore.Transform.Inline

Associated Types

type Rep (Subst name uni fun a) :: Type -> Type Source #

Methods

from :: Subst name uni fun a -> Rep (Subst name uni fun a) x Source #

to :: Rep (Subst name uni fun a) x -> Subst name uni fun a Source #

Generic (a, b, c, d) 
Instance details

Defined in GHC.Generics

Associated Types

type Rep (a, b, c, d) :: Type -> Type Source #

Methods

from :: (a, b, c, d) -> Rep (a, b, c, d) x Source #

to :: Rep (a, b, c, d) x -> (a, b, c, d) Source #

Generic (Compose f g a) 
Instance details

Defined in Data.Functor.Compose

Associated Types

type Rep (Compose f g a) :: Type -> Type Source #

Methods

from :: Compose f g a -> Rep (Compose f g a) x Source #

to :: Rep (Compose f g a) x -> Compose f g a Source #

Generic ((f :.: g) p) 
Instance details

Defined in GHC.Generics

Associated Types

type Rep ((f :.: g) p) :: Type -> Type Source #

Methods

from :: (f :.: g) p -> Rep ((f :.: g) p) x Source #

to :: Rep ((f :.: g) p) x -> (f :.: g) p Source #

Generic (M1 i c f p) 
Instance details

Defined in GHC.Generics

Associated Types

type Rep (M1 i c f p) :: Type -> Type Source #

Methods

from :: M1 i c f p -> Rep (M1 i c f p) x Source #

to :: Rep (M1 i c f p) x -> M1 i c f p Source #

Generic (Clown f a b) 
Instance details

Defined in Data.Bifunctor.Clown

Associated Types

type Rep (Clown f a b) :: Type -> Type Source #

Methods

from :: Clown f a b -> Rep (Clown f a b) x Source #

to :: Rep (Clown f a b) x -> Clown f a b Source #

Generic (Flip p a b) 
Instance details

Defined in Data.Bifunctor.Flip

Associated Types

type Rep (Flip p a b) :: Type -> Type Source #

Methods

from :: Flip p a b -> Rep (Flip p a b) x Source #

to :: Rep (Flip p a b) x -> Flip p a b Source #

Generic (Joker g a b) 
Instance details

Defined in Data.Bifunctor.Joker

Associated Types

type Rep (Joker g a b) :: Type -> Type Source #

Methods

from :: Joker g a b -> Rep (Joker g a b) x Source #

to :: Rep (Joker g a b) x -> Joker g a b Source #

Generic (WrappedBifunctor p a b) 
Instance details

Defined in Data.Bifunctor.Wrapped

Associated Types

type Rep (WrappedBifunctor p a b) :: Type -> Type Source #

Methods

from :: WrappedBifunctor p a b -> Rep (WrappedBifunctor p a b) x Source #

to :: Rep (WrappedBifunctor p a b) x -> WrappedBifunctor p a b Source #

Generic (Program tyname name uni fun ann) 
Instance details

Defined in PlutusCore.Core.Type

Associated Types

type Rep (Program tyname name uni fun ann) :: Type -> Type Source #

Methods

from :: Program tyname name uni fun ann -> Rep (Program tyname name uni fun ann) x Source #

to :: Rep (Program tyname name uni fun ann) x -> Program tyname name uni fun ann Source #

Generic (Term tyname name uni fun ann) 
Instance details

Defined in PlutusCore.Core.Type

Associated Types

type Rep (Term tyname name uni fun ann) :: Type -> Type Source #

Methods

from :: Term tyname name uni fun ann -> Rep (Term tyname name uni fun ann) x Source #

to :: Rep (Term tyname name uni fun ann) x -> Term tyname name uni fun ann Source #

Generic (NormCheckError tyname name uni fun ann) 
Instance details

Defined in PlutusCore.Error

Associated Types

type Rep (NormCheckError tyname name uni fun ann) :: Type -> Type Source #

Methods

from :: NormCheckError tyname name uni fun ann -> Rep (NormCheckError tyname name uni fun ann) x Source #

to :: Rep (NormCheckError tyname name uni fun ann) x -> NormCheckError tyname name uni fun ann Source #

Generic (Binding tyname name uni fun a) 
Instance details

Defined in PlutusIR.Core.Type

Associated Types

type Rep (Binding tyname name uni fun a) :: Type -> Type Source #

Methods

from :: Binding tyname name uni fun a -> Rep (Binding tyname name uni fun a) x Source #

to :: Rep (Binding tyname name uni fun a) x -> Binding tyname name uni fun a Source #

Generic (Program tyname name uni fun ann) 
Instance details

Defined in PlutusIR.Core.Type

Associated Types

type Rep (Program tyname name uni fun ann) :: Type -> Type Source #

Methods

from :: Program tyname name uni fun ann -> Rep (Program tyname name uni fun ann) x Source #

to :: Rep (Program tyname name uni fun ann) x -> Program tyname name uni fun ann Source #

Generic (Term tyname name uni fun a) 
Instance details

Defined in PlutusIR.Core.Type

Associated Types

type Rep (Term tyname name uni fun a) :: Type -> Type Source #

Methods

from :: Term tyname name uni fun a -> Rep (Term tyname name uni fun a) x Source #

to :: Rep (Term tyname name uni fun a) x -> Term tyname name uni fun a Source #

Generic (Subst tyname name uni fun a) 
Instance details

Defined in PlutusIR.Transform.Inline

Associated Types

type Rep (Subst tyname name uni fun a) :: Type -> Type Source #

Methods

from :: Subst tyname name uni fun a -> Rep (Subst tyname name uni fun a) x Source #

to :: Rep (Subst tyname name uni fun a) x -> Subst tyname name uni fun a Source #

Generic (BindingGrp tyname name uni fun a) 
Instance details

Defined in PlutusIR.Transform.LetFloat

Associated Types

type Rep (BindingGrp tyname name uni fun a) :: Type -> Type Source #

Methods

from :: BindingGrp tyname name uni fun a -> Rep (BindingGrp tyname name uni fun a) x Source #

to :: Rep (BindingGrp tyname name uni fun a) x -> BindingGrp tyname name uni fun a Source #

Generic ((f :.: g) p) 
Instance details

Defined in Data.SOP.BasicFunctors

Associated Types

type Rep ((f :.: g) p) :: Type -> Type Source #

Methods

from :: (f :.: g) p -> Rep ((f :.: g) p) x Source #

to :: Rep ((f :.: g) p) x -> (f :.: g) p Source #

Generic (a, b, c, d, e) 
Instance details

Defined in GHC.Generics

Associated Types

type Rep (a, b, c, d, e) :: Type -> Type Source #

Methods

from :: (a, b, c, d, e) -> Rep (a, b, c, d, e) x Source #

to :: Rep (a, b, c, d, e) x -> (a, b, c, d, e) Source #

Generic (Product f g a b) 
Instance details

Defined in Data.Bifunctor.Product

Associated Types

type Rep (Product f g a b) :: Type -> Type Source #

Methods

from :: Product f g a b -> Rep (Product f g a b) x Source #

to :: Rep (Product f g a b) x -> Product f g a b Source #

Generic (Sum p q a b) 
Instance details

Defined in Data.Bifunctor.Sum

Associated Types

type Rep (Sum p q a b) :: Type -> Type Source #

Methods

from :: Sum p q a b -> Rep (Sum p q a b) x Source #

to :: Rep (Sum p q a b) x -> Sum p q a b Source #

Generic (a, b, c, d, e, f) 
Instance details

Defined in GHC.Generics

Associated Types

type Rep (a, b, c, d, e, f) :: Type -> Type Source #

Methods

from :: (a, b, c, d, e, f) -> Rep (a, b, c, d, e, f) x Source #

to :: Rep (a, b, c, d, e, f) x -> (a, b, c, d, e, f) Source #

Generic (Tannen f p a b) 
Instance details

Defined in Data.Bifunctor.Tannen

Associated Types

type Rep (Tannen f p a b) :: Type -> Type Source #

Methods

from :: Tannen f p a b -> Rep (Tannen f p a b) x Source #

to :: Rep (Tannen f p a b) x -> Tannen f p a b Source #

Generic (a, b, c, d, e, f, g) 
Instance details

Defined in GHC.Generics

Associated Types

type Rep (a, b, c, d, e, f, g) :: Type -> Type Source #

Methods

from :: (a, b, c, d, e, f, g) -> Rep (a, b, c, d, e, f, g) x Source #

to :: Rep (a, b, c, d, e, f, g) x -> (a, b, c, d, e, f, g) Source #

Generic (a, b, c, d, e, f, g, h) 
Instance details

Defined in GHC.Generics

Associated Types

type Rep (a, b, c, d, e, f, g, h) :: Type -> Type Source #

Methods

from :: (a, b, c, d, e, f, g, h) -> Rep (a, b, c, d, e, f, g, h) x Source #

to :: Rep (a, b, c, d, e, f, g, h) x -> (a, b, c, d, e, f, g, h) Source #

Generic (Biff p f g a b) 
Instance details

Defined in Data.Bifunctor.Biff

Associated Types

type Rep (Biff p f g a b) :: Type -> Type Source #

Methods

from :: Biff p f g a b -> Rep (Biff p f g a b) x Source #

to :: Rep (Biff p f g a b) x -> Biff p f g a b Source #

Generic (a, b, c, d, e, f, g, h, i) 
Instance details

Defined in GHC.Generics

Associated Types

type Rep (a, b, c, d, e, f, g, h, i) :: Type -> Type Source #

Methods

from :: (a, b, c, d, e, f, g, h, i) -> Rep (a, b, c, d, e, f, g, h, i) x Source #

to :: Rep (a, b, c, d, e, f, g, h, i) x -> (a, b, c, d, e, f, g, h, i) Source #

Generic (a, b, c, d, e, f, g, h, i, j) 
Instance details

Defined in GHC.Generics

Associated Types

type Rep (a, b, c, d, e, f, g, h, i, j) :: Type -> Type Source #

Methods

from :: (a, b, c, d, e, f, g, h, i, j) -> Rep (a, b, c, d, e, f, g, h, i, j) x Source #

to :: Rep (a, b, c, d, e, f, g, h, i, j) x -> (a, b, c, d, e, f, g, h, i, j) Source #

Generic (a, b, c, d, e, f, g, h, i, j, k) 
Instance details

Defined in GHC.Generics

Associated Types

type Rep (a, b, c, d, e, f, g, h, i, j, k) :: Type -> Type Source #

Methods

from :: (a, b, c, d, e, f, g, h, i, j, k) -> Rep (a, b, c, d, e, f, g, h, i, j, k) x Source #

to :: Rep (a, b, c, d, e, f, g, h, i, j, k) x -> (a, b, c, d, e, f, g, h, i, j, k) Source #

Generic (a, b, c, d, e, f, g, h, i, j, k, l) 
Instance details

Defined in GHC.Generics

Associated Types

type Rep (a, b, c, d, e, f, g, h, i, j, k, l) :: Type -> Type Source #

Methods

from :: (a, b, c, d, e, f, g, h, i, j, k, l) -> Rep (a, b, c, d, e, f, g, h, i, j, k, l) x Source #

to :: Rep (a, b, c, d, e, f, g, h, i, j, k, l) x -> (a, b, c, d, e, f, g, h, i, j, k, l) Source #

Generic (a, b, c, d, e, f, g, h, i, j, k, l, m) 
Instance details

Defined in GHC.Generics

Associated Types

type Rep (a, b, c, d, e, f, g, h, i, j, k, l, m) :: Type -> Type Source #

Methods

from :: (a, b, c, d, e, f, g, h, i, j, k, l, m) -> Rep (a, b, c, d, e, f, g, h, i, j, k, l, m) x Source #

to :: Rep (a, b, c, d, e, f, g, h, i, j, k, l, m) x -> (a, b, c, d, e, f, g, h, i, j, k, l, m) Source #

Generic (a, b, c, d, e, f, g, h, i, j, k, l, m, n) 
Instance details

Defined in GHC.Generics

Associated Types

type Rep (a, b, c, d, e, f, g, h, i, j, k, l, m, n) :: Type -> Type Source #

Methods

from :: (a, b, c, d, e, f, g, h, i, j, k, l, m, n) -> Rep (a, b, c, d, e, f, g, h, i, j, k, l, m, n) x Source #

to :: Rep (a, b, c, d, e, f, g, h, i, j, k, l, m, n) x -> (a, b, c, d, e, f, g, h, i, j, k, l, m, n) Source #

Generic (a, b, c, d, e, f, g, h, i, j, k, l, m, n, o) 
Instance details

Defined in GHC.Generics

Associated Types

type Rep (a, b, c, d, e, f, g, h, i, j, k, l, m, n, o) :: Type -> Type Source #

Methods

from :: (a, b, c, d, e, f, g, h, i, j, k, l, m, n, o) -> Rep (a, b, c, d, e, f, g, h, i, j, k, l, m, n, o) x Source #

to :: Rep (a, b, c, d, e, f, g, h, i, j, k, l, m, n, o) x -> (a, b, c, d, e, f, g, h, i, j, k, l, m, n, o) Source #