Fabrique

A build language for complex systems

 All Classes Namespaces Files Functions Variables Enumerations Enumerator Macros Pages
fabrique::TypeContext Class Reference

A context object that holds state for a compilation (e.g., type objects). More...

#include <TypeContext.h>

Public Member Functions

const Type & find (const std::string &name, const SourceRange &src, const PtrVec< Type > &params=PtrVec< Type >())
 Find an existing type (nil type if not found).
 
const Type & nilType ()
 The type of a typeless thing.
 
const Type & booleanType ()
 The type of a boolean expression.
 
const Type & integerType ()
 The type of an integer number.
 
const Type & listOf (const Type &, const SourceRange &)
 The type of a list.
 
const Type & maybe (const Type &, const SourceRange &)
 An optional ("maybe") type.
 
const FileType & fileType ()
 A file in a build.
 
const FileType & inputFileType ()
 
const FileType & outputFileType ()
 
const Type & fileListType ()
 A list of files (a pretty fundamental type!).
 
const FunctionType & functionType (const Type &in, const Type &out)
 A function type for a simple (one in, one out) function.
 
const FunctionType & functionType (const PtrVec< Type > &argumentTypes, const Type &returnType)
 A function type, which incorporates the function's signature.
 
const StructureType & structureType (const Type::NamedTypeVec &)
 A structure type describes its fields' names and types.
 
const Type & stringType ()
 A string of characters.
 

Detailed Description

A context object that holds state for a compilation (e.g., type objects).

Definition at line 54 of file TypeContext.h.


The documentation for this class was generated from the following files: