Xreate
The Xreate programming language
Public Member Functions | List of all members
VersionsPass Class Reference

Implements the versions analysis and stores the results in VersionsGraph. More...

#include <versionspass.h>

Detailed Description

Implements the versions analysis and stores the results in VersionsGraph.

Consists of two parts:

See also
VersionsScopeDecorator, VersionsGraph, Versions Explanation
Inheritance diagram for VersionsPass:
AbstractPass< std::list< Symbol > > IPass

Public Member Functions

std::list< Symbol > process (const Expression &expression, PassContext context, const std::string &hintSymbol="") override
 Processes single Expression.
 
virtual void finish ()
 Finalizes pass. Empty by default.
 
- Public Member Functions inherited from AbstractPass< std::list< Symbol > >
virtual std::list< Symbol > processFnCall (ManagedFnPtr functionCallee, PassContext context)
 Processes function invocation instruction.
 
virtual std::list< Symbol > 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 std::list< Symbol > process (ManagedFnPtr function)
 Processes Function.
 
virtual std::list< Symbol > process (CodeScope *scope, PassContext context, const std::string &hintBlockDecl="")
 Processes single CodeScope.
 
void run ()
 Executes AST traverse.
 

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