ddc-core-salt-0.4.3.1: Disciplined Disciple Compiler C code generator.

Safe HaskellSafe
LanguageHaskell98

DDC.Core.Salt.Env

Description

Types of Disciple Core Salt primops.

Synopsis

Documentation

primDataDefs :: DataDefs Name Source #

Data type definitions for:

 Type                        Constructors
 ----                --------------------------
 Bool#               True# False#
 Nat#                0# 1# 2# ...
 Int#                ... -2i# -1i# 0i# 1i# 2i# ...
 Size#               0s# 1s# 2s# ...
 Word{8,16,32,64}#   42w8# 123w64# ...
 Float{32,64}#       (none, convert from Int#)
 Tag#                (none, convert from Nat#)

primKindEnv :: Env Name Source #

Kind environment containing kinds of primitive data types.

primTypeEnv :: Env Name Source #

Type environment containing types of primitive operators.

typeOfPrimOp :: PrimOp -> Type Name Source #

Take the type of a primitive operator.

typeOfPrimArith :: PrimArith -> Type Name Source #

Take the type of a primitive operator.

typeOfPrimCast :: PrimCast -> Type Name Source #

Take the type of a primitive cast.

typeOfPrimCall :: PrimCall -> Type Name Source #

Take the type of a primitive call operator.

typeOfPrimStore :: PrimStore -> Type Name Source #

Take the type of a primitive projection.

typeOfPrimLit :: PrimLit -> Type Name Source #

Take the type of a primitive literal.

typeIsUnboxed :: Type Name -> Bool Source #

Check if a type is an unboxed data type.