morley-0.3.0: src/Michelson/Let.hs
module Michelson.Let
( LetType (..)
, LetValue (..)
) where
import Data.Aeson.TH (defaultOptions, deriveJSON)
import qualified Data.Text as T
import Michelson.Macro (ParsedOp)
import Michelson.Untyped (Type, Value')
-- | A programmer-defined constant
data LetValue = LetValue
{ lvName :: T.Text
, lvSig :: Type
, lvVal :: (Value' ParsedOp)
} deriving (Eq, Show)
-- | A programmer-defined type-synonym
data LetType = LetType
{ ltName :: T.Text
, ltSig :: Type
} deriving (Eq, Show)
deriveJSON defaultOptions ''LetValue
deriveJSON defaultOptions ''LetType