Safe Haskell | None |
---|---|
Language | Haskell2010 |
Morley.Michelson.TypeCheck.Value
Synopsis
- typeCheckValImpl :: forall ty. SingI ty => Maybe TcOriginatedContracts -> TcInstrHandler -> Value -> TypeCheckInstr (Value ty)
- tcFailedOnValue :: Value -> T -> Text -> Maybe TCTypeError -> TypeCheckInstr a
Documentation
typeCheckValImpl :: forall ty. SingI ty => Maybe TcOriginatedContracts -> TcInstrHandler -> Value -> TypeCheckInstr (Value ty) Source #
Function typeCheckValImpl
converts a single Michelson value
given in representation from Morley.Michelson.Type
module to representation
in strictly typed GADT.
typeCheckValImpl
is polymorphic in the expected type of value.
Type checking algorithm pattern-matches on parse value representation,
expected type t
and constructs Val t
value.
If there was no match on a given pair of value and expected type, that is interpreted as input of wrong type and type check finishes with error.
typeCheckValImpl
also has a 'Maybe TcOriginatedContracts' argument that
should contain the originated contracts when typechecking a parameter and
Nothing
otherwise.
tcFailedOnValue :: Value -> T -> Text -> Maybe TCTypeError -> TypeCheckInstr a Source #