| Safe Haskell | None |
|---|---|
| Language | Haskell2010 |
Michelson.FailPattern
Description
Typical usages of FAILWITH instruction.
Synopsis
- data TypicalFailWith
- typicalFailWithTag :: TypicalFailWith -> MText
- isTypicalFailWith :: Instr inp out -> Maybe TypicalFailWith
- modifyTypicalFailWith :: HasCallStack => (MText -> SomeConstrainedValue ConstantScope') -> Instr inp out -> Instr inp out
- class (Typeable a, ConstantScope a) => ConstantScope' a
Documentation
data TypicalFailWith Source #
This data type captures typical ways to use FAILWITH instruction.
Each constructor corresponds to a usage pattern.
typicalFailWithTag :: TypicalFailWith -> MText Source #
Extract error tag out of TypicalFailWith.
isTypicalFailWith :: Instr inp out -> Maybe TypicalFailWith Source #
Check whether given instruction ends with a typical FAILWITH
usage. It does not recursively check instructions that can be
passed to other instructions.
The instruction MUST be linearized to the left (see linearizeLeft).
modifyTypicalFailWith :: HasCallStack => (MText -> SomeConstrainedValue ConstantScope') -> Instr inp out -> Instr inp out Source #
If given instruction ends with a typical FAILWITH usage, modify
the tag used there using given transformation function. It can
return any value, not necessarily a string.
class (Typeable a, ConstantScope a) => ConstantScope' a Source #
We need this class to pass it to SomeConstrainedValue.
ConstantScope is needed because we push a value and Typeable is
needed for FAILWITH.
Instances
| (Typeable a, ConstantScope a) => ConstantScope' a Source # | |
Defined in Michelson.FailPattern | |