plutarch-1.9.0
Safe HaskellSafe-Inferred
LanguageGHC2021

Plutarch.Repr.Scott

Synopsis

Documentation

newtype PScottStruct (struct :: [[S -> Type]]) (s :: S) Source #

@since WIP

Constructors

PScottStruct 

Fields

Instances

Instances details
(PlutusType (PScottStruct struct), SListI2 struct, All2 PEq struct) => PEq (PScottStruct struct) Source #

@since WIP

Instance details

Defined in Plutarch.Repr.Scott

Methods

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

(SListI2 struct, PScottStructConstraint struct) => PlutusType (PScottStruct struct) Source #

@since WIP

Instance details

Defined in Plutarch.Repr.Scott

Associated Types

type PInner (PScottStruct struct) :: PType Source #

type PCovariant' (PScottStruct struct) Source #

type PContravariant' (PScottStruct struct) Source #

type PVariant' (PScottStruct struct) Source #

Methods

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

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

type PContravariant' (PScottStruct struct) Source # 
Instance details

Defined in Plutarch.Repr.Scott

type PContravariant' (PScottStruct struct) = All2 PContravariant'' struct
type PCovariant' (PScottStruct struct) Source # 
Instance details

Defined in Plutarch.Repr.Scott

type PCovariant' (PScottStruct struct) = All2 PCovariant'' struct
type PInner (PScottStruct struct) Source # 
Instance details

Defined in Plutarch.Repr.Scott

type PInner (PScottStruct struct) = PForall (PScottStructInner struct)
type PVariant' (PScottStruct struct) Source # 
Instance details

Defined in Plutarch.Repr.Scott

type PVariant' (PScottStruct struct) = All2 PVariant'' struct

newtype PScottRec (struct :: [S -> Type]) (s :: S) Source #

@since WIP

Constructors

PScottRec 

Fields

Instances

Instances details
All PEq struct => PEq (PScottRec struct) Source #

@since WIP

Instance details

Defined in Plutarch.Repr.Scott

Methods

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

SListI struct => PlutusType (PScottRec struct) Source #

@since WIP

Instance details

Defined in Plutarch.Repr.Scott

Associated Types

type PInner (PScottRec struct) :: PType Source #

type PCovariant' (PScottRec struct) Source #

type PContravariant' (PScottRec struct) Source #

type PVariant' (PScottRec struct) Source #

Methods

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

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

type PContravariant' (PScottRec struct) Source # 
Instance details

Defined in Plutarch.Repr.Scott

type PContravariant' (PScottRec struct) = All PContravariant'' struct
type PCovariant' (PScottRec struct) Source # 
Instance details

Defined in Plutarch.Repr.Scott

type PCovariant' (PScottRec struct) = All PCovariant'' struct
type PInner (PScottRec struct) Source # 
Instance details

Defined in Plutarch.Repr.Scott

type PInner (PScottRec struct) = PForall (PScottRecInner struct)
type PVariant' (PScottRec struct) Source # 
Instance details

Defined in Plutarch.Repr.Scott

type PVariant' (PScottRec struct) = All PVariant'' struct

newtype PScottStructInner a r s Source #

@since WIP

Constructors

PScottStructInner (Term s (ScottFn (ScottList a r) r)) 

newtype PScottRecInner a r s Source #

@since WIP

Constructors

PScottRecInner (Term s (ScottFn a r)) 

newtype DeriveAsScottStruct (a :: S -> Type) s Source #

@since WIP

Constructors

DeriveAsScottStruct 

Fields

Instances

Instances details
(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 WIP

Instance details

Defined in Plutarch.Repr.Scott

Methods

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

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

type PContravariant' (DeriveAsScottStruct a) Source # 
Instance details

Defined in Plutarch.Repr.Scott

type PCovariant' (DeriveAsScottStruct a) Source # 
Instance details

Defined in Plutarch.Repr.Scott

type PInner (DeriveAsScottStruct a) Source # 
Instance details

Defined in Plutarch.Repr.Scott

type PVariant' (DeriveAsScottStruct a) Source # 
Instance details

Defined in Plutarch.Repr.Scott

newtype DeriveAsScottRec (a :: S -> Type) s Source #

@since WIP

Constructors

DeriveAsScottRec 

Fields

Instances

Instances details
(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 WIP

Instance details

Defined in Plutarch.Repr.Scott

Methods

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

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

type PContravariant' (DeriveAsScottRec a) Source # 
Instance details

Defined in Plutarch.Repr.Scott

type PCovariant' (DeriveAsScottRec a) Source # 
Instance details

Defined in Plutarch.Repr.Scott

type PInner (DeriveAsScottRec a) Source # 
Instance details

Defined in Plutarch.Repr.Scott

type PInner (DeriveAsScottRec a) = PScottRec (UnTermRec (Head (Code (a (Any :: S)))))
type PVariant' (DeriveAsScottRec a) Source # 
Instance details

Defined in Plutarch.Repr.Scott