Zen
A cross-platform functional programming language

Compiler Class Reference

Zen compiler class. More...

#include <Compiler.hpp>

List of all members.

Classes

class  Impl
 Zen compiler class implementation. More...

Public Member Functions

 Compiler (const Build::Config &cfg)
 Default constructor.
 ~Compiler ()
 Destructor.
void readProject (Ast::Unit &unit, const z::string &file)
 Read a project file.
void compile (const Build::Project &project)
 Compile a project.
void generate (const Build::Project &project)
 Generate a project.
void importHeader (zbl::ParseContext &pctx, const z::stringlist &idList, const Ast::ImportStatement::Type &type)
 Import a header file.

Static Public Member Functions

static int execute (int argc, char *argv[])
 Run the compiler.

Private Attributes

Impl_impl
 Instance of private implementation class.

Detailed Description

Zen compiler class.


Constructor & Destructor Documentation

Compiler ( const Build::Config cfg)

Default constructor.

Parameters:
cfgConfiguration to build against

Member Function Documentation

void compile ( const Build::Project project)

Compile a project.

Parameters:
projectThe project definition
int execute ( int  argc,
char *  argv[] 
) [static]

Run the compiler.

Parameters:
argcArgument count
argvArgument list
Returns:
Zero on success, else error code
void generate ( const Build::Project project)

Generate a project.

Parameters:
projectThe project definition
void importHeader ( zbl::ParseContext pctx,
const z::stringlist idList,
const Ast::ImportStatement::Type type 
)

Import a header file.

Parameters:
pctxThe parser context
idListThe header name, as a list of strings
typeThe header type
void readProject ( Ast::Unit unit,
const z::string file 
)

Read a project file.

Parameters:
unitThe AST to read the project into
fileThe name of the file to read

The documentation for this class was generated from the following files:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Defines