| Safe Haskell | None |
|---|---|
| Language | GHC2021 |
Plutarch.Internal.PlutusType
Synopsis
- class PlutusType (a :: S -> Type)
- type PInnermost (a :: S -> Type) = PInnermost' (PInner a) a
- type family PlutusTypeStratConstraint strategy :: (S -> Type) -> Constraint
- pcon' :: forall (s :: S). PlutusType a => a s -> Term s (PInner a)
- pmatch' :: forall (s :: S) (b :: S -> Type). PlutusType a => Term s (PInner a) -> (a s -> Term s b) -> Term s b
- pmatch :: forall a (s :: S) (b :: S -> Type). PlutusType a => Term s a -> (a s -> Term s b) -> Term s b
- pcon :: forall a (s :: S). PlutusType a => a s -> Term s a
- type family PInner (a :: S -> Type) :: S -> Type
- class PlutusTypeStrat strategy
- class (PInner a ~ DerivedPInner (DPTStrat a) a, PlutusTypeStrat (DPTStrat a), PlutusTypeStratConstraint (DPTStrat a) a, PlutusType a) => DerivePlutusType (a :: S -> Type)
- type family DPTStrat (a :: S -> Type)
- type family DerivedPInner strategy (a :: S -> Type) :: S -> Type
- derivedPCon :: forall a (s :: S). (PlutusTypeStrat strategy, DerivePlutusType a, DPTStrat a ~ strategy) => a s -> Term s (DerivedPInner strategy a)
- derivedPMatch :: forall a (s :: S) (b :: S -> Type). (PlutusTypeStrat strategy, DerivePlutusType a, DPTStrat a ~ strategy) => Term s (DerivedPInner strategy a) -> (a s -> Term s b) -> Term s b
- newtype DeriveNewtypePlutusType (a :: S -> Type) (s :: S) = DeriveNewtypePlutusType {
- unDeriveNewtypePlutusType :: a s
- newtype DeriveFakePlutusType (a :: S -> Type) (s :: S) = DeriveFakePlutusType (a s)
Documentation
class PlutusType (a :: S -> Type) Source #
Instances
| PlutusType PBitString Source # | |||||
Defined in Plutarch.BitString Associated Types
Methods pcon' :: forall (s :: S). PBitString s -> Term s (PInner PBitString) Source # pmatch' :: forall (s :: S) (b :: S -> Type). Term s (PInner PBitString) -> (PBitString s -> Term s b) -> Term s b Source # | |||||
| PlutusType PBuiltinBLS12_381_G1_Element Source # | |||||
Defined in Plutarch.Internal.PlutusType Associated Types
Methods pcon' :: forall (s :: S). PBuiltinBLS12_381_G1_Element s -> Term s (PInner PBuiltinBLS12_381_G1_Element) Source # pmatch' :: forall (s :: S) (b :: S -> Type). Term s (PInner PBuiltinBLS12_381_G1_Element) -> (PBuiltinBLS12_381_G1_Element s -> Term s b) -> Term s b Source # | |||||
| PlutusType PBuiltinBLS12_381_G2_Element Source # | |||||
Defined in Plutarch.Internal.PlutusType Associated Types
Methods pcon' :: forall (s :: S). PBuiltinBLS12_381_G2_Element s -> Term s (PInner PBuiltinBLS12_381_G2_Element) Source # pmatch' :: forall (s :: S) (b :: S -> Type). Term s (PInner PBuiltinBLS12_381_G2_Element) -> (PBuiltinBLS12_381_G2_Element s -> Term s b) -> Term s b Source # | |||||
| PlutusType PBuiltinBLS12_381_MlResult Source # | |||||
Defined in Plutarch.Internal.PlutusType Associated Types
Methods pcon' :: forall (s :: S). PBuiltinBLS12_381_MlResult s -> Term s (PInner PBuiltinBLS12_381_MlResult) Source # pmatch' :: forall (s :: S) (b :: S -> Type). Term s (PInner PBuiltinBLS12_381_MlResult) -> (PBuiltinBLS12_381_MlResult s -> Term s b) -> Term s b Source # | |||||
| PlutusType PBool Source # | Since: 1.10.0 | ||||
Defined in Plutarch.Internal.PlutusType Associated Types
| |||||
| PlutusType PByte Source # | |||||
Defined in Plutarch.Internal.PlutusType Associated Types
| |||||
| PlutusType PByteString Source # | |||||
Defined in Plutarch.Internal.PlutusType Associated Types
Methods pcon' :: forall (s :: S). PByteString s -> Term s (PInner PByteString) Source # pmatch' :: forall (s :: S) (b :: S -> Type). Term s (PInner PByteString) -> (PByteString s -> Term s b) -> Term s b Source # | |||||
| PlutusType PEndianness Source # | |||||
Defined in Plutarch.Internal.PlutusType Associated Types
Methods pcon' :: forall (s :: S). PEndianness s -> Term s (PInner PEndianness) Source # pmatch' :: forall (s :: S) (b :: S -> Type). Term s (PInner PEndianness) -> (PEndianness s -> Term s b) -> Term s b Source # | |||||
| PlutusType PLogicOpSemantics Source # | |||||
Defined in Plutarch.Internal.PlutusType Associated Types
Methods pcon' :: forall (s :: S). PLogicOpSemantics s -> Term s (PInner PLogicOpSemantics) Source # pmatch' :: forall (s :: S) (b :: S -> Type). Term s (PInner PLogicOpSemantics) -> (PLogicOpSemantics s -> Term s b) -> Term s b Source # | |||||
| PlutusType PData Source # | |||||
Defined in Plutarch.Internal.PlutusType Associated Types
| |||||
| PlutusType PInteger Source # | |||||
Defined in Plutarch.Internal.PlutusType Associated Types
| |||||
| PlutusType POpaque Source # | |||||
Defined in Plutarch.Internal.PlutusType Associated Types
| |||||
| PlutusType PString Source # | |||||
Defined in Plutarch.Internal.PlutusType Associated Types
| |||||
| PlutusType PUnit Source # | |||||
Defined in Plutarch.Internal.PlutusType Associated Types
| |||||
| PlutusType PNatural Source # | |||||
Defined in Plutarch.Internal.Numeric Associated Types
| |||||
| PlutusType PPositive Source # | |||||
Defined in Plutarch.Internal.Numeric Associated Types
| |||||
| PlutusType PRational Source # | |||||
Defined in Plutarch.Rational Associated Types
| |||||
| PlutusType (PPullArray a) Source # | Since: 1.13.0 | ||||
Defined in Plutarch.Array Associated Types
Methods pcon' :: forall (s :: S). PPullArray a s -> Term s (PInner (PPullArray a)) Source # pmatch' :: forall (s :: S) (b :: S -> Type). Term s (PInner (PPullArray a)) -> (PPullArray a s -> Term s b) -> Term s b Source # | |||||
| PlutusType (PArray a) Source # | Since: 1.11.0 | ||||
Defined in Plutarch.Internal.PlutusType Associated Types
| |||||
| PIsData a => PlutusType (PAsData a) Source # | |||||
Defined in Plutarch.Internal.PlutusType Associated Types
| |||||
| Contains DefaultUni (PlutusRepr a) => PlutusType (PBuiltinList a) Source # | |||||
Defined in Plutarch.Internal.PlutusType Associated Types
Methods pcon' :: forall (s :: S). PBuiltinList a s -> Term s (PInner (PBuiltinList a)) Source # pmatch' :: forall (s :: S) (b :: S -> Type). Term s (PInner (PBuiltinList a)) -> (PBuiltinList a s -> Term s b) -> Term s b Source # | |||||
| SListI l => PlutusType (PDataRecord l) Source # | |||||
Defined in Plutarch.DataRepr.Internal Associated Types
Methods pcon' :: forall (s :: S). PDataRecord l s -> Term s (PInner (PDataRecord l)) Source # pmatch' :: forall (s :: S) (b :: S -> Type). Term s (PInner (PDataRecord l)) -> (PDataRecord l s -> Term s b) -> Term s b Source # | |||||
| SListI defs => PlutusType (PDataSum defs) Source # | |||||
Defined in Plutarch.DataRepr.Internal Associated Types
| |||||
| PlutusType a => PlutusType (Don'tValidate a) Source # | Since: 1.12.0 | ||||
Defined in Plutarch.Internal.Parse Associated Types
Methods pcon' :: forall (s :: S). Don'tValidate a s -> Term s (PInner (Don'tValidate a)) Source # pmatch' :: forall (s :: S) (b :: S -> Type). Term s (PInner (Don'tValidate a)) -> (Don'tValidate a s -> Term s b) -> Term s b Source # | |||||
| PlutusType (DeriveFakePlutusType a) Source # | |||||
Defined in Plutarch.Internal.PlutusType Associated Types
Methods pcon' :: forall (s :: S). DeriveFakePlutusType a s -> Term s (PInner (DeriveFakePlutusType a)) Source # pmatch' :: forall (s :: S) (b :: S -> Type). Term s (PInner (DeriveFakePlutusType a)) -> (DeriveFakePlutusType a s -> Term s b) -> Term s b Source # | |||||
| (pt ~ UnTermSingle (Head (Head (Code (a (Any :: S))))), forall (s :: S). H s a pt) => PlutusType (DeriveNewtypePlutusType a) Source # | |||||
Defined in Plutarch.Internal.PlutusType Associated Types
Methods pcon' :: forall (s :: S). DeriveNewtypePlutusType a s -> Term s (PInner (DeriveNewtypePlutusType a)) Source # pmatch' :: forall (s :: S) (b :: S -> Type). Term s (PInner (DeriveNewtypePlutusType a)) -> (DeriveNewtypePlutusType a s -> Term s b) -> Term s b Source # | |||||
| PlutusType (PFix f) Source # | |||||
Defined in Plutarch.Internal.PlutusType Associated Types
| |||||
| PlutusType (PAnd a) Source # | |||||
Defined in Plutarch.Internal.Semigroup Associated Types
| |||||
| PlutusType (POr a) Source # | |||||
Defined in Plutarch.Internal.Semigroup Associated Types
| |||||
| PlutusType (PXor a) Source # | |||||
Defined in Plutarch.Internal.Semigroup Associated Types
| |||||
| PlutusType (PList a) Source # | |||||
Defined in Plutarch.List Associated Types
| |||||
| PlutusType (PMaybe a) Source # | |||||
Defined in Plutarch.Maybe Associated Types
| |||||
| (Generic (a (Any :: S)), '[struct'] ~ Code (a (Any :: S)), struct ~ UnTermRec struct', All PInnermostIsDataDataRepr struct, SListI struct, forall (s :: S). StructSameRepr s a '[struct], RecTypePrettyError (Code (a (Any :: S)))) => PlutusType (DeriveAsDataRec a) Source # | Since: 1.10.0 | ||||
Defined in Plutarch.Repr.Data Associated Types
Methods pcon' :: forall (s :: S). DeriveAsDataRec a s -> Term s (PInner (DeriveAsDataRec a)) Source # pmatch' :: forall (s :: S) (b :: S -> Type). Term s (PInner (DeriveAsDataRec a)) -> (DeriveAsDataRec a s -> Term s b) -> Term s b Source # | |||||
| (Generic (a (Any :: S)), struct ~ UnTermStruct (a (Any :: S)), All2 PInnermostIsDataDataRepr struct, SListI2 struct, forall (s :: S). StructSameRepr s a struct) => PlutusType (DeriveAsDataStruct a) Source # | Since: 1.10.0 | ||||
Defined in Plutarch.Repr.Data Associated Types
Methods pcon' :: forall (s :: S). DeriveAsDataStruct a s -> Term s (PInner (DeriveAsDataStruct a)) Source # pmatch' :: forall (s :: S) (b :: S -> Type). Term s (PInner (DeriveAsDataStruct a)) -> (DeriveAsDataStruct a s -> Term s b) -> Term s b Source # | |||||
| (SListI struct, All PInnermostIsDataDataRepr struct) => PlutusType (PDataRec struct) Source # | Since: 1.10.0 | ||||
Defined in Plutarch.Repr.Data Associated Types
| |||||
| (SListI2 struct, All2 PInnermostIsDataDataRepr struct) => PlutusType (PDataStruct struct) Source # | Since: 1.10.0 | ||||
Defined in Plutarch.Repr.Data Associated Types
Methods pcon' :: forall (s :: S). PDataStruct struct s -> Term s (PInner (PDataStruct struct)) Source # pmatch' :: forall (s :: S) (b :: S -> Type). Term s (PInner (PDataStruct struct)) -> (PDataStruct struct s -> Term s b) -> Term s b Source # | |||||
| (Generic (a (Any :: S)), '[struct'] ~ Code (a (Any :: S)), struct ~ UnTermRec struct', SListI struct, forall (s :: S). StructSameRepr s a '[struct], RecTypePrettyError (Code (a (Any :: S)))) => PlutusType (DeriveAsSOPRec a) Source # | Since: 1.10.0 | ||||
Defined in Plutarch.Repr.SOP Associated Types
Methods pcon' :: forall (s :: S). DeriveAsSOPRec a s -> Term s (PInner (DeriveAsSOPRec a)) Source # pmatch' :: forall (s :: S) (b :: S -> Type). Term s (PInner (DeriveAsSOPRec a)) -> (DeriveAsSOPRec a s -> Term s b) -> Term s b Source # | |||||
| (Generic (a (Any :: S)), struct ~ UnTermStruct (a (Any :: S)), SListI2 struct, forall (s :: S). StructSameRepr s a struct, PSOPStructConstraint struct) => PlutusType (DeriveAsSOPStruct a) Source # | Since: 1.10.0 | ||||
Defined in Plutarch.Repr.SOP Associated Types
Methods pcon' :: forall (s :: S). DeriveAsSOPStruct a s -> Term s (PInner (DeriveAsSOPStruct a)) Source # pmatch' :: forall (s :: S) (b :: S -> Type). Term s (PInner (DeriveAsSOPStruct a)) -> (DeriveAsSOPStruct a s -> Term s b) -> Term s b Source # | |||||
| SListI struct => PlutusType (PSOPRec struct) Source # | Since: 1.10.0 | ||||
Defined in Plutarch.Repr.SOP Associated Types
| |||||
| (SListI2 struct, PSOPStructConstraint struct) => PlutusType (PSOPStruct struct) Source # | Since: 1.10.0 | ||||
Defined in Plutarch.Repr.SOP Associated Types
Methods pcon' :: forall (s :: S). PSOPStruct struct s -> Term s (PInner (PSOPStruct struct)) Source # pmatch' :: forall (s :: S) (b :: S -> Type). Term s (PInner (PSOPStruct struct)) -> (PSOPStruct struct s -> Term s b) -> Term s b Source # | |||||
| (Generic (a (Any :: S)), '[struct'] ~ Code (a (Any :: S)), struct ~ UnTermRec struct', SListI struct, forall (s :: S). StructSameRepr s a '[struct], RecTypePrettyError (Code (a (Any :: S)))) => PlutusType (DeriveAsScottRec a) Source # | Since: 1.10.0 | ||||
Defined in Plutarch.Repr.Scott Associated Types
Methods pcon' :: forall (s :: S). DeriveAsScottRec a s -> Term s (PInner (DeriveAsScottRec a)) Source # pmatch' :: forall (s :: S) (b :: S -> Type). Term s (PInner (DeriveAsScottRec a)) -> (DeriveAsScottRec a s -> Term s b) -> Term s b Source # | |||||
| (Generic (a (Any :: S)), struct ~ UnTermStruct (a (Any :: S)), SListI2 struct, forall (s :: S). StructSameRepr s a struct, PScottStructConstraint struct) => PlutusType (DeriveAsScottStruct a) Source # | Since: 1.10.0 | ||||
Defined in Plutarch.Repr.Scott Associated Types
Methods pcon' :: forall (s :: S). DeriveAsScottStruct a s -> Term s (PInner (DeriveAsScottStruct a)) Source # pmatch' :: forall (s :: S) (b :: S -> Type). Term s (PInner (DeriveAsScottStruct a)) -> (DeriveAsScottStruct a s -> Term s b) -> Term s b Source # | |||||
| SListI struct => PlutusType (PScottRec struct) Source # | Since: 1.10.0 | ||||
Defined in Plutarch.Repr.Scott Associated Types
| |||||
| (SListI2 struct, PScottStructConstraint struct) => PlutusType (PScottStruct struct) Source # | Since: 1.10.0 | ||||
Defined in Plutarch.Repr.Scott Associated Types
Methods pcon' :: forall (s :: S). PScottStruct struct s -> Term s (PInner (PScottStruct struct)) Source # pmatch' :: forall (s :: S) (b :: S -> Type). Term s (PInner (PScottStruct struct)) -> (PScottStruct struct s -> Term s b) -> Term s b Source # | |||||
| (forall (s :: S). TagTypeConstraints s a struct) => PlutusType (DeriveAsTag a) Source # | This derives tag-only PlutusType automatically. Resulted instances will use Example: @@ data PFoo s = A | B | C | D | E deriving stock (GHC.Generic, Show) deriving anyclass (PEq, PIsData) deriving (PlutusType, PLiftable) via DeriveAsTag PFoo instance SOP.Generic (PFoo s) @@ Since: 1.10.0 | ||||
Defined in Plutarch.Repr.Tag Associated Types
Methods pcon' :: forall (s :: S). DeriveAsTag a s -> Term s (PInner (DeriveAsTag a)) Source # pmatch' :: forall (s :: S) (b :: S -> Type). Term s (PInner (DeriveAsTag a)) -> (DeriveAsTag a s -> Term s b) -> Term s b Source # | |||||
| PlutusType (PTag struct) Source # | |||||
Defined in Plutarch.Repr.Tag Associated Types
| |||||
| PlutusType (PBuiltinPair a b) Source # | Important noteDue to some weirdnesses regarding builtins, Since: 1.12.0 | ||||
Defined in Plutarch.Internal.PlutusType Associated Types
Methods pcon' :: forall (s :: S). PBuiltinPair a b s -> Term s (PInner (PBuiltinPair a b)) Source # pmatch' :: forall (s :: S) (b0 :: S -> Type). Term s (PInner (PBuiltinPair a b)) -> (PBuiltinPair a b s -> Term s b0) -> Term s b0 Source # | |||||
| PlutusType (PEither a b) Source # | |||||
Defined in Plutarch.Either Associated Types
| |||||
| PlutusType (PEitherData a b) Source # | Since: 1.10.0 | ||||
Defined in Plutarch.Either Associated Types
Methods pcon' :: forall (s :: S). PEitherData a b s -> Term s (PInner (PEitherData a b)) Source # pmatch' :: forall (s :: S) (b0 :: S -> Type). Term s (PInner (PEitherData a b)) -> (PEitherData a b s -> Term s b0) -> Term s b0 Source # | |||||
| PlutusType (DeriveBuiltinPLiftable a h) Source # | |||||
Defined in Plutarch.Internal.Lift Associated Types
Methods pcon' :: forall (s :: S). DeriveBuiltinPLiftable a h s -> Term s (PInner (DeriveBuiltinPLiftable a h)) Source # pmatch' :: forall (s :: S) (b :: S -> Type). Term s (PInner (DeriveBuiltinPLiftable a h)) -> (DeriveBuiltinPLiftable a h s -> Term s b) -> Term s b Source # | |||||
| PlutusType (DeriveDataPLiftable a h) Source # | |||||
Defined in Plutarch.Internal.Lift Associated Types
Methods pcon' :: forall (s :: S). DeriveDataPLiftable a h s -> Term s (PInner (DeriveDataPLiftable a h)) Source # pmatch' :: forall (s :: S) (b :: S -> Type). Term s (PInner (DeriveDataPLiftable a h)) -> (DeriveDataPLiftable a h s -> Term s b) -> Term s b Source # | |||||
| PlutusType (DeriveNewtypePLiftable wrapper h) Source # | |||||
Defined in Plutarch.Internal.Lift Associated Types
Methods pcon' :: forall (s :: S). DeriveNewtypePLiftable wrapper h s -> Term s (PInner (DeriveNewtypePLiftable wrapper h)) Source # pmatch' :: forall (s :: S) (b :: S -> Type). Term s (PInner (DeriveNewtypePLiftable wrapper h)) -> (DeriveNewtypePLiftable wrapper h s -> Term s b) -> Term s b Source # | |||||
| PlutusType (PForall f) Source # | |||||
Defined in Plutarch.Internal.PlutusType Associated Types
| |||||
| PlutusType (PSome f) Source # | |||||
Defined in Plutarch.Internal.PlutusType Associated Types
| |||||
| PlutusType (PScottEncoded a r) Source # | |||||
Defined in Plutarch.Internal.ScottEncoding Associated Types
Methods pcon' :: forall (s :: S). PScottEncoded a r s -> Term s (PInner (PScottEncoded a r)) Source # pmatch' :: forall (s :: S) (b :: S -> Type). Term s (PInner (PScottEncoded a r)) -> (PScottEncoded a r s -> Term s b) -> Term s b Source # | |||||
| PlutusType (a :--> b) Source # | |||||
Defined in Plutarch.Internal.PlutusType Associated Types
| |||||
| PlutusType (PPair a b) Source # | |||||
Defined in Plutarch.Pair Associated Types
| |||||
| PlutusType (DerivePLiftableAsRepr wrapper h) Source # | |||||
Defined in Plutarch.Repr.Derive Associated Types
Methods pcon' :: forall (s :: S). DerivePLiftableAsRepr wrapper h s -> Term s (PInner (DerivePLiftableAsRepr wrapper h)) Source # pmatch' :: forall (s :: S) (b :: S -> Type). Term s (PInner (DerivePLiftableAsRepr wrapper h)) -> (DerivePLiftableAsRepr wrapper h s -> Term s b) -> Term s b Source # | |||||
type family PlutusTypeStratConstraint strategy :: (S -> Type) -> Constraint Source #
Instances
| type PlutusTypeStratConstraint PlutusTypeData Source # | |
Defined in Plutarch.DataRepr.Internal | |
| type PlutusTypeStratConstraint PlutusTypeNewtype Source # | |
Defined in Plutarch.Internal.Newtype | |
| type PlutusTypeStratConstraint PlutusTypeScott Source # | |
Defined in Plutarch.Internal.ScottEncoding | |
pmatch' :: forall (s :: S) (b :: S -> Type). PlutusType a => Term s (PInner a) -> (a s -> Term s b) -> Term s b Source #
pmatch :: forall a (s :: S) (b :: S -> Type). PlutusType a => Term s a -> (a s -> Term s b) -> Term s b Source #
Pattern match over Plutarch Terms via a Haskell datatype
pcon :: forall a (s :: S). PlutusType a => a s -> Term s a Source #
Construct a Plutarch Term via a Haskell datatype
type family PInner (a :: S -> Type) :: S -> Type Source #
Instances
class PlutusTypeStrat strategy Source #
Deprecated: Use the new mechanisms instead
Minimal complete definition
Instances
class (PInner a ~ DerivedPInner (DPTStrat a) a, PlutusTypeStrat (DPTStrat a), PlutusTypeStratConstraint (DPTStrat a) a, PlutusType a) => DerivePlutusType (a :: S -> Type) Source #
Deprecated: Use the new mechanisms instead
type family DerivedPInner strategy (a :: S -> Type) :: S -> Type Source #
Instances
| type DerivedPInner PlutusTypeData a Source # | |
Defined in Plutarch.DataRepr.Internal | |
| type DerivedPInner PlutusTypeNewtype a Source # | |
Defined in Plutarch.Internal.Newtype | |
| type DerivedPInner PlutusTypeScott a Source # | |
Defined in Plutarch.Internal.ScottEncoding | |
derivedPCon :: forall a (s :: S). (PlutusTypeStrat strategy, DerivePlutusType a, DPTStrat a ~ strategy) => a s -> Term s (DerivedPInner strategy a) Source #
derivedPMatch :: forall a (s :: S) (b :: S -> Type). (PlutusTypeStrat strategy, DerivePlutusType a, DPTStrat a ~ strategy) => Term s (DerivedPInner strategy a) -> (a s -> Term s b) -> Term s b Source #
newtype DeriveNewtypePlutusType (a :: S -> Type) (s :: S) Source #
Since: 1.10.0
Constructors
| DeriveNewtypePlutusType | |
Fields
| |
Instances
| (pt ~ UnTermSingle (Head (Head (Code (a (Any :: S))))), forall (s :: S). H s a pt) => PlutusType (DeriveNewtypePlutusType a) Source # | |||||
Defined in Plutarch.Internal.PlutusType Associated Types
Methods pcon' :: forall (s :: S). DeriveNewtypePlutusType a s -> Term s (PInner (DeriveNewtypePlutusType a)) Source # pmatch' :: forall (s :: S) (b :: S -> Type). Term s (PInner (DeriveNewtypePlutusType a)) -> (DeriveNewtypePlutusType a s -> Term s b) -> Term s b Source # | |||||
| type PInner (DeriveNewtypePlutusType a) Source # | |||||
Defined in Plutarch.Internal.PlutusType | |||||
newtype DeriveFakePlutusType (a :: S -> Type) (s :: S) Source #
This is a cursed derivation strategy that will give you PlutusType with no questions asked. This is occasionally helpful
for deriving PlutusType for another derivation strategy wrapper whose target instance requires PlutusType as superclass.
See PLiftable
Constructors
| DeriveFakePlutusType (a s) |
Instances
| PlutusType (DeriveFakePlutusType a) Source # | |||||
Defined in Plutarch.Internal.PlutusType Associated Types
Methods pcon' :: forall (s :: S). DeriveFakePlutusType a s -> Term s (PInner (DeriveFakePlutusType a)) Source # pmatch' :: forall (s :: S) (b :: S -> Type). Term s (PInner (DeriveFakePlutusType a)) -> (DeriveFakePlutusType a s -> Term s b) -> Term s b Source # | |||||
| type PInner (DeriveFakePlutusType a) Source # | |||||
Defined in Plutarch.Internal.PlutusType | |||||