Wolframe, 0.0.3

_Wolframe::langbind::DDLCompiler Class Referenceabstract

Interface for DDL compilers. More...

#include <ddlCompilerInterface.hpp>

Public Member Functions

 DDLCompiler (const std::string &n, const std::string &e)
 Constructor. More...
 
virtual ~DDLCompiler ()
 Destructor. More...
 
virtual std::vector
< types::FormDescriptionR
compile (const std::string &filename, const types::NormalizeFunctionMap *typemap) const =0
 Compile a source from a string. Throws in case of error. More...
 
const std::string & ddlname () const
 Get the name of the ddl this compiler is for. More...
 
const std::string & fileext () const
 Get the file extension for files implementing this DDL. More...
 

Private Attributes

std::string m_ddlname
 name of the data defintion language More...
 
std::string m_fileext
 file extension of a program of this data defintion language More...
 

Detailed Description

Interface for DDL compilers.

Constructor & Destructor Documentation

_Wolframe::langbind::DDLCompiler::DDLCompiler ( const std::string &  n,
const std::string &  e 
)
inline

Constructor.

virtual _Wolframe::langbind::DDLCompiler::~DDLCompiler ( )
inlinevirtual

Destructor.

Member Function Documentation

virtual std::vector<types::FormDescriptionR> _Wolframe::langbind::DDLCompiler::compile ( const std::string &  filename,
const types::NormalizeFunctionMap typemap 
) const
pure virtual

Compile a source from a string. Throws in case of error.

Parameters
[in]filenamepath of the file to compile as string
[in]typemapmap with atomic type definitions
Returns
compilation result (a list of public and private forms).
Remarks
Forms with an empty name are declared as private and not inserted into the map of public forms. But they are also not deleted and kept in a list, so that they can still be referenced by other forms in the list (for indirection).
const std::string& _Wolframe::langbind::DDLCompiler::ddlname ( ) const
inline

Get the name of the ddl this compiler is for.

const std::string& _Wolframe::langbind::DDLCompiler::fileext ( ) const
inline

Get the file extension for files implementing this DDL.

Member Data Documentation

std::string _Wolframe::langbind::DDLCompiler::m_ddlname
private

name of the data defintion language

std::string _Wolframe::langbind::DDLCompiler::m_fileext
private

file extension of a program of this data defintion language


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