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 Typefind (const std::string &name, const SourceRange &src, const PtrVec< Type > &params=PtrVec< Type >())
 Find an existing type (nil type if not found).
 
const TypenilType ()
 The type of a typeless thing.
 
const TypebooleanType ()
 The type of a boolean expression.
 
const TypeintegerType ()
 The type of an integer number.
 
const TypelistOf (const Type &, const SourceRange &)
 The type of a list.
 
const Typemaybe (const Type &, const SourceRange &)
 An optional ("maybe") type.
 
const FileTypefileType ()
 A file in a build.
 
const FileTypeinputFileType ()
 
const FileTypeoutputFileType ()
 
const TypefileListType ()
 A list of files (a pretty fundamental type!).
 
const FunctionTypefunctionType (const Type &in, const Type &out)
 A function type for a simple (one in, one out) function.
 
const FunctionTypefunctionType (const PtrVec< Type > &argumentTypes, const Type &returnType)
 A function type, which incorporates the function's signature.
 
const StructureTypestructureType (const Type::NamedTypeVec &)
 A structure type describes its fields' names and types.
 
const TypestringType ()
 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: