lorentz-0.14.0: EDSL for the Michelson Language
Safe HaskellSafe-Inferred
LanguageHaskell2010

Lorentz.Lambda

Synopsis

Documentation

newtype WrappedLambda i o Source #

A helper type to construct Lorentz lambda values; Use this for lambda values outside of Lorentz contracts or with push.

The primary reason this is a newtype and not a type synonym is to avoid accidentally splicing the output of mkLambda in-line.

Constructors

WrappedLambda 

Fields

Instances

Instances details
Show (WrappedLambda i o) Source # 
Instance details

Defined in Lorentz.Lambda

Eq (WrappedLambda i o) Source # 
Instance details

Defined in Lorentz.Lambda

Methods

(==) :: WrappedLambda i o -> WrappedLambda i o -> Bool #

(/=) :: WrappedLambda i o -> WrappedLambda i o -> Bool #

HasAnnotation (i :-> o) => HasAnnotation (WrappedLambda i o) Source # 
Instance details

Defined in Lorentz.Lambda

HasRPCRepr (i :-> o) => HasRPCRepr (WrappedLambda i o) Source # 
Instance details

Defined in Lorentz.Lambda

Associated Types

type AsRPC (WrappedLambda i o)

Each '[Typeable :: [Type] -> Constraint, ReifyList TypeHasDoc] '[i, o] => TypeHasDoc (WrappedLambda i o) Source # 
Instance details

Defined in Lorentz.Doc

Associated Types

type TypeDocFieldDescriptions (WrappedLambda i o) :: FieldDescriptions #

IsoValue (a :-> b) => IsoValue (WrappedLambda a b) Source # 
Instance details

Defined in Lorentz.Lambda

Associated Types

type ToT (WrappedLambda a b) :: T #

type AsRPC (WrappedLambda i o) Source # 
Instance details

Defined in Lorentz.Lambda

type AsRPC (WrappedLambda i o) = AsRPC (i :-> o)
type TypeDocFieldDescriptions (WrappedLambda i o) Source # 
Instance details

Defined in Lorentz.Doc

type ToT (WrappedLambda a b) Source # 
Instance details

Defined in Lorentz.Lambda

type ToT (WrappedLambda a b) = ToT (a :-> b)

type Lambda i o = WrappedLambda '[i] '[o] Source #

A type synonym representing Michelson lambdas.

mkLambda :: (IsNotInView => i :-> o) -> WrappedLambda i o Source #

A constructor providing the required constraint for WrappedLambda. This is the only way to construct a lambda that uses operations forbidden in views.