ivory-0.1.0.6: Safe embedded C programming.

Safe HaskellSafe
LanguageHaskell2010

Ivory.Language.Syntax.Concrete.ParseAST

Synopsis

Documentation

data IncludeProc Source #

We distinguish the name used from the name imported so the same symbol can be used twice at different types. (E.g., printf).

Constructors

IncludeProc 

Fields

data Type Source #

Constructors

TyVoid

Unit type

TyInt IntSize

Signed ints

TyWord WordSize

Unsigned ints

TyBool

Booleans

TyChar

Characters

TyFloat

Floats

TyDouble

Doubles XXX | TyPtr Type -- ^ Pointers

TyIx Integer

Index type

TyString

Static strings

TyStored Type

References

TyStruct String

Structures

TyArray Type SzType

Arrays of fixed length (can be a macro or integer)

TyRef Scope Type

References

TyConstRef Scope Type

Constant References

TySynonym String

Type synonym

LocTy (Located Type) 

data Scope Source #

Constructors

Stack (Maybe TypeVar)

Stack allocated. If no type variable is provided, a fresh one is constructed.

Global

Globally allocated

PolyMem (Maybe TypeVar)

Either allocation. If no type variable is provided, a fresh one is constructed.

data BitTy Source #

Basic type representation allowed in bit definitions.