Safe Haskell | None |
---|---|
Language | Haskell2010 |
Synopsis
- data CompilationOptions = CompilationOptions {}
- compileLorentz :: (inp :-> out) -> Instr (ToTs inp) (ToTs out)
- compileLorentzContract :: forall cp st. (NiceParameterFull cp, NiceStorage st) => Contract cp st -> FullContract (ToT cp) (ToT st)
- compileLorentzContractWithOptions :: forall cp st. (NiceParameterFull cp, NiceStorage st) => CompilationOptions -> Contract cp st -> FullContract (ToT cp) (ToT st)
- interpretLorentzInstr :: (IsoValuesStack inp, IsoValuesStack out) => ContractEnv -> (inp :-> out) -> Rec Identity inp -> Either MichelsonFailed (Rec Identity out)
- interpretLorentzLambda :: (IsoValue inp, IsoValue out) => ContractEnv -> Lambda inp out -> inp -> Either MichelsonFailed out
- analyzeLorentz :: (inp :-> out) -> AnalyzerRes
Documentation
data CompilationOptions Source #
CompilationOptions | |
|
compileLorentzContract :: forall cp st. (NiceParameterFull cp, NiceStorage st) => Contract cp st -> FullContract (ToT cp) (ToT st) Source #
Version of compileLorentz
specialized to instruction corresponding to
contract code.
compileLorentzContractWithOptions :: forall cp st. (NiceParameterFull cp, NiceStorage st) => CompilationOptions -> Contract cp st -> FullContract (ToT cp) (ToT st) Source #
Version on compileLorentzContract
which accepts CompilationOptions
.
Note that compiled contract can be ill-typed in terms of Michelson code
when some of the compilation options are used (e.g. when coDoInitialCast
is False, resulted contract can be ill-typed).
However, compilation with defaultCompilationOptions
should be valid.
interpretLorentzInstr :: (IsoValuesStack inp, IsoValuesStack out) => ContractEnv -> (inp :-> out) -> Rec Identity inp -> Either MichelsonFailed (Rec Identity out) Source #
Interpret a Lorentz instruction, for test purposes.
interpretLorentzLambda :: (IsoValue inp, IsoValue out) => ContractEnv -> Lambda inp out -> inp -> Either MichelsonFailed out Source #
Like interpretLorentzInstr
, but works on lambda rather than
arbitrary instruction.
analyzeLorentz :: (inp :-> out) -> AnalyzerRes Source #
Lorentz version of analyzer.