Safe Haskell | Safe-Inferred |
---|---|
Language | Haskell2010 |
Micheline primitive datatype
Synopsis
- data MichelinePrimitiveTag
- data MichelinePrimitive
- = Prim_parameter
- | Prim_storage
- | Prim_code
- | Prim_False
- | Prim_Elt
- | Prim_Left
- | Prim_None
- | Prim_Pair
- | Prim_Right
- | Prim_Some
- | Prim_True
- | Prim_Unit
- | Prim_PACK
- | Prim_UNPACK
- | Prim_BLAKE2B
- | Prim_SHA256
- | Prim_SHA512
- | Prim_ABS
- | Prim_ADD
- | Prim_AMOUNT
- | Prim_AND
- | Prim_BALANCE
- | Prim_CAR
- | Prim_CDR
- | Prim_CHECK_SIGNATURE
- | Prim_COMPARE
- | Prim_CONCAT
- | Prim_CONS
- | Prim_CREATE_ACCOUNT
- | Prim_CREATE_CONTRACT
- | Prim_IMPLICIT_ACCOUNT
- | Prim_DIP
- | Prim_DROP
- | Prim_DUP
- | Prim_EDIV
- | Prim_EMPTY_MAP
- | Prim_EMPTY_SET
- | Prim_EQ
- | Prim_EXEC
- | Prim_FAILWITH
- | Prim_GE
- | Prim_GET
- | Prim_GT
- | Prim_HASH_KEY
- | Prim_IF
- | Prim_IF_CONS
- | Prim_IF_LEFT
- | Prim_IF_NONE
- | Prim_INT
- | Prim_LAMBDA
- | Prim_LE
- | Prim_LEFT
- | Prim_LOOP
- | Prim_LSL
- | Prim_LSR
- | Prim_LT
- | Prim_MAP
- | Prim_MEM
- | Prim_MUL
- | Prim_NEG
- | Prim_NEQ
- | Prim_NIL
- | Prim_NONE
- | Prim_NOT
- | Prim_NOW
- | Prim_OR
- | Prim_PAIR
- | Prim_PUSH
- | Prim_RIGHT
- | Prim_SIZE
- | Prim_SOME
- | Prim_SOURCE
- | Prim_SENDER
- | Prim_SELF
- | Prim_STEPS_TO_QUOTA
- | Prim_SUB
- | Prim_SWAP
- | Prim_TRANSFER_TOKENS
- | Prim_SET_DELEGATE
- | Prim_UNIT
- | Prim_UPDATE
- | Prim_XOR
- | Prim_ITER
- | Prim_LOOP_LEFT
- | Prim_ADDRESS
- | Prim_CONTRACT
- | Prim_ISNAT
- | Prim_CAST
- | Prim_RENAME
- | Prim_bool
- | Prim_contract
- | Prim_int
- | Prim_key
- | Prim_key_hash
- | Prim_lambda
- | Prim_list
- | Prim_map
- | Prim_big_map
- | Prim_nat
- | Prim_option
- | Prim_or
- | Prim_pair
- | Prim_set
- | Prim_signature
- | Prim_string
- | Prim_bytes
- | Prim_mutez
- | Prim_timestamp
- | Prim_unit
- | Prim_operation
- | Prim_address
- | Prim_SLICE
- | Prim_DIG
- | Prim_DUG
- | Prim_EMPTY_BIG_MAP
- | Prim_APPLY
- | Prim_chain_id
- | Prim_CHAIN_ID
- | Prim_LEVEL
- | Prim_SELF_ADDRESS
- | Prim_never
- | Prim_NEVER
- | Prim_UNPAIR
- | Prim_VOTING_POWER
- | Prim_TOTAL_VOTING_POWER
- | Prim_KECCAK
- | Prim_SHA3
- | Prim_PAIRING_CHECK
- | Prim_bls12_381_g1
- | Prim_bls12_381_g2
- | Prim_bls12_381_fr
- | Prim_sapling_state
- | Prim_sapling_transaction_deprecated
- | Prim_SAPLING_EMPTY_STATE
- | Prim_SAPLING_VERIFY_UPDATE
- | Prim_ticket
- | Prim_TICKET_DEPRECATED
- | Prim_READ_TICKET
- | Prim_SPLIT_TICKET
- | Prim_JOIN_TICKETS
- | Prim_GET_AND_UPDATE
- | Prim_chest
- | Prim_chest_key
- | Prim_OPEN_CHEST
- | Prim_VIEW
- | Prim_view
- | Prim_constant
- | Prim_SUB_MUTEZ
- | Prim_tx_rollup_l2_address
- | Prim_MIN_BLOCK_TIME
- | Prim_sapling_transaction
- | Prim_EMIT
- | Prim_Lambda_rec
- | Prim_LAMBDA_REC
- | Prim_TICKET
- | Prim_BYTES
- | Prim_NAT
- data SingMichelinePrimitiveTag :: MichelinePrimitiveTag -> Type where
- SMPTKeyword :: SingMichelinePrimitiveTag ('MPTKeyword :: MichelinePrimitiveTag)
- SMPTInstr :: SingMichelinePrimitiveTag ('MPTInstr :: MichelinePrimitiveTag)
- SMPTValue :: SingMichelinePrimitiveTag ('MPTValue :: MichelinePrimitiveTag)
- SMPTType :: SingMichelinePrimitiveTag ('MPTType :: MichelinePrimitiveTag)
- SMPTRemoved :: SingMichelinePrimitiveTag ('MPTRemoved :: MichelinePrimitiveTag)
- SMPTConstant :: SingMichelinePrimitiveTag ('MPTConstant :: MichelinePrimitiveTag)
- type family MPTConstantSym0 :: MichelinePrimitiveTag where ...
- type family MPTRemovedSym0 :: MichelinePrimitiveTag where ...
- type family MPTTypeSym0 :: MichelinePrimitiveTag where ...
- type family MPTValueSym0 :: MichelinePrimitiveTag where ...
- type family MPTInstrSym0 :: MichelinePrimitiveTag where ...
- type family MPTKeywordSym0 :: MichelinePrimitiveTag where ...
- primClassification :: MichelinePrimitive -> MichelinePrimitiveTag
Documentation
data MichelinePrimitiveTag Source #
Simple classification datakind for MichelinePrimitive
.
MPTKeyword | Keywords, like |
MPTInstr | Instructions, e.g. |
MPTValue | Value constructors like |
MPTType | Types, like |
MPTRemoved | Removed primitives: |
MPTConstant | Keyword |
Instances
data MichelinePrimitive Source #
Instances
data SingMichelinePrimitiveTag :: MichelinePrimitiveTag -> Type where Source #
Instances
TestCoercion SingMichelinePrimitiveTag Source # | |
Defined in Morley.Micheline.Expression.Internal.MichelinePrimitive testCoercion :: forall (a :: k) (b :: k). SingMichelinePrimitiveTag a -> SingMichelinePrimitiveTag b -> Maybe (Coercion a b) # | |
TestEquality SingMichelinePrimitiveTag Source # | |
Defined in Morley.Micheline.Expression.Internal.MichelinePrimitive testEquality :: forall (a :: k) (b :: k). SingMichelinePrimitiveTag a -> SingMichelinePrimitiveTag b -> Maybe (a :~: b) # |
type family MPTConstantSym0 :: MichelinePrimitiveTag where ... Source #
type family MPTRemovedSym0 :: MichelinePrimitiveTag where ... Source #
type family MPTTypeSym0 :: MichelinePrimitiveTag where ... Source #
type family MPTValueSym0 :: MichelinePrimitiveTag where ... Source #
type family MPTInstrSym0 :: MichelinePrimitiveTag where ... Source #
type family MPTKeywordSym0 :: MichelinePrimitiveTag where ... Source #
primClassification :: MichelinePrimitive -> MichelinePrimitiveTag Source #
Classify MichelinePrimitive
. This function uses heuristics to avoid
writing a giant case match, which means it's potentially partial. This should
be fine as it's used with TemplateHaskell, hence if some cases are not
covered, the build will fail.