Safe Haskell | None |
---|---|
Language | Haskell2010 |
Synopsis
- type TypeCheckedInstr = InstrAbstract TypeCheckedOp
- data TypeCheckedOp where
- WellTypedOp :: (Typeable inp, Typeable out) => Instr inp out -> TypeCheckedOp
- IllTypedOp :: IllTypedInstr -> TypeCheckedOp
- data IllTypedInstr
- someInstrToOp :: SomeInstr inp -> TypeCheckedOp
Documentation
type TypeCheckedInstr = InstrAbstract TypeCheckedOp Source #
Represents a root of a partially typed operation tree.
data TypeCheckedOp where Source #
Represents nodes of a partially typed operation tree.
WellTypedOp :: (Typeable inp, Typeable out) => Instr inp out -> TypeCheckedOp | Constructs well-typed node. |
IllTypedOp :: IllTypedInstr -> TypeCheckedOp | Constructs ill-typed node which might in turn contain well-typed and non-typed operations. |
Instances
Eq TypeCheckedOp Source # | |
Defined in Michelson.TypeCheck.TypeCheckedOp (==) :: TypeCheckedOp -> TypeCheckedOp -> Bool # (/=) :: TypeCheckedOp -> TypeCheckedOp -> Bool # | |
NFData TypeCheckedOp Source # | |
Defined in Michelson.TypeCheck.TypeCheckedOp rnf :: TypeCheckedOp -> () # | |
RenderDoc TypeCheckedOp Source # | |
Defined in Michelson.TypeCheck.TypeCheckedOp renderDoc :: RenderContext -> TypeCheckedOp -> Doc Source # isRenderable :: TypeCheckedOp -> Bool Source # |
data IllTypedInstr Source #
Represents a non-well-typed operation
SemiTypedInstr TypeCheckedInstr | Constructs a partialy typed operation. |
NonTypedInstr ExpandedOp | Constructs a completely untyped operation. |
Instances
someInstrToOp :: SomeInstr inp -> TypeCheckedOp Source #
Makes a well-typed node out of SomeInstr