| Safe Haskell | None |
|---|---|
| Language | Haskell2010 |
Michelson.TypeCheck.TypeCheckedOp
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.
Constructors
| 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 Methods (==) :: TypeCheckedOp -> TypeCheckedOp -> Bool # (/=) :: TypeCheckedOp -> TypeCheckedOp -> Bool # | |
| NFData TypeCheckedOp Source # | |
Defined in Michelson.TypeCheck.TypeCheckedOp Methods rnf :: TypeCheckedOp -> () # | |
| RenderDoc TypeCheckedOp Source # | |
Defined in Michelson.TypeCheck.TypeCheckedOp Methods renderDoc :: RenderContext -> TypeCheckedOp -> Doc Source # isRenderable :: TypeCheckedOp -> Bool Source # | |
data IllTypedInstr Source #
Represents a non-well-typed operation
Constructors
| SemiTypedInstr TypeCheckedInstr | Constructs a partialy typed operation. |
| NonTypedInstr ExpandedOp | Constructs a completely untyped operation. |
Instances
| Eq IllTypedInstr Source # | |
Defined in Michelson.TypeCheck.TypeCheckedOp Methods (==) :: IllTypedInstr -> IllTypedInstr -> Bool # (/=) :: IllTypedInstr -> IllTypedInstr -> Bool # | |
| Generic IllTypedInstr Source # | |
Defined in Michelson.TypeCheck.TypeCheckedOp Associated Types type Rep IllTypedInstr :: Type -> Type # | |
| NFData TypeCheckedOp => NFData IllTypedInstr Source # | |
Defined in Michelson.TypeCheck.TypeCheckedOp Methods rnf :: IllTypedInstr -> () # | |
| type Rep IllTypedInstr Source # | |
Defined in Michelson.TypeCheck.TypeCheckedOp type Rep IllTypedInstr = D1 ('MetaData "IllTypedInstr" "Michelson.TypeCheck.TypeCheckedOp" "morley-1.12.0-inplace" 'False) (C1 ('MetaCons "SemiTypedInstr" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 TypeCheckedInstr)) :+: C1 ('MetaCons "NonTypedInstr" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 ExpandedOp))) | |
someInstrToOp :: SomeInstr inp -> TypeCheckedOp Source #
Makes a well-typed node out of SomeInstr