Main Page   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Namespace Members   Compound Members   File Members  

TCompilerCollection Class Reference

#include

List of all members.


Public Methods

  TCompilerCollection ()
  ~TCompilerCollection ()
void  errorMgr (swl::IErrorMgr *AErrorMgr)
swl::IErrorMgr *  errorMgr ()
void  registerCompiler (cbl::TCompiler *)
  registers a compiler by structure cbl::TCompilerInfo as used in libraries. More...

void  unregisterCompiler (const std::string &AId)
  unregisters (removes) a registered library identified by AId. More...

const std::deque< cbl::TCompiler * > &  registeredCompilers () const
cbl::TCompiler compiler (const std::string &ASourceFile)
  returns a pointer to the right compiler to be used for compiling given source file. More...

void  compile (const std::string &ASourceFile, const std::string &AOutFile=std::string())
cbl::codetree::symbols::TModuleSym parse (const std::string &ASourceFile)
cbl::codetree::symbols::TModuleSym loadModule (const std::string &AModuleFile)
void  saveModule (const std::string &ASourceFile, cbl::codetree::symbols::TModuleSym *AModule)

Constructor & Destructor Documentation

TCompilerCollection::TCompilerCollection  
 

TCompilerCollection::~TCompilerCollection  
 


Member Function Documentation

void TCompilerCollection::compile const std::string &    ASourceFile,
const std::string &    AOutFile = std::string()
 

performs a complete compiling process

  1. parses the given source file
  2. performs a high level optimization
  3. saves the optimized module into a file (only if it's a unit?)
  4. creates a low level assembler tree (code generator)
  5. performs a low level optimization
  6. saves the optimized code into as an binary executable file

cbl::TCompiler* TCompilerCollection::compiler const std::string &    ASourceFile
 

returns a pointer to the right compiler to be used for compiling given source file.

swl::IErrorMgr* TCompilerCollection::errorMgr  
 

void TCompilerCollection::errorMgr swl::IErrorMgr *    AErrorMgr
 

cbl::codetree::symbols::TModuleSym* TCompilerCollection::loadModule const std::string &    AModuleFile
 

loads the given module file (no source code!) and returns its module symbol

cbl::codetree::symbols::TModuleSym* TCompilerCollection::parse const std::string &    ASourceFile
 

parses the given source file by using a corresponding compiler and returns its module symbol

void TCompilerCollection::registerCompiler cbl::TCompiler  
 

registers a compiler by structure cbl::TCompilerInfo as used in libraries.

const std::deque<cbl::TCompiler *>& TCompilerCollection::registeredCompilers   const
 

void TCompilerCollection::saveModule const std::string &    ASourceFile,
cbl::codetree::symbols::TModuleSym   AModule
 

saves the given module AModule in the file ASourceFile

void TCompilerCollection::unregisterCompiler const std::string &    AId
 

unregisters (removes) a registered library identified by AId.


The documentation for this class was generated from the following file:
Generated on Sat Apr 6 19:07:26 2002 for Compiler Backend Library by doxygen1.2.14 written by , © 1997-2002