Safe Haskell | None |
---|---|
Language | Haskell2010 |
Synopsis
- convertParamNotes :: SingI cp => ParamNotes cp -> ParameterType
- convertContractCode :: forall param store. (SingI param, SingI store) => ContractCode param store -> Contract
- convertContract :: forall param store. (SingI param, SingI store) => Contract param store -> Contract
- instrToOps :: HasCallStack => Instr inp out -> [ExpandedOp]
- untypeValue :: forall t. (SingI t, HasNoOp t) => Value' Instr t -> Value
- sampleValueFromUntype :: HasCallStack => Type -> Value' ExpandedOp
- flattenEntrypoints :: SingI t => ParamNotes t -> Map EpName Type
Documentation
convertParamNotes :: SingI cp => ParamNotes cp -> ParameterType Source #
convertContractCode :: forall param store. (SingI param, SingI store) => ContractCode param store -> Contract Source #
convertContract :: forall param store. (SingI param, SingI store) => Contract param store -> Contract Source #
instrToOps :: HasCallStack => Instr inp out -> [ExpandedOp] Source #
untypeValue :: forall t. (SingI t, HasNoOp t) => Value' Instr t -> Value Source #
Convert a typed Val
to an untyped Value
.
For full isomorphism type of the given Val
should not contain
TOperation
- a compile error will be raised otherwise.
You can analyse its presence with checkOpPresence
function.
sampleValueFromUntype :: HasCallStack => Type -> Value' ExpandedOp Source #
Get sampleTypedValue
from untyped value.
Throw error if U.Type
contains TOperation
.
Misc
flattenEntrypoints :: SingI t => ParamNotes t -> Map EpName Type Source #
Flatten a provided list of notes to a map of its entrypoints and its
corresponding utype. Please refer to mkEntrypointsMap
in regards to how
duplicate entrypoints are handled.