Xreate
The Xreate programming language
List of all members
CompilePassCustomDecorators< FUNCTION_DECORATOR, SCOPE_DECORATOR > Class Template Reference

Constructs compiler with desired Function and Code Scope decorators. See adaptability in xreate::CompilePass. More...

#include <compilepass.h>

Detailed Description

template<class FUNCTION_DECORATOR = void, class SCOPE_DECORATOR = void>
class xreate::compilation::CompilePassCustomDecorators< FUNCTION_DECORATOR, SCOPE_DECORATOR >

Constructs compiler with desired Function and Code Scope decorators. See adaptability in xreate::CompilePass.

Inheritance diagram for CompilePassCustomDecorators< FUNCTION_DECORATOR, SCOPE_DECORATOR >:
CompilePass AbstractPass< void > IPass

Additional Inherited Members

- Public Member Functions inherited from CompilePass
void run () override
 Executes compilation process.
 
compilation::IFunctionUnitgetFunctionUnit (const ManagedFnPtr &function)
 Returns compiled specified Function. More...
 
llvm::Function * getEntryFunction ()
 Returns compiled main(entry) Function in program.
 
- Public Member Functions inherited from AbstractPass< void >
virtual void processFnCall (ManagedFnPtr functionCallee, PassContext context)
 Processes function invocation instruction.
 
virtual void processFnCallUncertain (const std::string &calleeName, const std::list< ManagedFnPtr > &candidates, PassContext context)
 Processes function invocation instruction in uncertain cases. More...
 
virtual void process (ManagedRulePtr rule)
 Processes Logic Rule.
 
virtual void process (ManagedFnPtr function)
 Processes Function.
 
virtual void process (CodeScope *scope, PassContext context, const std::string &hintBlockDecl="")
 Processes single CodeScope.
 
virtual void process (const Expression &expression, PassContext context, const std::string &varDecl="")
 Processes single Expression.
 
void run ()
 Executes AST traverse.
 
- Public Member Functions inherited from IPass
virtual void finish ()
 Finalizes pass. Empty by default.
 
- Static Public Member Functions inherited from CompilePass
static void prepareQueries (TranscendLayer *transcend)
 Initializes queries required by compiler. See xreate::IQuery, xreate::TranscendLayer.
 

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