{-# OPTIONS_GHC -Wno-orphans #-}
module Plutarch.LedgerApi.V3.Contexts (
PColdCommitteeCredential (..),
PHotCommitteeCredential (..),
PDRepCredential (..),
PDRep (..),
PDelegatee (..),
PTxCert (..),
PVoter (..),
PVote (..),
PGovernanceActionId (..),
PCommittee (..),
PConstitution (..),
PProtocolVersion (..),
PChangedParameters (..),
PGovernanceAction (..),
PProposalProcedure (..),
PScriptPurpose (..),
PScriptInfo (..),
PTxInInfo (..),
PTxInfo (..),
PScriptContext (..),
pfindDatum,
pfindDatumHash,
) where
import GHC.Generics (Generic)
import Generics.SOP qualified as SOP
import Plutarch.LedgerApi.AssocMap qualified as AssocMap
import Plutarch.LedgerApi.Interval qualified as Interval
import Plutarch.LedgerApi.Utils (PMaybeData, PRationalData)
import Plutarch.LedgerApi.V1.Credential (PCredential)
import Plutarch.LedgerApi.V1.Crypto (PPubKeyHash)
import Plutarch.LedgerApi.V1.Scripts (
PDatum,
PDatumHash,
PRedeemer,
PScriptHash,
)
import Plutarch.LedgerApi.V1.Time (PPosixTime)
import Plutarch.LedgerApi.V2.Tx (PTxOut)
import Plutarch.LedgerApi.V3.Tx (PTxId, PTxOutRef)
import Plutarch.LedgerApi.Value qualified as Value
import Plutarch.Prelude
import PlutusLedgerApi.V3 qualified as Plutus
newtype PColdCommitteeCredential (s :: S) = PColdCommitteeCredential (Term s PCredential)
deriving stock
(
(forall x.
PColdCommitteeCredential s -> Rep (PColdCommitteeCredential s) x)
-> (forall x.
Rep (PColdCommitteeCredential s) x -> PColdCommitteeCredential s)
-> Generic (PColdCommitteeCredential s)
forall x.
Rep (PColdCommitteeCredential s) x -> PColdCommitteeCredential s
forall x.
PColdCommitteeCredential s -> Rep (PColdCommitteeCredential s) x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
forall (s :: S) x.
Rep (PColdCommitteeCredential s) x -> PColdCommitteeCredential s
forall (s :: S) x.
PColdCommitteeCredential s -> Rep (PColdCommitteeCredential s) x
$cfrom :: forall (s :: S) x.
PColdCommitteeCredential s -> Rep (PColdCommitteeCredential s) x
from :: forall x.
PColdCommitteeCredential s -> Rep (PColdCommitteeCredential s) x
$cto :: forall (s :: S) x.
Rep (PColdCommitteeCredential s) x -> PColdCommitteeCredential s
to :: forall x.
Rep (PColdCommitteeCredential s) x -> PColdCommitteeCredential s
Generic
)
deriving anyclass
(
All SListI (Code (PColdCommitteeCredential s))
All SListI (Code (PColdCommitteeCredential s)) =>
(PColdCommitteeCredential s -> Rep (PColdCommitteeCredential s))
-> (Rep (PColdCommitteeCredential s) -> PColdCommitteeCredential s)
-> Generic (PColdCommitteeCredential s)
Rep (PColdCommitteeCredential s) -> PColdCommitteeCredential s
PColdCommitteeCredential s -> Rep (PColdCommitteeCredential s)
forall a.
All SListI (Code a) =>
(a -> Rep a) -> (Rep a -> a) -> Generic a
forall (s :: S). All SListI (Code (PColdCommitteeCredential s))
forall (s :: S).
Rep (PColdCommitteeCredential s) -> PColdCommitteeCredential s
forall (s :: S).
PColdCommitteeCredential s -> Rep (PColdCommitteeCredential s)
$cfrom :: forall (s :: S).
PColdCommitteeCredential s -> Rep (PColdCommitteeCredential s)
from :: PColdCommitteeCredential s -> Rep (PColdCommitteeCredential s)
$cto :: forall (s :: S).
Rep (PColdCommitteeCredential s) -> PColdCommitteeCredential s
to :: Rep (PColdCommitteeCredential s) -> PColdCommitteeCredential s
SOP.Generic
,
(forall (s :: S).
Term s (PAsData PColdCommitteeCredential)
-> Term s PColdCommitteeCredential)
-> (forall (s :: S).
Term s PColdCommitteeCredential -> Term s PData)
-> PIsData PColdCommitteeCredential
forall (s :: S).
Term s (PAsData PColdCommitteeCredential)
-> Term s PColdCommitteeCredential
forall (s :: S). Term s PColdCommitteeCredential -> Term s PData
forall (a :: S -> Type).
(forall (s :: S). Term s (PAsData a) -> Term s a)
-> (forall (s :: S). Term s a -> Term s PData) -> PIsData a
$cpfromDataImpl :: forall (s :: S).
Term s (PAsData PColdCommitteeCredential)
-> Term s PColdCommitteeCredential
pfromDataImpl :: forall (s :: S).
Term s (PAsData PColdCommitteeCredential)
-> Term s PColdCommitteeCredential
$cpdataImpl :: forall (s :: S). Term s PColdCommitteeCredential -> Term s PData
pdataImpl :: forall (s :: S). Term s PColdCommitteeCredential -> Term s PData
PIsData
,
(forall (s :: S).
Term s PColdCommitteeCredential
-> Term s PColdCommitteeCredential -> Term s PBool)
-> PEq PColdCommitteeCredential
forall (s :: S).
Term s PColdCommitteeCredential
-> Term s PColdCommitteeCredential -> Term s PBool
forall (t :: S -> Type).
(forall (s :: S). Term s t -> Term s t -> Term s PBool) -> PEq t
$c#== :: forall (s :: S).
Term s PColdCommitteeCredential
-> Term s PColdCommitteeCredential -> Term s PBool
#== :: forall (s :: S).
Term s PColdCommitteeCredential
-> Term s PColdCommitteeCredential -> Term s PBool
PEq
,
(forall (s :: S).
Bool -> Term s PColdCommitteeCredential -> Term s PString)
-> PShow PColdCommitteeCredential
forall (s :: S).
Bool -> Term s PColdCommitteeCredential -> Term s PString
forall (t :: S -> Type).
(forall (s :: S). Bool -> Term s t -> Term s PString) -> PShow t
$cpshow' :: forall (s :: S).
Bool -> Term s PColdCommitteeCredential -> Term s PString
pshow' :: forall (s :: S).
Bool -> Term s PColdCommitteeCredential -> Term s PString
PShow
)
deriving
(
(forall (s :: S).
PColdCommitteeCredential s
-> Term s (PInner PColdCommitteeCredential))
-> (forall (s :: S) (b :: S -> Type).
Term s (PInner PColdCommitteeCredential)
-> (PColdCommitteeCredential s -> Term s b) -> Term s b)
-> PlutusType PColdCommitteeCredential
forall (s :: S).
PColdCommitteeCredential s
-> Term s (PInner PColdCommitteeCredential)
forall (s :: S) (b :: S -> Type).
Term s (PInner PColdCommitteeCredential)
-> (PColdCommitteeCredential s -> Term s b) -> Term s b
forall (a :: S -> Type).
(forall (s :: S). a s -> Term s (PInner a))
-> (forall (s :: S) (b :: S -> Type).
Term s (PInner a) -> (a s -> Term s b) -> Term s b)
-> PlutusType a
$cpcon' :: forall (s :: S).
PColdCommitteeCredential s
-> Term s (PInner PColdCommitteeCredential)
pcon' :: forall (s :: S).
PColdCommitteeCredential s
-> Term s (PInner PColdCommitteeCredential)
$cpmatch' :: forall (s :: S) (b :: S -> Type).
Term s (PInner PColdCommitteeCredential)
-> (PColdCommitteeCredential s -> Term s b) -> Term s b
pmatch' :: forall (s :: S) (b :: S -> Type).
Term s (PInner PColdCommitteeCredential)
-> (PColdCommitteeCredential s -> Term s b) -> Term s b
PlutusType
)
via (DeriveNewtypePlutusType PColdCommitteeCredential)
deriving via
DeriveDataPLiftable PColdCommitteeCredential Plutus.ColdCommitteeCredential
instance
PLiftable PColdCommitteeCredential
newtype PHotCommitteeCredential (s :: S) = PHotCommitteeCredential (Term s PCredential)
deriving stock
(
(forall x.
PHotCommitteeCredential s -> Rep (PHotCommitteeCredential s) x)
-> (forall x.
Rep (PHotCommitteeCredential s) x -> PHotCommitteeCredential s)
-> Generic (PHotCommitteeCredential s)
forall x.
Rep (PHotCommitteeCredential s) x -> PHotCommitteeCredential s
forall x.
PHotCommitteeCredential s -> Rep (PHotCommitteeCredential s) x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
forall (s :: S) x.
Rep (PHotCommitteeCredential s) x -> PHotCommitteeCredential s
forall (s :: S) x.
PHotCommitteeCredential s -> Rep (PHotCommitteeCredential s) x
$cfrom :: forall (s :: S) x.
PHotCommitteeCredential s -> Rep (PHotCommitteeCredential s) x
from :: forall x.
PHotCommitteeCredential s -> Rep (PHotCommitteeCredential s) x
$cto :: forall (s :: S) x.
Rep (PHotCommitteeCredential s) x -> PHotCommitteeCredential s
to :: forall x.
Rep (PHotCommitteeCredential s) x -> PHotCommitteeCredential s
Generic
)
deriving anyclass
(
All SListI (Code (PHotCommitteeCredential s))
All SListI (Code (PHotCommitteeCredential s)) =>
(PHotCommitteeCredential s -> Rep (PHotCommitteeCredential s))
-> (Rep (PHotCommitteeCredential s) -> PHotCommitteeCredential s)
-> Generic (PHotCommitteeCredential s)
Rep (PHotCommitteeCredential s) -> PHotCommitteeCredential s
PHotCommitteeCredential s -> Rep (PHotCommitteeCredential s)
forall a.
All SListI (Code a) =>
(a -> Rep a) -> (Rep a -> a) -> Generic a
forall (s :: S). All SListI (Code (PHotCommitteeCredential s))
forall (s :: S).
Rep (PHotCommitteeCredential s) -> PHotCommitteeCredential s
forall (s :: S).
PHotCommitteeCredential s -> Rep (PHotCommitteeCredential s)
$cfrom :: forall (s :: S).
PHotCommitteeCredential s -> Rep (PHotCommitteeCredential s)
from :: PHotCommitteeCredential s -> Rep (PHotCommitteeCredential s)
$cto :: forall (s :: S).
Rep (PHotCommitteeCredential s) -> PHotCommitteeCredential s
to :: Rep (PHotCommitteeCredential s) -> PHotCommitteeCredential s
SOP.Generic
,
(forall (s :: S).
Term s (PAsData PHotCommitteeCredential)
-> Term s PHotCommitteeCredential)
-> (forall (s :: S).
Term s PHotCommitteeCredential -> Term s PData)
-> PIsData PHotCommitteeCredential
forall (s :: S).
Term s (PAsData PHotCommitteeCredential)
-> Term s PHotCommitteeCredential
forall (s :: S). Term s PHotCommitteeCredential -> Term s PData
forall (a :: S -> Type).
(forall (s :: S). Term s (PAsData a) -> Term s a)
-> (forall (s :: S). Term s a -> Term s PData) -> PIsData a
$cpfromDataImpl :: forall (s :: S).
Term s (PAsData PHotCommitteeCredential)
-> Term s PHotCommitteeCredential
pfromDataImpl :: forall (s :: S).
Term s (PAsData PHotCommitteeCredential)
-> Term s PHotCommitteeCredential
$cpdataImpl :: forall (s :: S). Term s PHotCommitteeCredential -> Term s PData
pdataImpl :: forall (s :: S). Term s PHotCommitteeCredential -> Term s PData
PIsData
,
(forall (s :: S).
Term s PHotCommitteeCredential
-> Term s PHotCommitteeCredential -> Term s PBool)
-> PEq PHotCommitteeCredential
forall (s :: S).
Term s PHotCommitteeCredential
-> Term s PHotCommitteeCredential -> Term s PBool
forall (t :: S -> Type).
(forall (s :: S). Term s t -> Term s t -> Term s PBool) -> PEq t
$c#== :: forall (s :: S).
Term s PHotCommitteeCredential
-> Term s PHotCommitteeCredential -> Term s PBool
#== :: forall (s :: S).
Term s PHotCommitteeCredential
-> Term s PHotCommitteeCredential -> Term s PBool
PEq
,
(forall (s :: S).
Bool -> Term s PHotCommitteeCredential -> Term s PString)
-> PShow PHotCommitteeCredential
forall (s :: S).
Bool -> Term s PHotCommitteeCredential -> Term s PString
forall (t :: S -> Type).
(forall (s :: S). Bool -> Term s t -> Term s PString) -> PShow t
$cpshow' :: forall (s :: S).
Bool -> Term s PHotCommitteeCredential -> Term s PString
pshow' :: forall (s :: S).
Bool -> Term s PHotCommitteeCredential -> Term s PString
PShow
)
deriving
(
(forall (s :: S).
PHotCommitteeCredential s
-> Term s (PInner PHotCommitteeCredential))
-> (forall (s :: S) (b :: S -> Type).
Term s (PInner PHotCommitteeCredential)
-> (PHotCommitteeCredential s -> Term s b) -> Term s b)
-> PlutusType PHotCommitteeCredential
forall (s :: S).
PHotCommitteeCredential s
-> Term s (PInner PHotCommitteeCredential)
forall (s :: S) (b :: S -> Type).
Term s (PInner PHotCommitteeCredential)
-> (PHotCommitteeCredential s -> Term s b) -> Term s b
forall (a :: S -> Type).
(forall (s :: S). a s -> Term s (PInner a))
-> (forall (s :: S) (b :: S -> Type).
Term s (PInner a) -> (a s -> Term s b) -> Term s b)
-> PlutusType a
$cpcon' :: forall (s :: S).
PHotCommitteeCredential s
-> Term s (PInner PHotCommitteeCredential)
pcon' :: forall (s :: S).
PHotCommitteeCredential s
-> Term s (PInner PHotCommitteeCredential)
$cpmatch' :: forall (s :: S) (b :: S -> Type).
Term s (PInner PHotCommitteeCredential)
-> (PHotCommitteeCredential s -> Term s b) -> Term s b
pmatch' :: forall (s :: S) (b :: S -> Type).
Term s (PInner PHotCommitteeCredential)
-> (PHotCommitteeCredential s -> Term s b) -> Term s b
PlutusType
)
via (DeriveNewtypePlutusType PHotCommitteeCredential)
deriving via
DeriveDataPLiftable PHotCommitteeCredential Plutus.HotCommitteeCredential
instance
PLiftable PHotCommitteeCredential
newtype PDRepCredential (s :: S) = PDRepCredential (Term s PCredential)
deriving stock
(
(forall x. PDRepCredential s -> Rep (PDRepCredential s) x)
-> (forall x. Rep (PDRepCredential s) x -> PDRepCredential s)
-> Generic (PDRepCredential s)
forall x. Rep (PDRepCredential s) x -> PDRepCredential s
forall x. PDRepCredential s -> Rep (PDRepCredential s) x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
forall (s :: S) x. Rep (PDRepCredential s) x -> PDRepCredential s
forall (s :: S) x. PDRepCredential s -> Rep (PDRepCredential s) x
$cfrom :: forall (s :: S) x. PDRepCredential s -> Rep (PDRepCredential s) x
from :: forall x. PDRepCredential s -> Rep (PDRepCredential s) x
$cto :: forall (s :: S) x. Rep (PDRepCredential s) x -> PDRepCredential s
to :: forall x. Rep (PDRepCredential s) x -> PDRepCredential s
Generic
)
deriving anyclass
(
All SListI (Code (PDRepCredential s))
All SListI (Code (PDRepCredential s)) =>
(PDRepCredential s -> Rep (PDRepCredential s))
-> (Rep (PDRepCredential s) -> PDRepCredential s)
-> Generic (PDRepCredential s)
Rep (PDRepCredential s) -> PDRepCredential s
PDRepCredential s -> Rep (PDRepCredential s)
forall a.
All SListI (Code a) =>
(a -> Rep a) -> (Rep a -> a) -> Generic a
forall (s :: S). All SListI (Code (PDRepCredential s))
forall (s :: S). Rep (PDRepCredential s) -> PDRepCredential s
forall (s :: S). PDRepCredential s -> Rep (PDRepCredential s)
$cfrom :: forall (s :: S). PDRepCredential s -> Rep (PDRepCredential s)
from :: PDRepCredential s -> Rep (PDRepCredential s)
$cto :: forall (s :: S). Rep (PDRepCredential s) -> PDRepCredential s
to :: Rep (PDRepCredential s) -> PDRepCredential s
SOP.Generic
,
(forall (s :: S).
Term s (PAsData PDRepCredential) -> Term s PDRepCredential)
-> (forall (s :: S). Term s PDRepCredential -> Term s PData)
-> PIsData PDRepCredential
forall (s :: S).
Term s (PAsData PDRepCredential) -> Term s PDRepCredential
forall (s :: S). Term s PDRepCredential -> Term s PData
forall (a :: S -> Type).
(forall (s :: S). Term s (PAsData a) -> Term s a)
-> (forall (s :: S). Term s a -> Term s PData) -> PIsData a
$cpfromDataImpl :: forall (s :: S).
Term s (PAsData PDRepCredential) -> Term s PDRepCredential
pfromDataImpl :: forall (s :: S).
Term s (PAsData PDRepCredential) -> Term s PDRepCredential
$cpdataImpl :: forall (s :: S). Term s PDRepCredential -> Term s PData
pdataImpl :: forall (s :: S). Term s PDRepCredential -> Term s PData
PIsData
,
(forall (s :: S).
Term s PDRepCredential -> Term s PDRepCredential -> Term s PBool)
-> PEq PDRepCredential
forall (s :: S).
Term s PDRepCredential -> Term s PDRepCredential -> Term s PBool
forall (t :: S -> Type).
(forall (s :: S). Term s t -> Term s t -> Term s PBool) -> PEq t
$c#== :: forall (s :: S).
Term s PDRepCredential -> Term s PDRepCredential -> Term s PBool
#== :: forall (s :: S).
Term s PDRepCredential -> Term s PDRepCredential -> Term s PBool
PEq
,
(forall (s :: S). Bool -> Term s PDRepCredential -> Term s PString)
-> PShow PDRepCredential
forall (s :: S). Bool -> Term s PDRepCredential -> Term s PString
forall (t :: S -> Type).
(forall (s :: S). Bool -> Term s t -> Term s PString) -> PShow t
$cpshow' :: forall (s :: S). Bool -> Term s PDRepCredential -> Term s PString
pshow' :: forall (s :: S). Bool -> Term s PDRepCredential -> Term s PString
PShow
)
deriving
(
(forall (s :: S).
PDRepCredential s -> Term s (PInner PDRepCredential))
-> (forall (s :: S) (b :: S -> Type).
Term s (PInner PDRepCredential)
-> (PDRepCredential s -> Term s b) -> Term s b)
-> PlutusType PDRepCredential
forall (s :: S).
PDRepCredential s -> Term s (PInner PDRepCredential)
forall (s :: S) (b :: S -> Type).
Term s (PInner PDRepCredential)
-> (PDRepCredential s -> Term s b) -> Term s b
forall (a :: S -> Type).
(forall (s :: S). a s -> Term s (PInner a))
-> (forall (s :: S) (b :: S -> Type).
Term s (PInner a) -> (a s -> Term s b) -> Term s b)
-> PlutusType a
$cpcon' :: forall (s :: S).
PDRepCredential s -> Term s (PInner PDRepCredential)
pcon' :: forall (s :: S).
PDRepCredential s -> Term s (PInner PDRepCredential)
$cpmatch' :: forall (s :: S) (b :: S -> Type).
Term s (PInner PDRepCredential)
-> (PDRepCredential s -> Term s b) -> Term s b
pmatch' :: forall (s :: S) (b :: S -> Type).
Term s (PInner PDRepCredential)
-> (PDRepCredential s -> Term s b) -> Term s b
PlutusType
)
via (DeriveNewtypePlutusType PDRepCredential)
deriving via
DeriveDataPLiftable PDRepCredential Plutus.DRepCredential
instance
PLiftable PDRepCredential
data PDRep (s :: S)
= PDRep (Term s (PAsData PDRepCredential))
| PDRepAlwaysAbstain
| PDRepAlwaysNoConfidence
deriving stock
(
(forall x. PDRep s -> Rep (PDRep s) x)
-> (forall x. Rep (PDRep s) x -> PDRep s) -> Generic (PDRep s)
forall x. Rep (PDRep s) x -> PDRep s
forall x. PDRep s -> Rep (PDRep s) x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
forall (s :: S) x. Rep (PDRep s) x -> PDRep s
forall (s :: S) x. PDRep s -> Rep (PDRep s) x
$cfrom :: forall (s :: S) x. PDRep s -> Rep (PDRep s) x
from :: forall x. PDRep s -> Rep (PDRep s) x
$cto :: forall (s :: S) x. Rep (PDRep s) x -> PDRep s
to :: forall x. Rep (PDRep s) x -> PDRep s
Generic
)
deriving anyclass
(
All SListI (Code (PDRep s))
All SListI (Code (PDRep s)) =>
(PDRep s -> Rep (PDRep s))
-> (Rep (PDRep s) -> PDRep s) -> Generic (PDRep s)
Rep (PDRep s) -> PDRep s
PDRep s -> Rep (PDRep s)
forall a.
All SListI (Code a) =>
(a -> Rep a) -> (Rep a -> a) -> Generic a
forall (s :: S). All SListI (Code (PDRep s))
forall (s :: S). Rep (PDRep s) -> PDRep s
forall (s :: S). PDRep s -> Rep (PDRep s)
$cfrom :: forall (s :: S). PDRep s -> Rep (PDRep s)
from :: PDRep s -> Rep (PDRep s)
$cto :: forall (s :: S). Rep (PDRep s) -> PDRep s
to :: Rep (PDRep s) -> PDRep s
SOP.Generic
,
(forall (s :: S). Term s (PAsData PDRep) -> Term s PDRep)
-> (forall (s :: S). Term s PDRep -> Term s PData) -> PIsData PDRep
forall (s :: S). Term s (PAsData PDRep) -> Term s PDRep
forall (s :: S). Term s PDRep -> Term s PData
forall (a :: S -> Type).
(forall (s :: S). Term s (PAsData a) -> Term s a)
-> (forall (s :: S). Term s a -> Term s PData) -> PIsData a
$cpfromDataImpl :: forall (s :: S). Term s (PAsData PDRep) -> Term s PDRep
pfromDataImpl :: forall (s :: S). Term s (PAsData PDRep) -> Term s PDRep
$cpdataImpl :: forall (s :: S). Term s PDRep -> Term s PData
pdataImpl :: forall (s :: S). Term s PDRep -> Term s PData
PIsData
,
(forall (s :: S). Term s PDRep -> Term s PDRep -> Term s PBool)
-> PEq PDRep
forall (s :: S). Term s PDRep -> Term s PDRep -> Term s PBool
forall (t :: S -> Type).
(forall (s :: S). Term s t -> Term s t -> Term s PBool) -> PEq t
$c#== :: forall (s :: S). Term s PDRep -> Term s PDRep -> Term s PBool
#== :: forall (s :: S). Term s PDRep -> Term s PDRep -> Term s PBool
PEq
,
(forall (s :: S). Bool -> Term s PDRep -> Term s PString)
-> PShow PDRep
forall (s :: S). Bool -> Term s PDRep -> Term s PString
forall (t :: S -> Type).
(forall (s :: S). Bool -> Term s t -> Term s PString) -> PShow t
$cpshow' :: forall (s :: S). Bool -> Term s PDRep -> Term s PString
pshow' :: forall (s :: S). Bool -> Term s PDRep -> Term s PString
PShow
)
deriving
(
(forall (s :: S). PDRep s -> Term s (PInner PDRep))
-> (forall (s :: S) (b :: S -> Type).
Term s (PInner PDRep) -> (PDRep s -> Term s b) -> Term s b)
-> PlutusType PDRep
forall (s :: S). PDRep s -> Term s (PInner PDRep)
forall (s :: S) (b :: S -> Type).
Term s (PInner PDRep) -> (PDRep s -> Term s b) -> Term s b
forall (a :: S -> Type).
(forall (s :: S). a s -> Term s (PInner a))
-> (forall (s :: S) (b :: S -> Type).
Term s (PInner a) -> (a s -> Term s b) -> Term s b)
-> PlutusType a
$cpcon' :: forall (s :: S). PDRep s -> Term s (PInner PDRep)
pcon' :: forall (s :: S). PDRep s -> Term s (PInner PDRep)
$cpmatch' :: forall (s :: S) (b :: S -> Type).
Term s (PInner PDRep) -> (PDRep s -> Term s b) -> Term s b
pmatch' :: forall (s :: S) (b :: S -> Type).
Term s (PInner PDRep) -> (PDRep s -> Term s b) -> Term s b
PlutusType
)
via (DeriveAsDataStruct PDRep)
deriving via
DeriveDataPLiftable PDRep Plutus.DRep
instance
PLiftable PDRep
data PDelegatee (s :: S)
= PDelegStake (Term s (PAsData PPubKeyHash))
| PDelegVote (Term s PDRep)
| PDelegStakeVote (Term s (PAsData PPubKeyHash)) (Term s PDRep)
deriving stock
(
(forall x. PDelegatee s -> Rep (PDelegatee s) x)
-> (forall x. Rep (PDelegatee s) x -> PDelegatee s)
-> Generic (PDelegatee s)
forall x. Rep (PDelegatee s) x -> PDelegatee s
forall x. PDelegatee s -> Rep (PDelegatee s) x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
forall (s :: S) x. Rep (PDelegatee s) x -> PDelegatee s
forall (s :: S) x. PDelegatee s -> Rep (PDelegatee s) x
$cfrom :: forall (s :: S) x. PDelegatee s -> Rep (PDelegatee s) x
from :: forall x. PDelegatee s -> Rep (PDelegatee s) x
$cto :: forall (s :: S) x. Rep (PDelegatee s) x -> PDelegatee s
to :: forall x. Rep (PDelegatee s) x -> PDelegatee s
Generic
)
deriving anyclass
(
All SListI (Code (PDelegatee s))
All SListI (Code (PDelegatee s)) =>
(PDelegatee s -> Rep (PDelegatee s))
-> (Rep (PDelegatee s) -> PDelegatee s) -> Generic (PDelegatee s)
Rep (PDelegatee s) -> PDelegatee s
PDelegatee s -> Rep (PDelegatee s)
forall a.
All SListI (Code a) =>
(a -> Rep a) -> (Rep a -> a) -> Generic a
forall (s :: S). All SListI (Code (PDelegatee s))
forall (s :: S). Rep (PDelegatee s) -> PDelegatee s
forall (s :: S). PDelegatee s -> Rep (PDelegatee s)
$cfrom :: forall (s :: S). PDelegatee s -> Rep (PDelegatee s)
from :: PDelegatee s -> Rep (PDelegatee s)
$cto :: forall (s :: S). Rep (PDelegatee s) -> PDelegatee s
to :: Rep (PDelegatee s) -> PDelegatee s
SOP.Generic
,
(forall (s :: S). Term s (PAsData PDelegatee) -> Term s PDelegatee)
-> (forall (s :: S). Term s PDelegatee -> Term s PData)
-> PIsData PDelegatee
forall (s :: S). Term s (PAsData PDelegatee) -> Term s PDelegatee
forall (s :: S). Term s PDelegatee -> Term s PData
forall (a :: S -> Type).
(forall (s :: S). Term s (PAsData a) -> Term s a)
-> (forall (s :: S). Term s a -> Term s PData) -> PIsData a
$cpfromDataImpl :: forall (s :: S). Term s (PAsData PDelegatee) -> Term s PDelegatee
pfromDataImpl :: forall (s :: S). Term s (PAsData PDelegatee) -> Term s PDelegatee
$cpdataImpl :: forall (s :: S). Term s PDelegatee -> Term s PData
pdataImpl :: forall (s :: S). Term s PDelegatee -> Term s PData
PIsData
,
(forall (s :: S).
Term s PDelegatee -> Term s PDelegatee -> Term s PBool)
-> PEq PDelegatee
forall (s :: S).
Term s PDelegatee -> Term s PDelegatee -> Term s PBool
forall (t :: S -> Type).
(forall (s :: S). Term s t -> Term s t -> Term s PBool) -> PEq t
$c#== :: forall (s :: S).
Term s PDelegatee -> Term s PDelegatee -> Term s PBool
#== :: forall (s :: S).
Term s PDelegatee -> Term s PDelegatee -> Term s PBool
PEq
,
(forall (s :: S). Bool -> Term s PDelegatee -> Term s PString)
-> PShow PDelegatee
forall (s :: S). Bool -> Term s PDelegatee -> Term s PString
forall (t :: S -> Type).
(forall (s :: S). Bool -> Term s t -> Term s PString) -> PShow t
$cpshow' :: forall (s :: S). Bool -> Term s PDelegatee -> Term s PString
pshow' :: forall (s :: S). Bool -> Term s PDelegatee -> Term s PString
PShow
)
deriving
(
(forall (s :: S). PDelegatee s -> Term s (PInner PDelegatee))
-> (forall (s :: S) (b :: S -> Type).
Term s (PInner PDelegatee)
-> (PDelegatee s -> Term s b) -> Term s b)
-> PlutusType PDelegatee
forall (s :: S). PDelegatee s -> Term s (PInner PDelegatee)
forall (s :: S) (b :: S -> Type).
Term s (PInner PDelegatee)
-> (PDelegatee s -> Term s b) -> Term s b
forall (a :: S -> Type).
(forall (s :: S). a s -> Term s (PInner a))
-> (forall (s :: S) (b :: S -> Type).
Term s (PInner a) -> (a s -> Term s b) -> Term s b)
-> PlutusType a
$cpcon' :: forall (s :: S). PDelegatee s -> Term s (PInner PDelegatee)
pcon' :: forall (s :: S). PDelegatee s -> Term s (PInner PDelegatee)
$cpmatch' :: forall (s :: S) (b :: S -> Type).
Term s (PInner PDelegatee)
-> (PDelegatee s -> Term s b) -> Term s b
pmatch' :: forall (s :: S) (b :: S -> Type).
Term s (PInner PDelegatee)
-> (PDelegatee s -> Term s b) -> Term s b
PlutusType
)
via (DeriveAsDataStruct PDelegatee)
deriving via
DeriveDataPLiftable PDelegatee Plutus.Delegatee
instance
PLiftable PDelegatee
data PTxCert (s :: S)
= PTxCertRegStaking (Term s PCredential) (Term s (PMaybeData Value.PLovelace))
| PTxCertUnRegStaking (Term s PCredential) (Term s (PMaybeData Value.PLovelace))
| PTxCertDelegStaking (Term s PCredential) (Term s PDelegatee)
| PTxCertRegDeleg (Term s PCredential) (Term s PDelegatee) (Term s (PAsData Value.PLovelace))
| PTxCertRegDRep (Term s PDRepCredential) (Term s (PAsData Value.PLovelace))
| PTxCertUpdateDRep (Term s PDRepCredential)
| PTxCertUnRegDRep (Term s PDRepCredential) (Term s (PAsData Value.PLovelace))
| PTxCertPoolRegister (Term s (PAsData PPubKeyHash)) (Term s (PAsData PPubKeyHash))
| PTxCertPoolRetire (Term s (PAsData PPubKeyHash)) (Term s (PAsData PInteger))
| PTxCertAuthHotCommittee (Term s PColdCommitteeCredential) (Term s PHotCommitteeCredential)
| PTxCertResignColdCommittee (Term s PColdCommitteeCredential)
deriving stock
(
(forall x. PTxCert s -> Rep (PTxCert s) x)
-> (forall x. Rep (PTxCert s) x -> PTxCert s)
-> Generic (PTxCert s)
forall x. Rep (PTxCert s) x -> PTxCert s
forall x. PTxCert s -> Rep (PTxCert s) x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
forall (s :: S) x. Rep (PTxCert s) x -> PTxCert s
forall (s :: S) x. PTxCert s -> Rep (PTxCert s) x
$cfrom :: forall (s :: S) x. PTxCert s -> Rep (PTxCert s) x
from :: forall x. PTxCert s -> Rep (PTxCert s) x
$cto :: forall (s :: S) x. Rep (PTxCert s) x -> PTxCert s
to :: forall x. Rep (PTxCert s) x -> PTxCert s
Generic
)
deriving anyclass
(
All SListI (Code (PTxCert s))
All SListI (Code (PTxCert s)) =>
(PTxCert s -> Rep (PTxCert s))
-> (Rep (PTxCert s) -> PTxCert s) -> Generic (PTxCert s)
Rep (PTxCert s) -> PTxCert s
PTxCert s -> Rep (PTxCert s)
forall a.
All SListI (Code a) =>
(a -> Rep a) -> (Rep a -> a) -> Generic a
forall (s :: S). All SListI (Code (PTxCert s))
forall (s :: S). Rep (PTxCert s) -> PTxCert s
forall (s :: S). PTxCert s -> Rep (PTxCert s)
$cfrom :: forall (s :: S). PTxCert s -> Rep (PTxCert s)
from :: PTxCert s -> Rep (PTxCert s)
$cto :: forall (s :: S). Rep (PTxCert s) -> PTxCert s
to :: Rep (PTxCert s) -> PTxCert s
SOP.Generic
,
(forall (s :: S). Term s (PAsData PTxCert) -> Term s PTxCert)
-> (forall (s :: S). Term s PTxCert -> Term s PData)
-> PIsData PTxCert
forall (s :: S). Term s (PAsData PTxCert) -> Term s PTxCert
forall (s :: S). Term s PTxCert -> Term s PData
forall (a :: S -> Type).
(forall (s :: S). Term s (PAsData a) -> Term s a)
-> (forall (s :: S). Term s a -> Term s PData) -> PIsData a
$cpfromDataImpl :: forall (s :: S). Term s (PAsData PTxCert) -> Term s PTxCert
pfromDataImpl :: forall (s :: S). Term s (PAsData PTxCert) -> Term s PTxCert
$cpdataImpl :: forall (s :: S). Term s PTxCert -> Term s PData
pdataImpl :: forall (s :: S). Term s PTxCert -> Term s PData
PIsData
,
(forall (s :: S). Term s PTxCert -> Term s PTxCert -> Term s PBool)
-> PEq PTxCert
forall (s :: S). Term s PTxCert -> Term s PTxCert -> Term s PBool
forall (t :: S -> Type).
(forall (s :: S). Term s t -> Term s t -> Term s PBool) -> PEq t
$c#== :: forall (s :: S). Term s PTxCert -> Term s PTxCert -> Term s PBool
#== :: forall (s :: S). Term s PTxCert -> Term s PTxCert -> Term s PBool
PEq
,
(forall (s :: S). Bool -> Term s PTxCert -> Term s PString)
-> PShow PTxCert
forall (s :: S). Bool -> Term s PTxCert -> Term s PString
forall (t :: S -> Type).
(forall (s :: S). Bool -> Term s t -> Term s PString) -> PShow t
$cpshow' :: forall (s :: S). Bool -> Term s PTxCert -> Term s PString
pshow' :: forall (s :: S). Bool -> Term s PTxCert -> Term s PString
PShow
)
deriving
(
(forall (s :: S). PTxCert s -> Term s (PInner PTxCert))
-> (forall (s :: S) (b :: S -> Type).
Term s (PInner PTxCert) -> (PTxCert s -> Term s b) -> Term s b)
-> PlutusType PTxCert
forall (s :: S). PTxCert s -> Term s (PInner PTxCert)
forall (s :: S) (b :: S -> Type).
Term s (PInner PTxCert) -> (PTxCert s -> Term s b) -> Term s b
forall (a :: S -> Type).
(forall (s :: S). a s -> Term s (PInner a))
-> (forall (s :: S) (b :: S -> Type).
Term s (PInner a) -> (a s -> Term s b) -> Term s b)
-> PlutusType a
$cpcon' :: forall (s :: S). PTxCert s -> Term s (PInner PTxCert)
pcon' :: forall (s :: S). PTxCert s -> Term s (PInner PTxCert)
$cpmatch' :: forall (s :: S) (b :: S -> Type).
Term s (PInner PTxCert) -> (PTxCert s -> Term s b) -> Term s b
pmatch' :: forall (s :: S) (b :: S -> Type).
Term s (PInner PTxCert) -> (PTxCert s -> Term s b) -> Term s b
PlutusType
)
via (DeriveAsDataStruct PTxCert)
deriving via
DeriveDataPLiftable PTxCert Plutus.TxCert
instance
PLiftable PTxCert
data PVoter (s :: S)
= PCommitteeVoter (Term s PHotCommitteeCredential)
| PDRepVoter (Term s PDRepCredential)
| PStakePoolVoter (Term s (PAsData PPubKeyHash))
deriving stock
(
(forall x. PVoter s -> Rep (PVoter s) x)
-> (forall x. Rep (PVoter s) x -> PVoter s) -> Generic (PVoter s)
forall x. Rep (PVoter s) x -> PVoter s
forall x. PVoter s -> Rep (PVoter s) x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
forall (s :: S) x. Rep (PVoter s) x -> PVoter s
forall (s :: S) x. PVoter s -> Rep (PVoter s) x
$cfrom :: forall (s :: S) x. PVoter s -> Rep (PVoter s) x
from :: forall x. PVoter s -> Rep (PVoter s) x
$cto :: forall (s :: S) x. Rep (PVoter s) x -> PVoter s
to :: forall x. Rep (PVoter s) x -> PVoter s
Generic
)
deriving anyclass
(
All SListI (Code (PVoter s))
All SListI (Code (PVoter s)) =>
(PVoter s -> Rep (PVoter s))
-> (Rep (PVoter s) -> PVoter s) -> Generic (PVoter s)
Rep (PVoter s) -> PVoter s
PVoter s -> Rep (PVoter s)
forall a.
All SListI (Code a) =>
(a -> Rep a) -> (Rep a -> a) -> Generic a
forall (s :: S). All SListI (Code (PVoter s))
forall (s :: S). Rep (PVoter s) -> PVoter s
forall (s :: S). PVoter s -> Rep (PVoter s)
$cfrom :: forall (s :: S). PVoter s -> Rep (PVoter s)
from :: PVoter s -> Rep (PVoter s)
$cto :: forall (s :: S). Rep (PVoter s) -> PVoter s
to :: Rep (PVoter s) -> PVoter s
SOP.Generic
,
(forall (s :: S). Term s (PAsData PVoter) -> Term s PVoter)
-> (forall (s :: S). Term s PVoter -> Term s PData)
-> PIsData PVoter
forall (s :: S). Term s (PAsData PVoter) -> Term s PVoter
forall (s :: S). Term s PVoter -> Term s PData
forall (a :: S -> Type).
(forall (s :: S). Term s (PAsData a) -> Term s a)
-> (forall (s :: S). Term s a -> Term s PData) -> PIsData a
$cpfromDataImpl :: forall (s :: S). Term s (PAsData PVoter) -> Term s PVoter
pfromDataImpl :: forall (s :: S). Term s (PAsData PVoter) -> Term s PVoter
$cpdataImpl :: forall (s :: S). Term s PVoter -> Term s PData
pdataImpl :: forall (s :: S). Term s PVoter -> Term s PData
PIsData
,
(forall (s :: S). Term s PVoter -> Term s PVoter -> Term s PBool)
-> PEq PVoter
forall (s :: S). Term s PVoter -> Term s PVoter -> Term s PBool
forall (t :: S -> Type).
(forall (s :: S). Term s t -> Term s t -> Term s PBool) -> PEq t
$c#== :: forall (s :: S). Term s PVoter -> Term s PVoter -> Term s PBool
#== :: forall (s :: S). Term s PVoter -> Term s PVoter -> Term s PBool
PEq
,
(forall (s :: S). Bool -> Term s PVoter -> Term s PString)
-> PShow PVoter
forall (s :: S). Bool -> Term s PVoter -> Term s PString
forall (t :: S -> Type).
(forall (s :: S). Bool -> Term s t -> Term s PString) -> PShow t
$cpshow' :: forall (s :: S). Bool -> Term s PVoter -> Term s PString
pshow' :: forall (s :: S). Bool -> Term s PVoter -> Term s PString
PShow
)
deriving
(
(forall (s :: S). PVoter s -> Term s (PInner PVoter))
-> (forall (s :: S) (b :: S -> Type).
Term s (PInner PVoter) -> (PVoter s -> Term s b) -> Term s b)
-> PlutusType PVoter
forall (s :: S). PVoter s -> Term s (PInner PVoter)
forall (s :: S) (b :: S -> Type).
Term s (PInner PVoter) -> (PVoter s -> Term s b) -> Term s b
forall (a :: S -> Type).
(forall (s :: S). a s -> Term s (PInner a))
-> (forall (s :: S) (b :: S -> Type).
Term s (PInner a) -> (a s -> Term s b) -> Term s b)
-> PlutusType a
$cpcon' :: forall (s :: S). PVoter s -> Term s (PInner PVoter)
pcon' :: forall (s :: S). PVoter s -> Term s (PInner PVoter)
$cpmatch' :: forall (s :: S) (b :: S -> Type).
Term s (PInner PVoter) -> (PVoter s -> Term s b) -> Term s b
pmatch' :: forall (s :: S) (b :: S -> Type).
Term s (PInner PVoter) -> (PVoter s -> Term s b) -> Term s b
PlutusType
)
via (DeriveAsDataStruct PVoter)
deriving via
DeriveDataPLiftable PVoter Plutus.Voter
instance
PLiftable PVoter
data PVote (s :: S)
= PVoteYes
| PVoteNo
| PAbstain
deriving stock
(
(forall x. PVote s -> Rep (PVote s) x)
-> (forall x. Rep (PVote s) x -> PVote s) -> Generic (PVote s)
forall x. Rep (PVote s) x -> PVote s
forall x. PVote s -> Rep (PVote s) x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
forall (s :: S) x. Rep (PVote s) x -> PVote s
forall (s :: S) x. PVote s -> Rep (PVote s) x
$cfrom :: forall (s :: S) x. PVote s -> Rep (PVote s) x
from :: forall x. PVote s -> Rep (PVote s) x
$cto :: forall (s :: S) x. Rep (PVote s) x -> PVote s
to :: forall x. Rep (PVote s) x -> PVote s
Generic
)
deriving anyclass
(
All SListI (Code (PVote s))
All SListI (Code (PVote s)) =>
(PVote s -> Rep (PVote s))
-> (Rep (PVote s) -> PVote s) -> Generic (PVote s)
Rep (PVote s) -> PVote s
PVote s -> Rep (PVote s)
forall a.
All SListI (Code a) =>
(a -> Rep a) -> (Rep a -> a) -> Generic a
forall (s :: S). All SListI (Code (PVote s))
forall (s :: S). Rep (PVote s) -> PVote s
forall (s :: S). PVote s -> Rep (PVote s)
$cfrom :: forall (s :: S). PVote s -> Rep (PVote s)
from :: PVote s -> Rep (PVote s)
$cto :: forall (s :: S). Rep (PVote s) -> PVote s
to :: Rep (PVote s) -> PVote s
SOP.Generic
,
(forall (s :: S). Term s (PAsData PVote) -> Term s PVote)
-> (forall (s :: S). Term s PVote -> Term s PData) -> PIsData PVote
forall (s :: S). Term s (PAsData PVote) -> Term s PVote
forall (s :: S). Term s PVote -> Term s PData
forall (a :: S -> Type).
(forall (s :: S). Term s (PAsData a) -> Term s a)
-> (forall (s :: S). Term s a -> Term s PData) -> PIsData a
$cpfromDataImpl :: forall (s :: S). Term s (PAsData PVote) -> Term s PVote
pfromDataImpl :: forall (s :: S). Term s (PAsData PVote) -> Term s PVote
$cpdataImpl :: forall (s :: S). Term s PVote -> Term s PData
pdataImpl :: forall (s :: S). Term s PVote -> Term s PData
PIsData
,
(forall (s :: S). Term s PVote -> Term s PVote -> Term s PBool)
-> PEq PVote
forall (s :: S). Term s PVote -> Term s PVote -> Term s PBool
forall (t :: S -> Type).
(forall (s :: S). Term s t -> Term s t -> Term s PBool) -> PEq t
$c#== :: forall (s :: S). Term s PVote -> Term s PVote -> Term s PBool
#== :: forall (s :: S). Term s PVote -> Term s PVote -> Term s PBool
PEq
,
(forall (s :: S). Bool -> Term s PVote -> Term s PString)
-> PShow PVote
forall (s :: S). Bool -> Term s PVote -> Term s PString
forall (t :: S -> Type).
(forall (s :: S). Bool -> Term s t -> Term s PString) -> PShow t
$cpshow' :: forall (s :: S). Bool -> Term s PVote -> Term s PString
pshow' :: forall (s :: S). Bool -> Term s PVote -> Term s PString
PShow
)
deriving
(
(forall (s :: S). PVote s -> Term s (PInner PVote))
-> (forall (s :: S) (b :: S -> Type).
Term s (PInner PVote) -> (PVote s -> Term s b) -> Term s b)
-> PlutusType PVote
forall (s :: S). PVote s -> Term s (PInner PVote)
forall (s :: S) (b :: S -> Type).
Term s (PInner PVote) -> (PVote s -> Term s b) -> Term s b
forall (a :: S -> Type).
(forall (s :: S). a s -> Term s (PInner a))
-> (forall (s :: S) (b :: S -> Type).
Term s (PInner a) -> (a s -> Term s b) -> Term s b)
-> PlutusType a
$cpcon' :: forall (s :: S). PVote s -> Term s (PInner PVote)
pcon' :: forall (s :: S). PVote s -> Term s (PInner PVote)
$cpmatch' :: forall (s :: S) (b :: S -> Type).
Term s (PInner PVote) -> (PVote s -> Term s b) -> Term s b
pmatch' :: forall (s :: S) (b :: S -> Type).
Term s (PInner PVote) -> (PVote s -> Term s b) -> Term s b
PlutusType
)
via (DeriveAsDataStruct PVote)
deriving via
DeriveDataPLiftable PVote Plutus.Vote
instance
PLiftable PVote
data PGovernanceActionId (s :: S)
= PGovernanceActionId (Term s (PAsData PTxId)) (Term s (PAsData PInteger))
deriving stock
(
(forall x. PGovernanceActionId s -> Rep (PGovernanceActionId s) x)
-> (forall x.
Rep (PGovernanceActionId s) x -> PGovernanceActionId s)
-> Generic (PGovernanceActionId s)
forall x. Rep (PGovernanceActionId s) x -> PGovernanceActionId s
forall x. PGovernanceActionId s -> Rep (PGovernanceActionId s) x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
forall (s :: S) x.
Rep (PGovernanceActionId s) x -> PGovernanceActionId s
forall (s :: S) x.
PGovernanceActionId s -> Rep (PGovernanceActionId s) x
$cfrom :: forall (s :: S) x.
PGovernanceActionId s -> Rep (PGovernanceActionId s) x
from :: forall x. PGovernanceActionId s -> Rep (PGovernanceActionId s) x
$cto :: forall (s :: S) x.
Rep (PGovernanceActionId s) x -> PGovernanceActionId s
to :: forall x. Rep (PGovernanceActionId s) x -> PGovernanceActionId s
Generic
)
deriving anyclass
(
All SListI (Code (PGovernanceActionId s))
All SListI (Code (PGovernanceActionId s)) =>
(PGovernanceActionId s -> Rep (PGovernanceActionId s))
-> (Rep (PGovernanceActionId s) -> PGovernanceActionId s)
-> Generic (PGovernanceActionId s)
Rep (PGovernanceActionId s) -> PGovernanceActionId s
PGovernanceActionId s -> Rep (PGovernanceActionId s)
forall a.
All SListI (Code a) =>
(a -> Rep a) -> (Rep a -> a) -> Generic a
forall (s :: S). All SListI (Code (PGovernanceActionId s))
forall (s :: S).
Rep (PGovernanceActionId s) -> PGovernanceActionId s
forall (s :: S).
PGovernanceActionId s -> Rep (PGovernanceActionId s)
$cfrom :: forall (s :: S).
PGovernanceActionId s -> Rep (PGovernanceActionId s)
from :: PGovernanceActionId s -> Rep (PGovernanceActionId s)
$cto :: forall (s :: S).
Rep (PGovernanceActionId s) -> PGovernanceActionId s
to :: Rep (PGovernanceActionId s) -> PGovernanceActionId s
SOP.Generic
,
(forall (s :: S).
Term s (PAsData PGovernanceActionId) -> Term s PGovernanceActionId)
-> (forall (s :: S). Term s PGovernanceActionId -> Term s PData)
-> PIsData PGovernanceActionId
forall (s :: S).
Term s (PAsData PGovernanceActionId) -> Term s PGovernanceActionId
forall (s :: S). Term s PGovernanceActionId -> Term s PData
forall (a :: S -> Type).
(forall (s :: S). Term s (PAsData a) -> Term s a)
-> (forall (s :: S). Term s a -> Term s PData) -> PIsData a
$cpfromDataImpl :: forall (s :: S).
Term s (PAsData PGovernanceActionId) -> Term s PGovernanceActionId
pfromDataImpl :: forall (s :: S).
Term s (PAsData PGovernanceActionId) -> Term s PGovernanceActionId
$cpdataImpl :: forall (s :: S). Term s PGovernanceActionId -> Term s PData
pdataImpl :: forall (s :: S). Term s PGovernanceActionId -> Term s PData
PIsData
,
(forall (s :: S).
Term s PGovernanceActionId
-> Term s PGovernanceActionId -> Term s PBool)
-> PEq PGovernanceActionId
forall (s :: S).
Term s PGovernanceActionId
-> Term s PGovernanceActionId -> Term s PBool
forall (t :: S -> Type).
(forall (s :: S). Term s t -> Term s t -> Term s PBool) -> PEq t
$c#== :: forall (s :: S).
Term s PGovernanceActionId
-> Term s PGovernanceActionId -> Term s PBool
#== :: forall (s :: S).
Term s PGovernanceActionId
-> Term s PGovernanceActionId -> Term s PBool
PEq
,
(forall (s :: S).
Bool -> Term s PGovernanceActionId -> Term s PString)
-> PShow PGovernanceActionId
forall (s :: S).
Bool -> Term s PGovernanceActionId -> Term s PString
forall (t :: S -> Type).
(forall (s :: S). Bool -> Term s t -> Term s PString) -> PShow t
$cpshow' :: forall (s :: S).
Bool -> Term s PGovernanceActionId -> Term s PString
pshow' :: forall (s :: S).
Bool -> Term s PGovernanceActionId -> Term s PString
PShow
)
deriving
(
(forall (s :: S).
PGovernanceActionId s -> Term s (PInner PGovernanceActionId))
-> (forall (s :: S) (b :: S -> Type).
Term s (PInner PGovernanceActionId)
-> (PGovernanceActionId s -> Term s b) -> Term s b)
-> PlutusType PGovernanceActionId
forall (s :: S).
PGovernanceActionId s -> Term s (PInner PGovernanceActionId)
forall (s :: S) (b :: S -> Type).
Term s (PInner PGovernanceActionId)
-> (PGovernanceActionId s -> Term s b) -> Term s b
forall (a :: S -> Type).
(forall (s :: S). a s -> Term s (PInner a))
-> (forall (s :: S) (b :: S -> Type).
Term s (PInner a) -> (a s -> Term s b) -> Term s b)
-> PlutusType a
$cpcon' :: forall (s :: S).
PGovernanceActionId s -> Term s (PInner PGovernanceActionId)
pcon' :: forall (s :: S).
PGovernanceActionId s -> Term s (PInner PGovernanceActionId)
$cpmatch' :: forall (s :: S) (b :: S -> Type).
Term s (PInner PGovernanceActionId)
-> (PGovernanceActionId s -> Term s b) -> Term s b
pmatch' :: forall (s :: S) (b :: S -> Type).
Term s (PInner PGovernanceActionId)
-> (PGovernanceActionId s -> Term s b) -> Term s b
PlutusType
)
via (DeriveAsDataStruct PGovernanceActionId)
deriving via
DeriveDataPLiftable PGovernanceActionId Plutus.GovernanceActionId
instance
PLiftable PGovernanceActionId
data PCommittee (s :: S) = PCommittee
{ forall (s :: S).
PCommittee s
-> Term
s (PAsData (PMap 'Unsorted PColdCommitteeCredential PInteger))
pcommittee'members :: Term s (PAsData (AssocMap.PMap 'AssocMap.Unsorted PColdCommitteeCredential PInteger))
, forall (s :: S). PCommittee s -> Term s PRationalData
pcommittee'quorum :: Term s PRationalData
}
deriving stock
(
(forall x. PCommittee s -> Rep (PCommittee s) x)
-> (forall x. Rep (PCommittee s) x -> PCommittee s)
-> Generic (PCommittee s)
forall x. Rep (PCommittee s) x -> PCommittee s
forall x. PCommittee s -> Rep (PCommittee s) x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
forall (s :: S) x. Rep (PCommittee s) x -> PCommittee s
forall (s :: S) x. PCommittee s -> Rep (PCommittee s) x
$cfrom :: forall (s :: S) x. PCommittee s -> Rep (PCommittee s) x
from :: forall x. PCommittee s -> Rep (PCommittee s) x
$cto :: forall (s :: S) x. Rep (PCommittee s) x -> PCommittee s
to :: forall x. Rep (PCommittee s) x -> PCommittee s
Generic
)
deriving anyclass
(
All SListI (Code (PCommittee s))
All SListI (Code (PCommittee s)) =>
(PCommittee s -> Rep (PCommittee s))
-> (Rep (PCommittee s) -> PCommittee s) -> Generic (PCommittee s)
Rep (PCommittee s) -> PCommittee s
PCommittee s -> Rep (PCommittee s)
forall a.
All SListI (Code a) =>
(a -> Rep a) -> (Rep a -> a) -> Generic a
forall (s :: S). All SListI (Code (PCommittee s))
forall (s :: S). Rep (PCommittee s) -> PCommittee s
forall (s :: S). PCommittee s -> Rep (PCommittee s)
$cfrom :: forall (s :: S). PCommittee s -> Rep (PCommittee s)
from :: PCommittee s -> Rep (PCommittee s)
$cto :: forall (s :: S). Rep (PCommittee s) -> PCommittee s
to :: Rep (PCommittee s) -> PCommittee s
SOP.Generic
,
(forall (s :: S). Term s (PAsData PCommittee) -> Term s PCommittee)
-> (forall (s :: S). Term s PCommittee -> Term s PData)
-> PIsData PCommittee
forall (s :: S). Term s (PAsData PCommittee) -> Term s PCommittee
forall (s :: S). Term s PCommittee -> Term s PData
forall (a :: S -> Type).
(forall (s :: S). Term s (PAsData a) -> Term s a)
-> (forall (s :: S). Term s a -> Term s PData) -> PIsData a
$cpfromDataImpl :: forall (s :: S). Term s (PAsData PCommittee) -> Term s PCommittee
pfromDataImpl :: forall (s :: S). Term s (PAsData PCommittee) -> Term s PCommittee
$cpdataImpl :: forall (s :: S). Term s PCommittee -> Term s PData
pdataImpl :: forall (s :: S). Term s PCommittee -> Term s PData
PIsData
,
(forall (s :: S).
Term s PCommittee -> Term s PCommittee -> Term s PBool)
-> PEq PCommittee
forall (s :: S).
Term s PCommittee -> Term s PCommittee -> Term s PBool
forall (t :: S -> Type).
(forall (s :: S). Term s t -> Term s t -> Term s PBool) -> PEq t
$c#== :: forall (s :: S).
Term s PCommittee -> Term s PCommittee -> Term s PBool
#== :: forall (s :: S).
Term s PCommittee -> Term s PCommittee -> Term s PBool
PEq
,
(forall (s :: S). Bool -> Term s PCommittee -> Term s PString)
-> PShow PCommittee
forall (s :: S). Bool -> Term s PCommittee -> Term s PString
forall (t :: S -> Type).
(forall (s :: S). Bool -> Term s t -> Term s PString) -> PShow t
$cpshow' :: forall (s :: S). Bool -> Term s PCommittee -> Term s PString
pshow' :: forall (s :: S). Bool -> Term s PCommittee -> Term s PString
PShow
)
deriving
(
(forall (s :: S). PCommittee s -> Term s (PInner PCommittee))
-> (forall (s :: S) (b :: S -> Type).
Term s (PInner PCommittee)
-> (PCommittee s -> Term s b) -> Term s b)
-> PlutusType PCommittee
forall (s :: S). PCommittee s -> Term s (PInner PCommittee)
forall (s :: S) (b :: S -> Type).
Term s (PInner PCommittee)
-> (PCommittee s -> Term s b) -> Term s b
forall (a :: S -> Type).
(forall (s :: S). a s -> Term s (PInner a))
-> (forall (s :: S) (b :: S -> Type).
Term s (PInner a) -> (a s -> Term s b) -> Term s b)
-> PlutusType a
$cpcon' :: forall (s :: S). PCommittee s -> Term s (PInner PCommittee)
pcon' :: forall (s :: S). PCommittee s -> Term s (PInner PCommittee)
$cpmatch' :: forall (s :: S) (b :: S -> Type).
Term s (PInner PCommittee)
-> (PCommittee s -> Term s b) -> Term s b
pmatch' :: forall (s :: S) (b :: S -> Type).
Term s (PInner PCommittee)
-> (PCommittee s -> Term s b) -> Term s b
PlutusType
)
via (DeriveAsDataStruct PCommittee)
deriving via
DeriveDataPLiftable PCommittee Plutus.Committee
instance
PLiftable PCommittee
newtype PConstitution (s :: S) = PConstitution (Term s (PMaybeData PScriptHash))
deriving stock
(
(forall x. PConstitution s -> Rep (PConstitution s) x)
-> (forall x. Rep (PConstitution s) x -> PConstitution s)
-> Generic (PConstitution s)
forall x. Rep (PConstitution s) x -> PConstitution s
forall x. PConstitution s -> Rep (PConstitution s) x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
forall (s :: S) x. Rep (PConstitution s) x -> PConstitution s
forall (s :: S) x. PConstitution s -> Rep (PConstitution s) x
$cfrom :: forall (s :: S) x. PConstitution s -> Rep (PConstitution s) x
from :: forall x. PConstitution s -> Rep (PConstitution s) x
$cto :: forall (s :: S) x. Rep (PConstitution s) x -> PConstitution s
to :: forall x. Rep (PConstitution s) x -> PConstitution s
Generic
)
deriving anyclass
(
All SListI (Code (PConstitution s))
All SListI (Code (PConstitution s)) =>
(PConstitution s -> Rep (PConstitution s))
-> (Rep (PConstitution s) -> PConstitution s)
-> Generic (PConstitution s)
Rep (PConstitution s) -> PConstitution s
PConstitution s -> Rep (PConstitution s)
forall a.
All SListI (Code a) =>
(a -> Rep a) -> (Rep a -> a) -> Generic a
forall (s :: S). All SListI (Code (PConstitution s))
forall (s :: S). Rep (PConstitution s) -> PConstitution s
forall (s :: S). PConstitution s -> Rep (PConstitution s)
$cfrom :: forall (s :: S). PConstitution s -> Rep (PConstitution s)
from :: PConstitution s -> Rep (PConstitution s)
$cto :: forall (s :: S). Rep (PConstitution s) -> PConstitution s
to :: Rep (PConstitution s) -> PConstitution s
SOP.Generic
,
(forall (s :: S).
Term s (PAsData PConstitution) -> Term s PConstitution)
-> (forall (s :: S). Term s PConstitution -> Term s PData)
-> PIsData PConstitution
forall (s :: S).
Term s (PAsData PConstitution) -> Term s PConstitution
forall (s :: S). Term s PConstitution -> Term s PData
forall (a :: S -> Type).
(forall (s :: S). Term s (PAsData a) -> Term s a)
-> (forall (s :: S). Term s a -> Term s PData) -> PIsData a
$cpfromDataImpl :: forall (s :: S).
Term s (PAsData PConstitution) -> Term s PConstitution
pfromDataImpl :: forall (s :: S).
Term s (PAsData PConstitution) -> Term s PConstitution
$cpdataImpl :: forall (s :: S). Term s PConstitution -> Term s PData
pdataImpl :: forall (s :: S). Term s PConstitution -> Term s PData
PIsData
,
(forall (s :: S).
Term s PConstitution -> Term s PConstitution -> Term s PBool)
-> PEq PConstitution
forall (s :: S).
Term s PConstitution -> Term s PConstitution -> Term s PBool
forall (t :: S -> Type).
(forall (s :: S). Term s t -> Term s t -> Term s PBool) -> PEq t
$c#== :: forall (s :: S).
Term s PConstitution -> Term s PConstitution -> Term s PBool
#== :: forall (s :: S).
Term s PConstitution -> Term s PConstitution -> Term s PBool
PEq
,
(forall (s :: S). Bool -> Term s PConstitution -> Term s PString)
-> PShow PConstitution
forall (s :: S). Bool -> Term s PConstitution -> Term s PString
forall (t :: S -> Type).
(forall (s :: S). Bool -> Term s t -> Term s PString) -> PShow t
$cpshow' :: forall (s :: S). Bool -> Term s PConstitution -> Term s PString
pshow' :: forall (s :: S). Bool -> Term s PConstitution -> Term s PString
PShow
)
deriving
(
(forall (s :: S). PConstitution s -> Term s (PInner PConstitution))
-> (forall (s :: S) (b :: S -> Type).
Term s (PInner PConstitution)
-> (PConstitution s -> Term s b) -> Term s b)
-> PlutusType PConstitution
forall (s :: S). PConstitution s -> Term s (PInner PConstitution)
forall (s :: S) (b :: S -> Type).
Term s (PInner PConstitution)
-> (PConstitution s -> Term s b) -> Term s b
forall (a :: S -> Type).
(forall (s :: S). a s -> Term s (PInner a))
-> (forall (s :: S) (b :: S -> Type).
Term s (PInner a) -> (a s -> Term s b) -> Term s b)
-> PlutusType a
$cpcon' :: forall (s :: S). PConstitution s -> Term s (PInner PConstitution)
pcon' :: forall (s :: S). PConstitution s -> Term s (PInner PConstitution)
$cpmatch' :: forall (s :: S) (b :: S -> Type).
Term s (PInner PConstitution)
-> (PConstitution s -> Term s b) -> Term s b
pmatch' :: forall (s :: S) (b :: S -> Type).
Term s (PInner PConstitution)
-> (PConstitution s -> Term s b) -> Term s b
PlutusType
)
via (DeriveAsDataStruct PConstitution)
deriving via
DeriveDataPLiftable PConstitution Plutus.Constitution
instance
PLiftable PConstitution
data PProtocolVersion (s :: S) = PProtocolVersion
{ forall (s :: S). PProtocolVersion s -> Term s (PAsData PInteger)
pprotocolVersion'major :: Term s (PAsData PInteger)
, forall (s :: S). PProtocolVersion s -> Term s (PAsData PInteger)
pprotocolVersion'minor :: Term s (PAsData PInteger)
}
deriving stock
(
(forall x. PProtocolVersion s -> Rep (PProtocolVersion s) x)
-> (forall x. Rep (PProtocolVersion s) x -> PProtocolVersion s)
-> Generic (PProtocolVersion s)
forall x. Rep (PProtocolVersion s) x -> PProtocolVersion s
forall x. PProtocolVersion s -> Rep (PProtocolVersion s) x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
forall (s :: S) x. Rep (PProtocolVersion s) x -> PProtocolVersion s
forall (s :: S) x. PProtocolVersion s -> Rep (PProtocolVersion s) x
$cfrom :: forall (s :: S) x. PProtocolVersion s -> Rep (PProtocolVersion s) x
from :: forall x. PProtocolVersion s -> Rep (PProtocolVersion s) x
$cto :: forall (s :: S) x. Rep (PProtocolVersion s) x -> PProtocolVersion s
to :: forall x. Rep (PProtocolVersion s) x -> PProtocolVersion s
Generic
)
deriving anyclass
(
All SListI (Code (PProtocolVersion s))
All SListI (Code (PProtocolVersion s)) =>
(PProtocolVersion s -> Rep (PProtocolVersion s))
-> (Rep (PProtocolVersion s) -> PProtocolVersion s)
-> Generic (PProtocolVersion s)
Rep (PProtocolVersion s) -> PProtocolVersion s
PProtocolVersion s -> Rep (PProtocolVersion s)
forall a.
All SListI (Code a) =>
(a -> Rep a) -> (Rep a -> a) -> Generic a
forall (s :: S). All SListI (Code (PProtocolVersion s))
forall (s :: S). Rep (PProtocolVersion s) -> PProtocolVersion s
forall (s :: S). PProtocolVersion s -> Rep (PProtocolVersion s)
$cfrom :: forall (s :: S). PProtocolVersion s -> Rep (PProtocolVersion s)
from :: PProtocolVersion s -> Rep (PProtocolVersion s)
$cto :: forall (s :: S). Rep (PProtocolVersion s) -> PProtocolVersion s
to :: Rep (PProtocolVersion s) -> PProtocolVersion s
SOP.Generic
,
(forall (s :: S).
Term s (PAsData PProtocolVersion) -> Term s PProtocolVersion)
-> (forall (s :: S). Term s PProtocolVersion -> Term s PData)
-> PIsData PProtocolVersion
forall (s :: S).
Term s (PAsData PProtocolVersion) -> Term s PProtocolVersion
forall (s :: S). Term s PProtocolVersion -> Term s PData
forall (a :: S -> Type).
(forall (s :: S). Term s (PAsData a) -> Term s a)
-> (forall (s :: S). Term s a -> Term s PData) -> PIsData a
$cpfromDataImpl :: forall (s :: S).
Term s (PAsData PProtocolVersion) -> Term s PProtocolVersion
pfromDataImpl :: forall (s :: S).
Term s (PAsData PProtocolVersion) -> Term s PProtocolVersion
$cpdataImpl :: forall (s :: S). Term s PProtocolVersion -> Term s PData
pdataImpl :: forall (s :: S). Term s PProtocolVersion -> Term s PData
PIsData
,
(forall (s :: S).
Term s PProtocolVersion -> Term s PProtocolVersion -> Term s PBool)
-> PEq PProtocolVersion
forall (s :: S).
Term s PProtocolVersion -> Term s PProtocolVersion -> Term s PBool
forall (t :: S -> Type).
(forall (s :: S). Term s t -> Term s t -> Term s PBool) -> PEq t
$c#== :: forall (s :: S).
Term s PProtocolVersion -> Term s PProtocolVersion -> Term s PBool
#== :: forall (s :: S).
Term s PProtocolVersion -> Term s PProtocolVersion -> Term s PBool
PEq
,
(forall (s :: S).
Bool -> Term s PProtocolVersion -> Term s PString)
-> PShow PProtocolVersion
forall (s :: S). Bool -> Term s PProtocolVersion -> Term s PString
forall (t :: S -> Type).
(forall (s :: S). Bool -> Term s t -> Term s PString) -> PShow t
$cpshow' :: forall (s :: S). Bool -> Term s PProtocolVersion -> Term s PString
pshow' :: forall (s :: S). Bool -> Term s PProtocolVersion -> Term s PString
PShow
)
deriving
(
(forall (s :: S).
PProtocolVersion s -> Term s (PInner PProtocolVersion))
-> (forall (s :: S) (b :: S -> Type).
Term s (PInner PProtocolVersion)
-> (PProtocolVersion s -> Term s b) -> Term s b)
-> PlutusType PProtocolVersion
forall (s :: S).
PProtocolVersion s -> Term s (PInner PProtocolVersion)
forall (s :: S) (b :: S -> Type).
Term s (PInner PProtocolVersion)
-> (PProtocolVersion s -> Term s b) -> Term s b
forall (a :: S -> Type).
(forall (s :: S). a s -> Term s (PInner a))
-> (forall (s :: S) (b :: S -> Type).
Term s (PInner a) -> (a s -> Term s b) -> Term s b)
-> PlutusType a
$cpcon' :: forall (s :: S).
PProtocolVersion s -> Term s (PInner PProtocolVersion)
pcon' :: forall (s :: S).
PProtocolVersion s -> Term s (PInner PProtocolVersion)
$cpmatch' :: forall (s :: S) (b :: S -> Type).
Term s (PInner PProtocolVersion)
-> (PProtocolVersion s -> Term s b) -> Term s b
pmatch' :: forall (s :: S) (b :: S -> Type).
Term s (PInner PProtocolVersion)
-> (PProtocolVersion s -> Term s b) -> Term s b
PlutusType
)
via (DeriveAsDataStruct PProtocolVersion)
deriving via
DeriveDataPLiftable PProtocolVersion Plutus.ProtocolVersion
instance
PLiftable PProtocolVersion
newtype PChangedParameters (s :: S)
= PChangedParameters (Term s PData)
deriving stock
(
(forall x. PChangedParameters s -> Rep (PChangedParameters s) x)
-> (forall x. Rep (PChangedParameters s) x -> PChangedParameters s)
-> Generic (PChangedParameters s)
forall x. Rep (PChangedParameters s) x -> PChangedParameters s
forall x. PChangedParameters s -> Rep (PChangedParameters s) x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
forall (s :: S) x.
Rep (PChangedParameters s) x -> PChangedParameters s
forall (s :: S) x.
PChangedParameters s -> Rep (PChangedParameters s) x
$cfrom :: forall (s :: S) x.
PChangedParameters s -> Rep (PChangedParameters s) x
from :: forall x. PChangedParameters s -> Rep (PChangedParameters s) x
$cto :: forall (s :: S) x.
Rep (PChangedParameters s) x -> PChangedParameters s
to :: forall x. Rep (PChangedParameters s) x -> PChangedParameters s
Generic
)
deriving anyclass
(
All SListI (Code (PChangedParameters s))
All SListI (Code (PChangedParameters s)) =>
(PChangedParameters s -> Rep (PChangedParameters s))
-> (Rep (PChangedParameters s) -> PChangedParameters s)
-> Generic (PChangedParameters s)
Rep (PChangedParameters s) -> PChangedParameters s
PChangedParameters s -> Rep (PChangedParameters s)
forall a.
All SListI (Code a) =>
(a -> Rep a) -> (Rep a -> a) -> Generic a
forall (s :: S). All SListI (Code (PChangedParameters s))
forall (s :: S). Rep (PChangedParameters s) -> PChangedParameters s
forall (s :: S). PChangedParameters s -> Rep (PChangedParameters s)
$cfrom :: forall (s :: S). PChangedParameters s -> Rep (PChangedParameters s)
from :: PChangedParameters s -> Rep (PChangedParameters s)
$cto :: forall (s :: S). Rep (PChangedParameters s) -> PChangedParameters s
to :: Rep (PChangedParameters s) -> PChangedParameters s
SOP.Generic
,
(forall (s :: S).
Term s (PAsData PChangedParameters) -> Term s PChangedParameters)
-> (forall (s :: S). Term s PChangedParameters -> Term s PData)
-> PIsData PChangedParameters
forall (s :: S).
Term s (PAsData PChangedParameters) -> Term s PChangedParameters
forall (s :: S). Term s PChangedParameters -> Term s PData
forall (a :: S -> Type).
(forall (s :: S). Term s (PAsData a) -> Term s a)
-> (forall (s :: S). Term s a -> Term s PData) -> PIsData a
$cpfromDataImpl :: forall (s :: S).
Term s (PAsData PChangedParameters) -> Term s PChangedParameters
pfromDataImpl :: forall (s :: S).
Term s (PAsData PChangedParameters) -> Term s PChangedParameters
$cpdataImpl :: forall (s :: S). Term s PChangedParameters -> Term s PData
pdataImpl :: forall (s :: S). Term s PChangedParameters -> Term s PData
PIsData
,
(forall (s :: S).
Term s PChangedParameters
-> Term s PChangedParameters -> Term s PBool)
-> PEq PChangedParameters
forall (s :: S).
Term s PChangedParameters
-> Term s PChangedParameters -> Term s PBool
forall (t :: S -> Type).
(forall (s :: S). Term s t -> Term s t -> Term s PBool) -> PEq t
$c#== :: forall (s :: S).
Term s PChangedParameters
-> Term s PChangedParameters -> Term s PBool
#== :: forall (s :: S).
Term s PChangedParameters
-> Term s PChangedParameters -> Term s PBool
PEq
,
(forall (s :: S).
Bool -> Term s PChangedParameters -> Term s PString)
-> PShow PChangedParameters
forall (s :: S).
Bool -> Term s PChangedParameters -> Term s PString
forall (t :: S -> Type).
(forall (s :: S). Bool -> Term s t -> Term s PString) -> PShow t
$cpshow' :: forall (s :: S).
Bool -> Term s PChangedParameters -> Term s PString
pshow' :: forall (s :: S).
Bool -> Term s PChangedParameters -> Term s PString
PShow
)
deriving
(
(forall (s :: S).
PChangedParameters s -> Term s (PInner PChangedParameters))
-> (forall (s :: S) (b :: S -> Type).
Term s (PInner PChangedParameters)
-> (PChangedParameters s -> Term s b) -> Term s b)
-> PlutusType PChangedParameters
forall (s :: S).
PChangedParameters s -> Term s (PInner PChangedParameters)
forall (s :: S) (b :: S -> Type).
Term s (PInner PChangedParameters)
-> (PChangedParameters s -> Term s b) -> Term s b
forall (a :: S -> Type).
(forall (s :: S). a s -> Term s (PInner a))
-> (forall (s :: S) (b :: S -> Type).
Term s (PInner a) -> (a s -> Term s b) -> Term s b)
-> PlutusType a
$cpcon' :: forall (s :: S).
PChangedParameters s -> Term s (PInner PChangedParameters)
pcon' :: forall (s :: S).
PChangedParameters s -> Term s (PInner PChangedParameters)
$cpmatch' :: forall (s :: S) (b :: S -> Type).
Term s (PInner PChangedParameters)
-> (PChangedParameters s -> Term s b) -> Term s b
pmatch' :: forall (s :: S) (b :: S -> Type).
Term s (PInner PChangedParameters)
-> (PChangedParameters s -> Term s b) -> Term s b
PlutusType
)
via (DeriveNewtypePlutusType PChangedParameters)
deriving via
DeriveDataPLiftable PChangedParameters Plutus.ChangedParameters
instance
PLiftable PChangedParameters
data PGovernanceAction (s :: S)
= PParameterChange (Term s (PMaybeData PGovernanceActionId)) (Term s PChangedParameters) (Term s (PMaybeData PScriptHash))
| PHardForkInitiation (Term s (PMaybeData PGovernanceActionId)) (Term s PProtocolVersion)
| PTreasuryWithdrawals
(Term s (PAsData (AssocMap.PMap 'AssocMap.Unsorted PCredential Value.PLovelace)))
(Term s (PMaybeData PScriptHash))
| PNoConfidence (Term s (PMaybeData PGovernanceActionId))
| PUpdateCommittee
(Term s (PMaybeData PGovernanceActionId))
(Term s (PAsData (PBuiltinList (PAsData PColdCommitteeCredential))))
(Term s (PAsData (AssocMap.PMap 'AssocMap.Unsorted PColdCommitteeCredential PInteger)))
(Term s PRationalData)
| PNewConstitution (Term s (PMaybeData PGovernanceActionId)) (Term s PConstitution)
| PInfoAction
deriving stock
(
(forall x. PGovernanceAction s -> Rep (PGovernanceAction s) x)
-> (forall x. Rep (PGovernanceAction s) x -> PGovernanceAction s)
-> Generic (PGovernanceAction s)
forall x. Rep (PGovernanceAction s) x -> PGovernanceAction s
forall x. PGovernanceAction s -> Rep (PGovernanceAction s) x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
forall (s :: S) x.
Rep (PGovernanceAction s) x -> PGovernanceAction s
forall (s :: S) x.
PGovernanceAction s -> Rep (PGovernanceAction s) x
$cfrom :: forall (s :: S) x.
PGovernanceAction s -> Rep (PGovernanceAction s) x
from :: forall x. PGovernanceAction s -> Rep (PGovernanceAction s) x
$cto :: forall (s :: S) x.
Rep (PGovernanceAction s) x -> PGovernanceAction s
to :: forall x. Rep (PGovernanceAction s) x -> PGovernanceAction s
Generic
)
deriving anyclass
(
All SListI (Code (PGovernanceAction s))
All SListI (Code (PGovernanceAction s)) =>
(PGovernanceAction s -> Rep (PGovernanceAction s))
-> (Rep (PGovernanceAction s) -> PGovernanceAction s)
-> Generic (PGovernanceAction s)
Rep (PGovernanceAction s) -> PGovernanceAction s
PGovernanceAction s -> Rep (PGovernanceAction s)
forall a.
All SListI (Code a) =>
(a -> Rep a) -> (Rep a -> a) -> Generic a
forall (s :: S). All SListI (Code (PGovernanceAction s))
forall (s :: S). Rep (PGovernanceAction s) -> PGovernanceAction s
forall (s :: S). PGovernanceAction s -> Rep (PGovernanceAction s)
$cfrom :: forall (s :: S). PGovernanceAction s -> Rep (PGovernanceAction s)
from :: PGovernanceAction s -> Rep (PGovernanceAction s)
$cto :: forall (s :: S). Rep (PGovernanceAction s) -> PGovernanceAction s
to :: Rep (PGovernanceAction s) -> PGovernanceAction s
SOP.Generic
,
(forall (s :: S).
Term s (PAsData PGovernanceAction) -> Term s PGovernanceAction)
-> (forall (s :: S). Term s PGovernanceAction -> Term s PData)
-> PIsData PGovernanceAction
forall (s :: S).
Term s (PAsData PGovernanceAction) -> Term s PGovernanceAction
forall (s :: S). Term s PGovernanceAction -> Term s PData
forall (a :: S -> Type).
(forall (s :: S). Term s (PAsData a) -> Term s a)
-> (forall (s :: S). Term s a -> Term s PData) -> PIsData a
$cpfromDataImpl :: forall (s :: S).
Term s (PAsData PGovernanceAction) -> Term s PGovernanceAction
pfromDataImpl :: forall (s :: S).
Term s (PAsData PGovernanceAction) -> Term s PGovernanceAction
$cpdataImpl :: forall (s :: S). Term s PGovernanceAction -> Term s PData
pdataImpl :: forall (s :: S). Term s PGovernanceAction -> Term s PData
PIsData
,
(forall (s :: S).
Term s PGovernanceAction
-> Term s PGovernanceAction -> Term s PBool)
-> PEq PGovernanceAction
forall (s :: S).
Term s PGovernanceAction
-> Term s PGovernanceAction -> Term s PBool
forall (t :: S -> Type).
(forall (s :: S). Term s t -> Term s t -> Term s PBool) -> PEq t
$c#== :: forall (s :: S).
Term s PGovernanceAction
-> Term s PGovernanceAction -> Term s PBool
#== :: forall (s :: S).
Term s PGovernanceAction
-> Term s PGovernanceAction -> Term s PBool
PEq
,
(forall (s :: S).
Bool -> Term s PGovernanceAction -> Term s PString)
-> PShow PGovernanceAction
forall (s :: S). Bool -> Term s PGovernanceAction -> Term s PString
forall (t :: S -> Type).
(forall (s :: S). Bool -> Term s t -> Term s PString) -> PShow t
$cpshow' :: forall (s :: S). Bool -> Term s PGovernanceAction -> Term s PString
pshow' :: forall (s :: S). Bool -> Term s PGovernanceAction -> Term s PString
PShow
)
deriving
(
(forall (s :: S).
PGovernanceAction s -> Term s (PInner PGovernanceAction))
-> (forall (s :: S) (b :: S -> Type).
Term s (PInner PGovernanceAction)
-> (PGovernanceAction s -> Term s b) -> Term s b)
-> PlutusType PGovernanceAction
forall (s :: S).
PGovernanceAction s -> Term s (PInner PGovernanceAction)
forall (s :: S) (b :: S -> Type).
Term s (PInner PGovernanceAction)
-> (PGovernanceAction s -> Term s b) -> Term s b
forall (a :: S -> Type).
(forall (s :: S). a s -> Term s (PInner a))
-> (forall (s :: S) (b :: S -> Type).
Term s (PInner a) -> (a s -> Term s b) -> Term s b)
-> PlutusType a
$cpcon' :: forall (s :: S).
PGovernanceAction s -> Term s (PInner PGovernanceAction)
pcon' :: forall (s :: S).
PGovernanceAction s -> Term s (PInner PGovernanceAction)
$cpmatch' :: forall (s :: S) (b :: S -> Type).
Term s (PInner PGovernanceAction)
-> (PGovernanceAction s -> Term s b) -> Term s b
pmatch' :: forall (s :: S) (b :: S -> Type).
Term s (PInner PGovernanceAction)
-> (PGovernanceAction s -> Term s b) -> Term s b
PlutusType
)
via (DeriveAsDataStruct PGovernanceAction)
deriving via
DeriveDataPLiftable PGovernanceAction Plutus.GovernanceAction
instance
PLiftable PGovernanceAction
data PProposalProcedure (s :: S) = PProposalProcedure
{ forall (s :: S). PProposalProcedure s -> Term s (PAsData PLovelace)
pproposalProcedure'deposit :: Term s (PAsData Value.PLovelace)
, forall (s :: S). PProposalProcedure s -> Term s PCredential
pproposalProcedure'returnAddr :: Term s PCredential
, forall (s :: S). PProposalProcedure s -> Term s PGovernanceAction
pproposalProcedure'governanceAction :: Term s PGovernanceAction
}
deriving stock
(
(forall x. PProposalProcedure s -> Rep (PProposalProcedure s) x)
-> (forall x. Rep (PProposalProcedure s) x -> PProposalProcedure s)
-> Generic (PProposalProcedure s)
forall x. Rep (PProposalProcedure s) x -> PProposalProcedure s
forall x. PProposalProcedure s -> Rep (PProposalProcedure s) x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
forall (s :: S) x.
Rep (PProposalProcedure s) x -> PProposalProcedure s
forall (s :: S) x.
PProposalProcedure s -> Rep (PProposalProcedure s) x
$cfrom :: forall (s :: S) x.
PProposalProcedure s -> Rep (PProposalProcedure s) x
from :: forall x. PProposalProcedure s -> Rep (PProposalProcedure s) x
$cto :: forall (s :: S) x.
Rep (PProposalProcedure s) x -> PProposalProcedure s
to :: forall x. Rep (PProposalProcedure s) x -> PProposalProcedure s
Generic
)
deriving anyclass
(
All SListI (Code (PProposalProcedure s))
All SListI (Code (PProposalProcedure s)) =>
(PProposalProcedure s -> Rep (PProposalProcedure s))
-> (Rep (PProposalProcedure s) -> PProposalProcedure s)
-> Generic (PProposalProcedure s)
Rep (PProposalProcedure s) -> PProposalProcedure s
PProposalProcedure s -> Rep (PProposalProcedure s)
forall a.
All SListI (Code a) =>
(a -> Rep a) -> (Rep a -> a) -> Generic a
forall (s :: S). All SListI (Code (PProposalProcedure s))
forall (s :: S). Rep (PProposalProcedure s) -> PProposalProcedure s
forall (s :: S). PProposalProcedure s -> Rep (PProposalProcedure s)
$cfrom :: forall (s :: S). PProposalProcedure s -> Rep (PProposalProcedure s)
from :: PProposalProcedure s -> Rep (PProposalProcedure s)
$cto :: forall (s :: S). Rep (PProposalProcedure s) -> PProposalProcedure s
to :: Rep (PProposalProcedure s) -> PProposalProcedure s
SOP.Generic
,
(forall (s :: S).
Term s (PAsData PProposalProcedure) -> Term s PProposalProcedure)
-> (forall (s :: S). Term s PProposalProcedure -> Term s PData)
-> PIsData PProposalProcedure
forall (s :: S).
Term s (PAsData PProposalProcedure) -> Term s PProposalProcedure
forall (s :: S). Term s PProposalProcedure -> Term s PData
forall (a :: S -> Type).
(forall (s :: S). Term s (PAsData a) -> Term s a)
-> (forall (s :: S). Term s a -> Term s PData) -> PIsData a
$cpfromDataImpl :: forall (s :: S).
Term s (PAsData PProposalProcedure) -> Term s PProposalProcedure
pfromDataImpl :: forall (s :: S).
Term s (PAsData PProposalProcedure) -> Term s PProposalProcedure
$cpdataImpl :: forall (s :: S). Term s PProposalProcedure -> Term s PData
pdataImpl :: forall (s :: S). Term s PProposalProcedure -> Term s PData
PIsData
,
(forall (s :: S).
Term s PProposalProcedure
-> Term s PProposalProcedure -> Term s PBool)
-> PEq PProposalProcedure
forall (s :: S).
Term s PProposalProcedure
-> Term s PProposalProcedure -> Term s PBool
forall (t :: S -> Type).
(forall (s :: S). Term s t -> Term s t -> Term s PBool) -> PEq t
$c#== :: forall (s :: S).
Term s PProposalProcedure
-> Term s PProposalProcedure -> Term s PBool
#== :: forall (s :: S).
Term s PProposalProcedure
-> Term s PProposalProcedure -> Term s PBool
PEq
,
(forall (s :: S).
Bool -> Term s PProposalProcedure -> Term s PString)
-> PShow PProposalProcedure
forall (s :: S).
Bool -> Term s PProposalProcedure -> Term s PString
forall (t :: S -> Type).
(forall (s :: S). Bool -> Term s t -> Term s PString) -> PShow t
$cpshow' :: forall (s :: S).
Bool -> Term s PProposalProcedure -> Term s PString
pshow' :: forall (s :: S).
Bool -> Term s PProposalProcedure -> Term s PString
PShow
)
deriving
(
(forall (s :: S).
PProposalProcedure s -> Term s (PInner PProposalProcedure))
-> (forall (s :: S) (b :: S -> Type).
Term s (PInner PProposalProcedure)
-> (PProposalProcedure s -> Term s b) -> Term s b)
-> PlutusType PProposalProcedure
forall (s :: S).
PProposalProcedure s -> Term s (PInner PProposalProcedure)
forall (s :: S) (b :: S -> Type).
Term s (PInner PProposalProcedure)
-> (PProposalProcedure s -> Term s b) -> Term s b
forall (a :: S -> Type).
(forall (s :: S). a s -> Term s (PInner a))
-> (forall (s :: S) (b :: S -> Type).
Term s (PInner a) -> (a s -> Term s b) -> Term s b)
-> PlutusType a
$cpcon' :: forall (s :: S).
PProposalProcedure s -> Term s (PInner PProposalProcedure)
pcon' :: forall (s :: S).
PProposalProcedure s -> Term s (PInner PProposalProcedure)
$cpmatch' :: forall (s :: S) (b :: S -> Type).
Term s (PInner PProposalProcedure)
-> (PProposalProcedure s -> Term s b) -> Term s b
pmatch' :: forall (s :: S) (b :: S -> Type).
Term s (PInner PProposalProcedure)
-> (PProposalProcedure s -> Term s b) -> Term s b
PlutusType
)
via (DeriveAsDataStruct PProposalProcedure)
deriving via
DeriveDataPLiftable PProposalProcedure Plutus.ProposalProcedure
instance
PLiftable PProposalProcedure
data PScriptPurpose (s :: S)
= PMinting (Term s (PAsData Value.PCurrencySymbol))
| PSpending (Term s PTxOutRef)
|
PRewarding (Term s PCredential)
| PCertifying (Term s (PAsData PInteger)) (Term s PTxCert)
|
PVoting (Term s PVoter)
|
PProposing (Term s (PAsData PInteger)) (Term s PProposalProcedure)
deriving stock
(
(forall x. PScriptPurpose s -> Rep (PScriptPurpose s) x)
-> (forall x. Rep (PScriptPurpose s) x -> PScriptPurpose s)
-> Generic (PScriptPurpose s)
forall x. Rep (PScriptPurpose s) x -> PScriptPurpose s
forall x. PScriptPurpose s -> Rep (PScriptPurpose s) x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
forall (s :: S) x. Rep (PScriptPurpose s) x -> PScriptPurpose s
forall (s :: S) x. PScriptPurpose s -> Rep (PScriptPurpose s) x
$cfrom :: forall (s :: S) x. PScriptPurpose s -> Rep (PScriptPurpose s) x
from :: forall x. PScriptPurpose s -> Rep (PScriptPurpose s) x
$cto :: forall (s :: S) x. Rep (PScriptPurpose s) x -> PScriptPurpose s
to :: forall x. Rep (PScriptPurpose s) x -> PScriptPurpose s
Generic
)
deriving anyclass
(
All SListI (Code (PScriptPurpose s))
All SListI (Code (PScriptPurpose s)) =>
(PScriptPurpose s -> Rep (PScriptPurpose s))
-> (Rep (PScriptPurpose s) -> PScriptPurpose s)
-> Generic (PScriptPurpose s)
Rep (PScriptPurpose s) -> PScriptPurpose s
PScriptPurpose s -> Rep (PScriptPurpose s)
forall a.
All SListI (Code a) =>
(a -> Rep a) -> (Rep a -> a) -> Generic a
forall (s :: S). All SListI (Code (PScriptPurpose s))
forall (s :: S). Rep (PScriptPurpose s) -> PScriptPurpose s
forall (s :: S). PScriptPurpose s -> Rep (PScriptPurpose s)
$cfrom :: forall (s :: S). PScriptPurpose s -> Rep (PScriptPurpose s)
from :: PScriptPurpose s -> Rep (PScriptPurpose s)
$cto :: forall (s :: S). Rep (PScriptPurpose s) -> PScriptPurpose s
to :: Rep (PScriptPurpose s) -> PScriptPurpose s
SOP.Generic
,
(forall (s :: S).
Term s (PAsData PScriptPurpose) -> Term s PScriptPurpose)
-> (forall (s :: S). Term s PScriptPurpose -> Term s PData)
-> PIsData PScriptPurpose
forall (s :: S).
Term s (PAsData PScriptPurpose) -> Term s PScriptPurpose
forall (s :: S). Term s PScriptPurpose -> Term s PData
forall (a :: S -> Type).
(forall (s :: S). Term s (PAsData a) -> Term s a)
-> (forall (s :: S). Term s a -> Term s PData) -> PIsData a
$cpfromDataImpl :: forall (s :: S).
Term s (PAsData PScriptPurpose) -> Term s PScriptPurpose
pfromDataImpl :: forall (s :: S).
Term s (PAsData PScriptPurpose) -> Term s PScriptPurpose
$cpdataImpl :: forall (s :: S). Term s PScriptPurpose -> Term s PData
pdataImpl :: forall (s :: S). Term s PScriptPurpose -> Term s PData
PIsData
,
(forall (s :: S).
Term s PScriptPurpose -> Term s PScriptPurpose -> Term s PBool)
-> PEq PScriptPurpose
forall (s :: S).
Term s PScriptPurpose -> Term s PScriptPurpose -> Term s PBool
forall (t :: S -> Type).
(forall (s :: S). Term s t -> Term s t -> Term s PBool) -> PEq t
$c#== :: forall (s :: S).
Term s PScriptPurpose -> Term s PScriptPurpose -> Term s PBool
#== :: forall (s :: S).
Term s PScriptPurpose -> Term s PScriptPurpose -> Term s PBool
PEq
,
(forall (s :: S). Bool -> Term s PScriptPurpose -> Term s PString)
-> PShow PScriptPurpose
forall (s :: S). Bool -> Term s PScriptPurpose -> Term s PString
forall (t :: S -> Type).
(forall (s :: S). Bool -> Term s t -> Term s PString) -> PShow t
$cpshow' :: forall (s :: S). Bool -> Term s PScriptPurpose -> Term s PString
pshow' :: forall (s :: S). Bool -> Term s PScriptPurpose -> Term s PString
PShow
)
deriving
(
(forall (s :: S).
PScriptPurpose s -> Term s (PInner PScriptPurpose))
-> (forall (s :: S) (b :: S -> Type).
Term s (PInner PScriptPurpose)
-> (PScriptPurpose s -> Term s b) -> Term s b)
-> PlutusType PScriptPurpose
forall (s :: S). PScriptPurpose s -> Term s (PInner PScriptPurpose)
forall (s :: S) (b :: S -> Type).
Term s (PInner PScriptPurpose)
-> (PScriptPurpose s -> Term s b) -> Term s b
forall (a :: S -> Type).
(forall (s :: S). a s -> Term s (PInner a))
-> (forall (s :: S) (b :: S -> Type).
Term s (PInner a) -> (a s -> Term s b) -> Term s b)
-> PlutusType a
$cpcon' :: forall (s :: S). PScriptPurpose s -> Term s (PInner PScriptPurpose)
pcon' :: forall (s :: S). PScriptPurpose s -> Term s (PInner PScriptPurpose)
$cpmatch' :: forall (s :: S) (b :: S -> Type).
Term s (PInner PScriptPurpose)
-> (PScriptPurpose s -> Term s b) -> Term s b
pmatch' :: forall (s :: S) (b :: S -> Type).
Term s (PInner PScriptPurpose)
-> (PScriptPurpose s -> Term s b) -> Term s b
PlutusType
)
via (DeriveAsDataStruct PScriptPurpose)
deriving via
DeriveDataPLiftable PScriptPurpose Plutus.ScriptPurpose
instance
PLiftable PScriptPurpose
data PScriptInfo (s :: S)
= PMintingScript (Term s (PAsData Value.PCurrencySymbol))
| PSpendingScript (Term s PTxOutRef) (Term s (PMaybeData PDatum))
| PRewardingScript (Term s PCredential)
| PCertifyingScript (Term s (PAsData PInteger)) (Term s PTxCert)
| PVotingScript (Term s PVoter)
| PProposingScript (Term s (PAsData PInteger)) (Term s PProposalProcedure)
deriving stock
(
(forall x. PScriptInfo s -> Rep (PScriptInfo s) x)
-> (forall x. Rep (PScriptInfo s) x -> PScriptInfo s)
-> Generic (PScriptInfo s)
forall x. Rep (PScriptInfo s) x -> PScriptInfo s
forall x. PScriptInfo s -> Rep (PScriptInfo s) x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
forall (s :: S) x. Rep (PScriptInfo s) x -> PScriptInfo s
forall (s :: S) x. PScriptInfo s -> Rep (PScriptInfo s) x
$cfrom :: forall (s :: S) x. PScriptInfo s -> Rep (PScriptInfo s) x
from :: forall x. PScriptInfo s -> Rep (PScriptInfo s) x
$cto :: forall (s :: S) x. Rep (PScriptInfo s) x -> PScriptInfo s
to :: forall x. Rep (PScriptInfo s) x -> PScriptInfo s
Generic
)
deriving anyclass
(
All SListI (Code (PScriptInfo s))
All SListI (Code (PScriptInfo s)) =>
(PScriptInfo s -> Rep (PScriptInfo s))
-> (Rep (PScriptInfo s) -> PScriptInfo s)
-> Generic (PScriptInfo s)
Rep (PScriptInfo s) -> PScriptInfo s
PScriptInfo s -> Rep (PScriptInfo s)
forall a.
All SListI (Code a) =>
(a -> Rep a) -> (Rep a -> a) -> Generic a
forall (s :: S). All SListI (Code (PScriptInfo s))
forall (s :: S). Rep (PScriptInfo s) -> PScriptInfo s
forall (s :: S). PScriptInfo s -> Rep (PScriptInfo s)
$cfrom :: forall (s :: S). PScriptInfo s -> Rep (PScriptInfo s)
from :: PScriptInfo s -> Rep (PScriptInfo s)
$cto :: forall (s :: S). Rep (PScriptInfo s) -> PScriptInfo s
to :: Rep (PScriptInfo s) -> PScriptInfo s
SOP.Generic
,
(forall (s :: S).
Term s (PAsData PScriptInfo) -> Term s PScriptInfo)
-> (forall (s :: S). Term s PScriptInfo -> Term s PData)
-> PIsData PScriptInfo
forall (s :: S). Term s (PAsData PScriptInfo) -> Term s PScriptInfo
forall (s :: S). Term s PScriptInfo -> Term s PData
forall (a :: S -> Type).
(forall (s :: S). Term s (PAsData a) -> Term s a)
-> (forall (s :: S). Term s a -> Term s PData) -> PIsData a
$cpfromDataImpl :: forall (s :: S). Term s (PAsData PScriptInfo) -> Term s PScriptInfo
pfromDataImpl :: forall (s :: S). Term s (PAsData PScriptInfo) -> Term s PScriptInfo
$cpdataImpl :: forall (s :: S). Term s PScriptInfo -> Term s PData
pdataImpl :: forall (s :: S). Term s PScriptInfo -> Term s PData
PIsData
,
(forall (s :: S).
Term s PScriptInfo -> Term s PScriptInfo -> Term s PBool)
-> PEq PScriptInfo
forall (s :: S).
Term s PScriptInfo -> Term s PScriptInfo -> Term s PBool
forall (t :: S -> Type).
(forall (s :: S). Term s t -> Term s t -> Term s PBool) -> PEq t
$c#== :: forall (s :: S).
Term s PScriptInfo -> Term s PScriptInfo -> Term s PBool
#== :: forall (s :: S).
Term s PScriptInfo -> Term s PScriptInfo -> Term s PBool
PEq
,
(forall (s :: S). Bool -> Term s PScriptInfo -> Term s PString)
-> PShow PScriptInfo
forall (s :: S). Bool -> Term s PScriptInfo -> Term s PString
forall (t :: S -> Type).
(forall (s :: S). Bool -> Term s t -> Term s PString) -> PShow t
$cpshow' :: forall (s :: S). Bool -> Term s PScriptInfo -> Term s PString
pshow' :: forall (s :: S). Bool -> Term s PScriptInfo -> Term s PString
PShow
)
deriving
(
(forall (s :: S). PScriptInfo s -> Term s (PInner PScriptInfo))
-> (forall (s :: S) (b :: S -> Type).
Term s (PInner PScriptInfo)
-> (PScriptInfo s -> Term s b) -> Term s b)
-> PlutusType PScriptInfo
forall (s :: S). PScriptInfo s -> Term s (PInner PScriptInfo)
forall (s :: S) (b :: S -> Type).
Term s (PInner PScriptInfo)
-> (PScriptInfo s -> Term s b) -> Term s b
forall (a :: S -> Type).
(forall (s :: S). a s -> Term s (PInner a))
-> (forall (s :: S) (b :: S -> Type).
Term s (PInner a) -> (a s -> Term s b) -> Term s b)
-> PlutusType a
$cpcon' :: forall (s :: S). PScriptInfo s -> Term s (PInner PScriptInfo)
pcon' :: forall (s :: S). PScriptInfo s -> Term s (PInner PScriptInfo)
$cpmatch' :: forall (s :: S) (b :: S -> Type).
Term s (PInner PScriptInfo)
-> (PScriptInfo s -> Term s b) -> Term s b
pmatch' :: forall (s :: S) (b :: S -> Type).
Term s (PInner PScriptInfo)
-> (PScriptInfo s -> Term s b) -> Term s b
PlutusType
)
via (DeriveAsDataStruct PScriptInfo)
deriving via
DeriveDataPLiftable PScriptInfo Plutus.ScriptInfo
instance
PLiftable PScriptInfo
data PTxInInfo (s :: S) = PTxInInfo
{ forall (s :: S). PTxInInfo s -> Term s PTxOutRef
ptxInInfo'outRef :: Term s PTxOutRef
, forall (s :: S). PTxInInfo s -> Term s PTxOut
ptxInInfo'resolved :: Term s PTxOut
}
deriving stock
(
(forall x. PTxInInfo s -> Rep (PTxInInfo s) x)
-> (forall x. Rep (PTxInInfo s) x -> PTxInInfo s)
-> Generic (PTxInInfo s)
forall x. Rep (PTxInInfo s) x -> PTxInInfo s
forall x. PTxInInfo s -> Rep (PTxInInfo s) x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
forall (s :: S) x. Rep (PTxInInfo s) x -> PTxInInfo s
forall (s :: S) x. PTxInInfo s -> Rep (PTxInInfo s) x
$cfrom :: forall (s :: S) x. PTxInInfo s -> Rep (PTxInInfo s) x
from :: forall x. PTxInInfo s -> Rep (PTxInInfo s) x
$cto :: forall (s :: S) x. Rep (PTxInInfo s) x -> PTxInInfo s
to :: forall x. Rep (PTxInInfo s) x -> PTxInInfo s
Generic
)
deriving anyclass
(
All SListI (Code (PTxInInfo s))
All SListI (Code (PTxInInfo s)) =>
(PTxInInfo s -> Rep (PTxInInfo s))
-> (Rep (PTxInInfo s) -> PTxInInfo s) -> Generic (PTxInInfo s)
Rep (PTxInInfo s) -> PTxInInfo s
PTxInInfo s -> Rep (PTxInInfo s)
forall a.
All SListI (Code a) =>
(a -> Rep a) -> (Rep a -> a) -> Generic a
forall (s :: S). All SListI (Code (PTxInInfo s))
forall (s :: S). Rep (PTxInInfo s) -> PTxInInfo s
forall (s :: S). PTxInInfo s -> Rep (PTxInInfo s)
$cfrom :: forall (s :: S). PTxInInfo s -> Rep (PTxInInfo s)
from :: PTxInInfo s -> Rep (PTxInInfo s)
$cto :: forall (s :: S). Rep (PTxInInfo s) -> PTxInInfo s
to :: Rep (PTxInInfo s) -> PTxInInfo s
SOP.Generic
,
(forall (s :: S). Term s (PAsData PTxInInfo) -> Term s PTxInInfo)
-> (forall (s :: S). Term s PTxInInfo -> Term s PData)
-> PIsData PTxInInfo
forall (s :: S). Term s (PAsData PTxInInfo) -> Term s PTxInInfo
forall (s :: S). Term s PTxInInfo -> Term s PData
forall (a :: S -> Type).
(forall (s :: S). Term s (PAsData a) -> Term s a)
-> (forall (s :: S). Term s a -> Term s PData) -> PIsData a
$cpfromDataImpl :: forall (s :: S). Term s (PAsData PTxInInfo) -> Term s PTxInInfo
pfromDataImpl :: forall (s :: S). Term s (PAsData PTxInInfo) -> Term s PTxInInfo
$cpdataImpl :: forall (s :: S). Term s PTxInInfo -> Term s PData
pdataImpl :: forall (s :: S). Term s PTxInInfo -> Term s PData
PIsData
,
(forall (s :: S).
Term s PTxInInfo -> Term s PTxInInfo -> Term s PBool)
-> PEq PTxInInfo
forall (s :: S).
Term s PTxInInfo -> Term s PTxInInfo -> Term s PBool
forall (t :: S -> Type).
(forall (s :: S). Term s t -> Term s t -> Term s PBool) -> PEq t
$c#== :: forall (s :: S).
Term s PTxInInfo -> Term s PTxInInfo -> Term s PBool
#== :: forall (s :: S).
Term s PTxInInfo -> Term s PTxInInfo -> Term s PBool
PEq
,
(forall (s :: S). Bool -> Term s PTxInInfo -> Term s PString)
-> PShow PTxInInfo
forall (s :: S). Bool -> Term s PTxInInfo -> Term s PString
forall (t :: S -> Type).
(forall (s :: S). Bool -> Term s t -> Term s PString) -> PShow t
$cpshow' :: forall (s :: S). Bool -> Term s PTxInInfo -> Term s PString
pshow' :: forall (s :: S). Bool -> Term s PTxInInfo -> Term s PString
PShow
)
deriving
(
(forall (s :: S). PTxInInfo s -> Term s (PInner PTxInInfo))
-> (forall (s :: S) (b :: S -> Type).
Term s (PInner PTxInInfo) -> (PTxInInfo s -> Term s b) -> Term s b)
-> PlutusType PTxInInfo
forall (s :: S). PTxInInfo s -> Term s (PInner PTxInInfo)
forall (s :: S) (b :: S -> Type).
Term s (PInner PTxInInfo) -> (PTxInInfo s -> Term s b) -> Term s b
forall (a :: S -> Type).
(forall (s :: S). a s -> Term s (PInner a))
-> (forall (s :: S) (b :: S -> Type).
Term s (PInner a) -> (a s -> Term s b) -> Term s b)
-> PlutusType a
$cpcon' :: forall (s :: S). PTxInInfo s -> Term s (PInner PTxInInfo)
pcon' :: forall (s :: S). PTxInInfo s -> Term s (PInner PTxInInfo)
$cpmatch' :: forall (s :: S) (b :: S -> Type).
Term s (PInner PTxInInfo) -> (PTxInInfo s -> Term s b) -> Term s b
pmatch' :: forall (s :: S) (b :: S -> Type).
Term s (PInner PTxInInfo) -> (PTxInInfo s -> Term s b) -> Term s b
PlutusType
)
via (DeriveAsDataStruct PTxInInfo)
deriving via
DeriveDataPLiftable PTxInInfo Plutus.TxInInfo
instance
PLiftable PTxInInfo
data PTxInfo (s :: S) = PTxInfo
{ forall (s :: S).
PTxInfo s -> Term s (PAsData (PBuiltinList (PAsData PTxInInfo)))
ptxInfo'inputs :: Term s (PAsData (PBuiltinList (PAsData PTxInInfo)))
, forall (s :: S).
PTxInfo s -> Term s (PAsData (PBuiltinList (PAsData PTxInInfo)))
ptxInfo'referenceInputs :: Term s (PAsData (PBuiltinList (PAsData PTxInInfo)))
, forall (s :: S).
PTxInfo s -> Term s (PAsData (PBuiltinList (PAsData PTxOut)))
ptxInfo'outputs :: Term s (PAsData (PBuiltinList (PAsData PTxOut)))
, forall (s :: S). PTxInfo s -> Term s (PAsData PLovelace)
ptxInfo'fee :: Term s (PAsData Value.PLovelace)
, forall (s :: S).
PTxInfo s -> Term s (PAsData (PValue 'Sorted 'NonZero))
ptxInfo'mint :: Term s (PAsData (Value.PValue 'AssocMap.Sorted 'Value.NonZero))
, forall (s :: S).
PTxInfo s -> Term s (PAsData (PBuiltinList (PAsData PTxCert)))
ptxInfo'txCerts :: Term s (PAsData (PBuiltinList (PAsData PTxCert)))
, forall (s :: S).
PTxInfo s
-> Term s (PAsData (PMap 'Unsorted PCredential PLovelace))
ptxInfo'wdrl :: Term s (PAsData (AssocMap.PMap 'AssocMap.Unsorted PCredential Value.PLovelace))
, forall (s :: S). PTxInfo s -> Term s (PInterval PPosixTime)
ptxInfo'validRange :: Term s (Interval.PInterval PPosixTime)
, forall (s :: S).
PTxInfo s -> Term s (PAsData (PBuiltinList (PAsData PPubKeyHash)))
ptxInfo'signatories :: Term s (PAsData (PBuiltinList (PAsData PPubKeyHash)))
, forall (s :: S).
PTxInfo s
-> Term s (PAsData (PMap 'Unsorted PScriptPurpose PRedeemer))
ptxInfo'redeemers :: Term s (PAsData (AssocMap.PMap 'AssocMap.Unsorted PScriptPurpose PRedeemer))
, forall (s :: S).
PTxInfo s -> Term s (PAsData (PMap 'Unsorted PDatumHash PDatum))
ptxInfo'data :: Term s (PAsData (AssocMap.PMap 'AssocMap.Unsorted PDatumHash PDatum))
, forall (s :: S). PTxInfo s -> Term s (PAsData PTxId)
ptxInfo'id :: Term s (PAsData PTxId)
, forall (s :: S).
PTxInfo s
-> Term
s
(PAsData
(PMap 'Unsorted PVoter (PMap 'Unsorted PGovernanceActionId PVote)))
ptxInfo'votes :: Term s (PAsData (AssocMap.PMap 'AssocMap.Unsorted PVoter (AssocMap.PMap 'AssocMap.Unsorted PGovernanceActionId PVote)))
, forall (s :: S).
PTxInfo s
-> Term s (PAsData (PBuiltinList (PAsData PProposalProcedure)))
ptxInfo'proposalProcedures :: Term s (PAsData (PBuiltinList (PAsData PProposalProcedure)))
, forall (s :: S). PTxInfo s -> Term s (PMaybeData PLovelace)
ptxInfo'currentTreasuryAmount :: Term s (PMaybeData Value.PLovelace)
, forall (s :: S). PTxInfo s -> Term s (PMaybeData PLovelace)
ptxInfo'treasuryDonation :: Term s (PMaybeData Value.PLovelace)
}
deriving stock
(
(forall x. PTxInfo s -> Rep (PTxInfo s) x)
-> (forall x. Rep (PTxInfo s) x -> PTxInfo s)
-> Generic (PTxInfo s)
forall x. Rep (PTxInfo s) x -> PTxInfo s
forall x. PTxInfo s -> Rep (PTxInfo s) x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
forall (s :: S) x. Rep (PTxInfo s) x -> PTxInfo s
forall (s :: S) x. PTxInfo s -> Rep (PTxInfo s) x
$cfrom :: forall (s :: S) x. PTxInfo s -> Rep (PTxInfo s) x
from :: forall x. PTxInfo s -> Rep (PTxInfo s) x
$cto :: forall (s :: S) x. Rep (PTxInfo s) x -> PTxInfo s
to :: forall x. Rep (PTxInfo s) x -> PTxInfo s
Generic
)
deriving anyclass
(
All SListI (Code (PTxInfo s))
All SListI (Code (PTxInfo s)) =>
(PTxInfo s -> Rep (PTxInfo s))
-> (Rep (PTxInfo s) -> PTxInfo s) -> Generic (PTxInfo s)
Rep (PTxInfo s) -> PTxInfo s
PTxInfo s -> Rep (PTxInfo s)
forall a.
All SListI (Code a) =>
(a -> Rep a) -> (Rep a -> a) -> Generic a
forall (s :: S). All SListI (Code (PTxInfo s))
forall (s :: S). Rep (PTxInfo s) -> PTxInfo s
forall (s :: S). PTxInfo s -> Rep (PTxInfo s)
$cfrom :: forall (s :: S). PTxInfo s -> Rep (PTxInfo s)
from :: PTxInfo s -> Rep (PTxInfo s)
$cto :: forall (s :: S). Rep (PTxInfo s) -> PTxInfo s
to :: Rep (PTxInfo s) -> PTxInfo s
SOP.Generic
,
(forall (s :: S). Term s (PAsData PTxInfo) -> Term s PTxInfo)
-> (forall (s :: S). Term s PTxInfo -> Term s PData)
-> PIsData PTxInfo
forall (s :: S). Term s (PAsData PTxInfo) -> Term s PTxInfo
forall (s :: S). Term s PTxInfo -> Term s PData
forall (a :: S -> Type).
(forall (s :: S). Term s (PAsData a) -> Term s a)
-> (forall (s :: S). Term s a -> Term s PData) -> PIsData a
$cpfromDataImpl :: forall (s :: S). Term s (PAsData PTxInfo) -> Term s PTxInfo
pfromDataImpl :: forall (s :: S). Term s (PAsData PTxInfo) -> Term s PTxInfo
$cpdataImpl :: forall (s :: S). Term s PTxInfo -> Term s PData
pdataImpl :: forall (s :: S). Term s PTxInfo -> Term s PData
PIsData
,
(forall (s :: S). Term s PTxInfo -> Term s PTxInfo -> Term s PBool)
-> PEq PTxInfo
forall (s :: S). Term s PTxInfo -> Term s PTxInfo -> Term s PBool
forall (t :: S -> Type).
(forall (s :: S). Term s t -> Term s t -> Term s PBool) -> PEq t
$c#== :: forall (s :: S). Term s PTxInfo -> Term s PTxInfo -> Term s PBool
#== :: forall (s :: S). Term s PTxInfo -> Term s PTxInfo -> Term s PBool
PEq
,
(forall (s :: S). Bool -> Term s PTxInfo -> Term s PString)
-> PShow PTxInfo
forall (s :: S). Bool -> Term s PTxInfo -> Term s PString
forall (t :: S -> Type).
(forall (s :: S). Bool -> Term s t -> Term s PString) -> PShow t
$cpshow' :: forall (s :: S). Bool -> Term s PTxInfo -> Term s PString
pshow' :: forall (s :: S). Bool -> Term s PTxInfo -> Term s PString
PShow
)
deriving
(
(forall (s :: S). PTxInfo s -> Term s (PInner PTxInfo))
-> (forall (s :: S) (b :: S -> Type).
Term s (PInner PTxInfo) -> (PTxInfo s -> Term s b) -> Term s b)
-> PlutusType PTxInfo
forall (s :: S). PTxInfo s -> Term s (PInner PTxInfo)
forall (s :: S) (b :: S -> Type).
Term s (PInner PTxInfo) -> (PTxInfo s -> Term s b) -> Term s b
forall (a :: S -> Type).
(forall (s :: S). a s -> Term s (PInner a))
-> (forall (s :: S) (b :: S -> Type).
Term s (PInner a) -> (a s -> Term s b) -> Term s b)
-> PlutusType a
$cpcon' :: forall (s :: S). PTxInfo s -> Term s (PInner PTxInfo)
pcon' :: forall (s :: S). PTxInfo s -> Term s (PInner PTxInfo)
$cpmatch' :: forall (s :: S) (b :: S -> Type).
Term s (PInner PTxInfo) -> (PTxInfo s -> Term s b) -> Term s b
pmatch' :: forall (s :: S) (b :: S -> Type).
Term s (PInner PTxInfo) -> (PTxInfo s -> Term s b) -> Term s b
PlutusType
)
via (DeriveAsDataStruct PTxInfo)
deriving via
DeriveDataPLiftable PTxInfo Plutus.TxInfo
instance
PLiftable PTxInfo
data PScriptContext (s :: S) = PScriptContext
{ forall (s :: S). PScriptContext s -> Term s PTxInfo
pscriptContext'txInfo :: Term s PTxInfo
, forall (s :: S). PScriptContext s -> Term s PRedeemer
pscriptContext'redeemer :: Term s PRedeemer
, forall (s :: S). PScriptContext s -> Term s PScriptInfo
pscriptContext'scriptInfo :: Term s PScriptInfo
}
deriving stock
(
(forall x. PScriptContext s -> Rep (PScriptContext s) x)
-> (forall x. Rep (PScriptContext s) x -> PScriptContext s)
-> Generic (PScriptContext s)
forall x. Rep (PScriptContext s) x -> PScriptContext s
forall x. PScriptContext s -> Rep (PScriptContext s) x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
forall (s :: S) x. Rep (PScriptContext s) x -> PScriptContext s
forall (s :: S) x. PScriptContext s -> Rep (PScriptContext s) x
$cfrom :: forall (s :: S) x. PScriptContext s -> Rep (PScriptContext s) x
from :: forall x. PScriptContext s -> Rep (PScriptContext s) x
$cto :: forall (s :: S) x. Rep (PScriptContext s) x -> PScriptContext s
to :: forall x. Rep (PScriptContext s) x -> PScriptContext s
Generic
)
deriving anyclass
(
All SListI (Code (PScriptContext s))
All SListI (Code (PScriptContext s)) =>
(PScriptContext s -> Rep (PScriptContext s))
-> (Rep (PScriptContext s) -> PScriptContext s)
-> Generic (PScriptContext s)
Rep (PScriptContext s) -> PScriptContext s
PScriptContext s -> Rep (PScriptContext s)
forall a.
All SListI (Code a) =>
(a -> Rep a) -> (Rep a -> a) -> Generic a
forall (s :: S). All SListI (Code (PScriptContext s))
forall (s :: S). Rep (PScriptContext s) -> PScriptContext s
forall (s :: S). PScriptContext s -> Rep (PScriptContext s)
$cfrom :: forall (s :: S). PScriptContext s -> Rep (PScriptContext s)
from :: PScriptContext s -> Rep (PScriptContext s)
$cto :: forall (s :: S). Rep (PScriptContext s) -> PScriptContext s
to :: Rep (PScriptContext s) -> PScriptContext s
SOP.Generic
,
(forall (s :: S).
Term s (PAsData PScriptContext) -> Term s PScriptContext)
-> (forall (s :: S). Term s PScriptContext -> Term s PData)
-> PIsData PScriptContext
forall (s :: S).
Term s (PAsData PScriptContext) -> Term s PScriptContext
forall (s :: S). Term s PScriptContext -> Term s PData
forall (a :: S -> Type).
(forall (s :: S). Term s (PAsData a) -> Term s a)
-> (forall (s :: S). Term s a -> Term s PData) -> PIsData a
$cpfromDataImpl :: forall (s :: S).
Term s (PAsData PScriptContext) -> Term s PScriptContext
pfromDataImpl :: forall (s :: S).
Term s (PAsData PScriptContext) -> Term s PScriptContext
$cpdataImpl :: forall (s :: S). Term s PScriptContext -> Term s PData
pdataImpl :: forall (s :: S). Term s PScriptContext -> Term s PData
PIsData
,
(forall (s :: S).
Term s PScriptContext -> Term s PScriptContext -> Term s PBool)
-> PEq PScriptContext
forall (s :: S).
Term s PScriptContext -> Term s PScriptContext -> Term s PBool
forall (t :: S -> Type).
(forall (s :: S). Term s t -> Term s t -> Term s PBool) -> PEq t
$c#== :: forall (s :: S).
Term s PScriptContext -> Term s PScriptContext -> Term s PBool
#== :: forall (s :: S).
Term s PScriptContext -> Term s PScriptContext -> Term s PBool
PEq
,
(forall (s :: S). Bool -> Term s PScriptContext -> Term s PString)
-> PShow PScriptContext
forall (s :: S). Bool -> Term s PScriptContext -> Term s PString
forall (t :: S -> Type).
(forall (s :: S). Bool -> Term s t -> Term s PString) -> PShow t
$cpshow' :: forall (s :: S). Bool -> Term s PScriptContext -> Term s PString
pshow' :: forall (s :: S). Bool -> Term s PScriptContext -> Term s PString
PShow
)
deriving
(
(forall (s :: S).
PScriptContext s -> Term s (PInner PScriptContext))
-> (forall (s :: S) (b :: S -> Type).
Term s (PInner PScriptContext)
-> (PScriptContext s -> Term s b) -> Term s b)
-> PlutusType PScriptContext
forall (s :: S). PScriptContext s -> Term s (PInner PScriptContext)
forall (s :: S) (b :: S -> Type).
Term s (PInner PScriptContext)
-> (PScriptContext s -> Term s b) -> Term s b
forall (a :: S -> Type).
(forall (s :: S). a s -> Term s (PInner a))
-> (forall (s :: S) (b :: S -> Type).
Term s (PInner a) -> (a s -> Term s b) -> Term s b)
-> PlutusType a
$cpcon' :: forall (s :: S). PScriptContext s -> Term s (PInner PScriptContext)
pcon' :: forall (s :: S). PScriptContext s -> Term s (PInner PScriptContext)
$cpmatch' :: forall (s :: S) (b :: S -> Type).
Term s (PInner PScriptContext)
-> (PScriptContext s -> Term s b) -> Term s b
pmatch' :: forall (s :: S) (b :: S -> Type).
Term s (PInner PScriptContext)
-> (PScriptContext s -> Term s b) -> Term s b
PlutusType
)
via (DeriveAsDataStruct PScriptContext)
deriving via
DeriveDataPLiftable PScriptContext Plutus.ScriptContext
instance
PLiftable PScriptContext
pfindDatum ::
forall (s :: S).
Term s (PDatumHash :--> PTxInfo :--> PMaybe PDatum)
pfindDatum :: forall (s :: S).
Term s (PDatumHash :--> (PTxInfo :--> PMaybe PDatum))
pfindDatum = (forall (s :: S).
Term s (PDatumHash :--> (PTxInfo :--> PMaybe PDatum)))
-> Term s (PDatumHash :--> (PTxInfo :--> PMaybe PDatum))
forall (a :: S -> Type) (s :: S).
HasCallStack =>
ClosedTerm a -> Term s a
phoistAcyclic ((forall (s :: S).
Term s (PDatumHash :--> (PTxInfo :--> PMaybe PDatum)))
-> Term s (PDatumHash :--> (PTxInfo :--> PMaybe PDatum)))
-> (forall (s :: S).
Term s (PDatumHash :--> (PTxInfo :--> PMaybe PDatum)))
-> Term s (PDatumHash :--> (PTxInfo :--> PMaybe PDatum))
forall a b. (a -> b) -> a -> b
$ (Term s PDatumHash -> Term s PTxInfo -> Term s (PMaybe PDatum))
-> Term s (PDatumHash :--> (PTxInfo :--> PMaybe PDatum))
forall a (b :: S -> Type) (s :: S) (c :: S -> Type).
(PLamN a b s, HasCallStack) =>
(Term s c -> a) -> Term s (c :--> b)
forall (c :: S -> Type).
HasCallStack =>
(Term s c -> Term s PTxInfo -> Term s (PMaybe PDatum))
-> Term s (c :--> (PTxInfo :--> PMaybe PDatum))
plam ((Term s PDatumHash -> Term s PTxInfo -> Term s (PMaybe PDatum))
-> Term s (PDatumHash :--> (PTxInfo :--> PMaybe PDatum)))
-> (Term s PDatumHash -> Term s PTxInfo -> Term s (PMaybe PDatum))
-> Term s (PDatumHash :--> (PTxInfo :--> PMaybe PDatum))
forall a b. (a -> b) -> a -> b
$ \Term s PDatumHash
dh Term s PTxInfo
txI ->
Term s PTxInfo
-> (PTxInfo s -> Term s (PMaybe PDatum)) -> Term s (PMaybe PDatum)
forall (a :: S -> Type) (s :: S) (b :: S -> Type).
PlutusType a =>
Term s a -> (a s -> Term s b) -> Term s b
pmatch Term s PTxInfo
txI ((PTxInfo s -> Term s (PMaybe PDatum)) -> Term s (PMaybe PDatum))
-> (PTxInfo s -> Term s (PMaybe PDatum)) -> Term s (PMaybe PDatum)
forall a b. (a -> b) -> a -> b
$ \PTxInfo s
tx ->
Term
s
(PDatumHash
:--> (PMap 'Unsorted PDatumHash PDatum :--> PMaybe PDatum))
forall (k :: S -> Type) (v :: S -> Type) (any :: KeyGuarantees)
(s :: S).
(PIsData k, PIsData v) =>
Term s (k :--> (PMap any k v :--> PMaybe v))
AssocMap.plookup Term
s
(PDatumHash
:--> (PMap 'Unsorted PDatumHash PDatum :--> PMaybe PDatum))
-> Term s PDatumHash
-> Term s (PMap 'Unsorted PDatumHash PDatum :--> PMaybe PDatum)
forall (s :: S) (a :: S -> Type) (b :: S -> Type).
Term s (a :--> b) -> Term s a -> Term s b
# Term s PDatumHash
dh Term s (PMap 'Unsorted PDatumHash PDatum :--> PMaybe PDatum)
-> Term s (PMap 'Unsorted PDatumHash PDatum)
-> Term s (PMaybe PDatum)
forall (s :: S) (a :: S -> Type) (b :: S -> Type).
Term s (a :--> b) -> Term s a -> Term s b
# Term s (PAsData (PMap 'Unsorted PDatumHash PDatum))
-> Term s (PMap 'Unsorted PDatumHash PDatum)
forall (a :: S -> Type) (s :: S).
PIsData a =>
Term s (PAsData a) -> Term s a
pfromData (PTxInfo s -> Term s (PAsData (PMap 'Unsorted PDatumHash PDatum))
forall (s :: S).
PTxInfo s -> Term s (PAsData (PMap 'Unsorted PDatumHash PDatum))
ptxInfo'data PTxInfo s
tx)
pfindDatumHash ::
forall (s :: S).
Term s (PDatum :--> PTxInfo :--> PMaybe PDatumHash)
pfindDatumHash :: forall (s :: S).
Term s (PDatum :--> (PTxInfo :--> PMaybe PDatumHash))
pfindDatumHash = (forall (s :: S).
Term s (PDatum :--> (PTxInfo :--> PMaybe PDatumHash)))
-> Term s (PDatum :--> (PTxInfo :--> PMaybe PDatumHash))
forall (a :: S -> Type) (s :: S).
HasCallStack =>
ClosedTerm a -> Term s a
phoistAcyclic ((forall (s :: S).
Term s (PDatum :--> (PTxInfo :--> PMaybe PDatumHash)))
-> Term s (PDatum :--> (PTxInfo :--> PMaybe PDatumHash)))
-> (forall (s :: S).
Term s (PDatum :--> (PTxInfo :--> PMaybe PDatumHash)))
-> Term s (PDatum :--> (PTxInfo :--> PMaybe PDatumHash))
forall a b. (a -> b) -> a -> b
$ (Term s PDatum -> Term s PTxInfo -> Term s (PMaybe PDatumHash))
-> Term s (PDatum :--> (PTxInfo :--> PMaybe PDatumHash))
forall a (b :: S -> Type) (s :: S) (c :: S -> Type).
(PLamN a b s, HasCallStack) =>
(Term s c -> a) -> Term s (c :--> b)
forall (c :: S -> Type).
HasCallStack =>
(Term s c -> Term s PTxInfo -> Term s (PMaybe PDatumHash))
-> Term s (c :--> (PTxInfo :--> PMaybe PDatumHash))
plam ((Term s PDatum -> Term s PTxInfo -> Term s (PMaybe PDatumHash))
-> Term s (PDatum :--> (PTxInfo :--> PMaybe PDatumHash)))
-> (Term s PDatum -> Term s PTxInfo -> Term s (PMaybe PDatumHash))
-> Term s (PDatum :--> (PTxInfo :--> PMaybe PDatumHash))
forall a b. (a -> b) -> a -> b
$ \Term s PDatum
d Term s PTxInfo
txI ->
Term s PTxInfo
-> (PTxInfo s -> Term s (PMaybe PDatumHash))
-> Term s (PMaybe PDatumHash)
forall (a :: S -> Type) (s :: S) (b :: S -> Type).
PlutusType a =>
Term s a -> (a s -> Term s b) -> Term s b
pmatch Term s PTxInfo
txI ((PTxInfo s -> Term s (PMaybe PDatumHash))
-> Term s (PMaybe PDatumHash))
-> (PTxInfo s -> Term s (PMaybe PDatumHash))
-> Term s (PMaybe PDatumHash)
forall a b. (a -> b) -> a -> b
$ \PTxInfo s
tx ->
Term s (PMap 'Unsorted PDatumHash PDatum)
-> (PMap 'Unsorted PDatumHash PDatum s
-> Term s (PMaybe PDatumHash))
-> Term s (PMaybe PDatumHash)
forall (a :: S -> Type) (s :: S) (b :: S -> Type).
PlutusType a =>
Term s a -> (a s -> Term s b) -> Term s b
pmatch (Term s (PAsData (PMap 'Unsorted PDatumHash PDatum))
-> Term s (PMap 'Unsorted PDatumHash PDatum)
forall (a :: S -> Type) (s :: S).
PIsData a =>
Term s (PAsData a) -> Term s a
pfromData (PTxInfo s -> Term s (PAsData (PMap 'Unsorted PDatumHash PDatum))
forall (s :: S).
PTxInfo s -> Term s (PAsData (PMap 'Unsorted PDatumHash PDatum))
ptxInfo'data PTxInfo s
tx)) ((PMap 'Unsorted PDatumHash PDatum s -> Term s (PMaybe PDatumHash))
-> Term s (PMaybe PDatumHash))
-> (PMap 'Unsorted PDatumHash PDatum s
-> Term s (PMaybe PDatumHash))
-> Term s (PMaybe PDatumHash)
forall a b. (a -> b) -> a -> b
$ \(AssocMap.PMap Term
s
(PBuiltinList (PBuiltinPair (PAsData PDatumHash) (PAsData PDatum)))
ell) ->
Term
s (PMaybe (PBuiltinPair (PAsData PDatumHash) (PAsData PDatum)))
-> (PMaybe (PBuiltinPair (PAsData PDatumHash) (PAsData PDatum)) s
-> Term s (PMaybe PDatumHash))
-> Term s (PMaybe PDatumHash)
forall (a :: S -> Type) (s :: S) (b :: S -> Type).
PlutusType a =>
Term s a -> (a s -> Term s b) -> Term s b
pmatch (Term
s
((PBuiltinPair (PAsData PDatumHash) (PAsData PDatum) :--> PBool)
:--> (PBuiltinList
(PBuiltinPair (PAsData PDatumHash) (PAsData PDatum))
:--> PMaybe (PBuiltinPair (PAsData PDatumHash) (PAsData PDatum))))
forall (l :: (S -> Type) -> S -> Type) (a :: S -> Type) (s :: S).
PIsListLike l a =>
Term s ((a :--> PBool) :--> (l a :--> PMaybe a))
pfind Term
s
((PBuiltinPair (PAsData PDatumHash) (PAsData PDatum) :--> PBool)
:--> (PBuiltinList
(PBuiltinPair (PAsData PDatumHash) (PAsData PDatum))
:--> PMaybe (PBuiltinPair (PAsData PDatumHash) (PAsData PDatum))))
-> Term
s (PBuiltinPair (PAsData PDatumHash) (PAsData PDatum) :--> PBool)
-> Term
s
(PBuiltinList (PBuiltinPair (PAsData PDatumHash) (PAsData PDatum))
:--> PMaybe (PBuiltinPair (PAsData PDatumHash) (PAsData PDatum)))
forall (s :: S) (a :: S -> Type) (b :: S -> Type).
Term s (a :--> b) -> Term s a -> Term s b
# (Term
s
(PDatum
:--> (PBuiltinPair (PAsData PDatumHash) (PAsData PDatum)
:--> PBool))
forall (s' :: S).
Term
s'
(PDatum
:--> (PBuiltinPair (PAsData PDatumHash) (PAsData PDatum)
:--> PBool))
matches Term
s
(PDatum
:--> (PBuiltinPair (PAsData PDatumHash) (PAsData PDatum)
:--> PBool))
-> Term s PDatum
-> Term
s (PBuiltinPair (PAsData PDatumHash) (PAsData PDatum) :--> PBool)
forall (s :: S) (a :: S -> Type) (b :: S -> Type).
Term s (a :--> b) -> Term s a -> Term s b
# Term s PDatum
d) Term
s
(PBuiltinList (PBuiltinPair (PAsData PDatumHash) (PAsData PDatum))
:--> PMaybe (PBuiltinPair (PAsData PDatumHash) (PAsData PDatum)))
-> Term
s
(PBuiltinList (PBuiltinPair (PAsData PDatumHash) (PAsData PDatum)))
-> Term
s (PMaybe (PBuiltinPair (PAsData PDatumHash) (PAsData PDatum)))
forall (s :: S) (a :: S -> Type) (b :: S -> Type).
Term s (a :--> b) -> Term s a -> Term s b
# Term
s
(PBuiltinList (PBuiltinPair (PAsData PDatumHash) (PAsData PDatum)))
ell) ((PMaybe (PBuiltinPair (PAsData PDatumHash) (PAsData PDatum)) s
-> Term s (PMaybe PDatumHash))
-> Term s (PMaybe PDatumHash))
-> (PMaybe (PBuiltinPair (PAsData PDatumHash) (PAsData PDatum)) s
-> Term s (PMaybe PDatumHash))
-> Term s (PMaybe PDatumHash)
forall a b. (a -> b) -> a -> b
$ \case
PMaybe (PBuiltinPair (PAsData PDatumHash) (PAsData PDatum)) s
PNothing -> PMaybe PDatumHash s -> Term s (PMaybe PDatumHash)
forall (a :: S -> Type) (s :: S). PlutusType a => a s -> Term s a
pcon PMaybe PDatumHash s
forall (a :: S -> Type) (s :: S). PMaybe a s
PNothing
PJust Term s (PBuiltinPair (PAsData PDatumHash) (PAsData PDatum))
p -> PMaybe PDatumHash s -> Term s (PMaybe PDatumHash)
forall (a :: S -> Type) (s :: S). PlutusType a => a s -> Term s a
pcon (PMaybe PDatumHash s -> Term s (PMaybe PDatumHash))
-> (Term s (PAsData PDatumHash) -> PMaybe PDatumHash s)
-> Term s (PAsData PDatumHash)
-> Term s (PMaybe PDatumHash)
forall b c a. (b -> c) -> (a -> b) -> a -> c
. Term s PDatumHash -> PMaybe PDatumHash s
forall (a :: S -> Type) (s :: S). Term s a -> PMaybe a s
PJust (Term s PDatumHash -> PMaybe PDatumHash s)
-> (Term s (PAsData PDatumHash) -> Term s PDatumHash)
-> Term s (PAsData PDatumHash)
-> PMaybe PDatumHash s
forall b c a. (b -> c) -> (a -> b) -> a -> c
. Term s (PAsData PDatumHash) -> Term s PDatumHash
forall (a :: S -> Type) (s :: S).
PIsData a =>
Term s (PAsData a) -> Term s a
pfromData (Term s (PAsData PDatumHash) -> Term s (PMaybe PDatumHash))
-> Term s (PAsData PDatumHash) -> Term s (PMaybe PDatumHash)
forall a b. (a -> b) -> a -> b
$ Term
s
(PBuiltinPair (PAsData PDatumHash) (PAsData PDatum)
:--> PAsData PDatumHash)
forall (s :: S) (a :: S -> Type) (b :: S -> Type).
Term s (PBuiltinPair a b :--> a)
pfstBuiltin Term
s
(PBuiltinPair (PAsData PDatumHash) (PAsData PDatum)
:--> PAsData PDatumHash)
-> Term s (PBuiltinPair (PAsData PDatumHash) (PAsData PDatum))
-> Term s (PAsData PDatumHash)
forall (s :: S) (a :: S -> Type) (b :: S -> Type).
Term s (a :--> b) -> Term s a -> Term s b
# Term s (PBuiltinPair (PAsData PDatumHash) (PAsData PDatum))
p
where
matches ::
forall (s' :: S).
Term
s'
( PDatum
:--> PBuiltinPair (PAsData PDatumHash) (PAsData PDatum)
:--> PBool
)
matches :: forall (s' :: S).
Term
s'
(PDatum
:--> (PBuiltinPair (PAsData PDatumHash) (PAsData PDatum)
:--> PBool))
matches = (forall (s' :: S).
Term
s'
(PDatum
:--> (PBuiltinPair (PAsData PDatumHash) (PAsData PDatum)
:--> PBool)))
-> Term
s'
(PDatum
:--> (PBuiltinPair (PAsData PDatumHash) (PAsData PDatum)
:--> PBool))
forall (a :: S -> Type) (s :: S).
HasCallStack =>
ClosedTerm a -> Term s a
phoistAcyclic ((forall (s' :: S).
Term
s'
(PDatum
:--> (PBuiltinPair (PAsData PDatumHash) (PAsData PDatum)
:--> PBool)))
-> Term
s'
(PDatum
:--> (PBuiltinPair (PAsData PDatumHash) (PAsData PDatum)
:--> PBool)))
-> (forall (s' :: S).
Term
s'
(PDatum
:--> (PBuiltinPair (PAsData PDatumHash) (PAsData PDatum)
:--> PBool)))
-> Term
s'
(PDatum
:--> (PBuiltinPair (PAsData PDatumHash) (PAsData PDatum)
:--> PBool))
forall a b. (a -> b) -> a -> b
$ (Term s PDatum
-> Term s (PBuiltinPair (PAsData PDatumHash) (PAsData PDatum))
-> Term s PBool)
-> Term
s
(PDatum
:--> (PBuiltinPair (PAsData PDatumHash) (PAsData PDatum)
:--> PBool))
forall a (b :: S -> Type) (s :: S) (c :: S -> Type).
(PLamN a b s, HasCallStack) =>
(Term s c -> a) -> Term s (c :--> b)
forall (c :: S -> Type).
HasCallStack =>
(Term s c
-> Term s (PBuiltinPair (PAsData PDatumHash) (PAsData PDatum))
-> Term s PBool)
-> Term
s
(c
:--> (PBuiltinPair (PAsData PDatumHash) (PAsData PDatum)
:--> PBool))
plam ((Term s PDatum
-> Term s (PBuiltinPair (PAsData PDatumHash) (PAsData PDatum))
-> Term s PBool)
-> Term
s
(PDatum
:--> (PBuiltinPair (PAsData PDatumHash) (PAsData PDatum)
:--> PBool)))
-> (Term s PDatum
-> Term s (PBuiltinPair (PAsData PDatumHash) (PAsData PDatum))
-> Term s PBool)
-> Term
s
(PDatum
:--> (PBuiltinPair (PAsData PDatumHash) (PAsData PDatum)
:--> PBool))
forall a b. (a -> b) -> a -> b
$ \Term s PDatum
needle Term s (PBuiltinPair (PAsData PDatumHash) (PAsData PDatum))
p ->
Term s PDatum
needle Term s PDatum -> Term s PDatum -> Term s PBool
forall (s :: S). Term s PDatum -> Term s PDatum -> Term s PBool
forall (t :: S -> Type) (s :: S).
PEq t =>
Term s t -> Term s t -> Term s PBool
#== Term s (PAsData PDatum) -> Term s PDatum
forall (a :: S -> Type) (s :: S).
PIsData a =>
Term s (PAsData a) -> Term s a
pfromData (Term
s
(PBuiltinPair (PAsData PDatumHash) (PAsData PDatum)
:--> PAsData PDatum)
forall (s :: S) (a :: S -> Type) (b :: S -> Type).
Term s (PBuiltinPair a b :--> b)
psndBuiltin Term
s
(PBuiltinPair (PAsData PDatumHash) (PAsData PDatum)
:--> PAsData PDatum)
-> Term s (PBuiltinPair (PAsData PDatumHash) (PAsData PDatum))
-> Term s (PAsData PDatum)
forall (s :: S) (a :: S -> Type) (b :: S -> Type).
Term s (a :--> b) -> Term s a -> Term s b
# Term s (PBuiltinPair (PAsData PDatumHash) (PAsData PDatum))
p)