plutus-core-1.60.0.0: Language library for Plutus Core
Safe HaskellSafe-Inferred
LanguageHaskell2010

UntypedPlutusCore.MkUPlc

Synopsis

Documentation

data UVarDecl name ann #

An untyped "variable declaration", i.e. a name for a variable.

Constructors

UVarDecl 

Fields

Instances

Instances details
Functor (UVarDecl name) # 
Instance details

Defined in UntypedPlutusCore.Core.Type

Methods

fmap :: (a -> b) -> UVarDecl name a -> UVarDecl name b #

(<$) :: a -> UVarDecl name b -> UVarDecl name a #

Generic (UVarDecl name ann) # 
Instance details

Defined in UntypedPlutusCore.Core.Type

Associated Types

type Rep (UVarDecl name ann) :: Type -> Type #

Methods

from :: UVarDecl name ann -> Rep (UVarDecl name ann) x #

to :: Rep (UVarDecl name ann) x -> UVarDecl name ann #

(Show ann, Show name) => Show (UVarDecl name ann) # 
Instance details

Defined in UntypedPlutusCore.Core.Type

Methods

showsPrec :: Int -> UVarDecl name ann -> ShowS #

show :: UVarDecl name ann -> String #

showList :: [UVarDecl name ann] -> ShowS #

type Rep (UVarDecl name ann) # 
Instance details

Defined in UntypedPlutusCore.Core.Type

type Rep (UVarDecl name ann) = D1 ('MetaData "UVarDecl" "UntypedPlutusCore.Core.Type" "plutus-core-1.60.0.0-inplace" 'False) (C1 ('MetaCons "UVarDecl" 'PrefixI 'True) (S1 ('MetaSel ('Just "_uvarDeclAnn") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 ann) :*: S1 ('MetaSel ('Just "_uvarDeclName") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 name)))

uvarDeclName :: forall name ann name. Lens (UVarDecl name ann) (UVarDecl name ann) name name #

uvarDeclAnn :: forall name ann ann. Lens (UVarDecl name ann) (UVarDecl name ann) ann ann #

mkVar :: ann -> UVarDecl name ann -> Term name uni fun ann #

Make a Var referencing the given VarDecl.

mkIterLamAbs :: [UVarDecl name ann] -> Term name uni fun ann -> Term name uni fun ann #

Lambda abstract a list of names.

data Def var val #

A definition. Pretty much just a pair with more descriptive names.

Constructors

Def 

Fields

Instances

Instances details
Generic (Def var val) # 
Instance details

Defined in PlutusCore.MkPlc

Associated Types

type Rep (Def var val) :: Type -> Type #

Methods

from :: Def var val -> Rep (Def var val) x #

to :: Rep (Def var val) x -> Def var val #

(Show var, Show val) => Show (Def var val) # 
Instance details

Defined in PlutusCore.MkPlc

Methods

showsPrec :: Int -> Def var val -> ShowS #

show :: Def var val -> String #

showList :: [Def var val] -> ShowS #

(Eq var, Eq val) => Eq (Def var val) # 
Instance details

Defined in PlutusCore.MkPlc

Methods

(==) :: Def var val -> Def var val -> Bool #

(/=) :: Def var val -> Def var val -> Bool #

(Ord var, Ord val) => Ord (Def var val) # 
Instance details

Defined in PlutusCore.MkPlc

Methods

compare :: Def var val -> Def var val -> Ordering #

(<) :: Def var val -> Def var val -> Bool #

(<=) :: Def var val -> Def var val -> Bool #

(>) :: Def var val -> Def var val -> Bool #

(>=) :: Def var val -> Def var val -> Bool #

max :: Def var val -> Def var val -> Def var val #

min :: Def var val -> Def var val -> Def var val #

type Rep (Def var val) # 
Instance details

Defined in PlutusCore.MkPlc

type Rep (Def var val) = D1 ('MetaData "Def" "PlutusCore.MkPlc" "plutus-core-1.60.0.0-inplace" 'False) (C1 ('MetaCons "Def" 'PrefixI 'True) (S1 ('MetaSel ('Just "defVar") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 var) :*: S1 ('MetaSel ('Just "defVal") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 val)))

type UTermDef name uni fun ann = Def (UVarDecl name ann) (Term name uni fun ann) #

A term definition as a variable.