Om
1.0.0
A universal framework for multimedia simulation
|
A class that analyzes the structure of a parsed AST to determine if it is semantically valid. More...
#include <omScriptingMirContextualAnalyzer.h>
Public Member Functions | |
ContextualAnalyzer () | |
Create a new contextual analyzer object. More... | |
Bool | check (const UTF8String &source, const ArrayList< Token > &tokens, const Shared< Module > &module, ArrayList< Error > &errors) |
Check the structure of a parsed module and return whether or not the module is semantically valid. More... | |
Bool | check (const UTF8String &source, const ArrayList< Token > &tokens, const Shared< Module > &module) |
Check the structure of a parsed module and return whether or not the module is semantically valid. More... | |
A class that analyzes the structure of a parsed AST to determine if it is semantically valid.
om::scripting::mir::ContextualAnalyzer::ContextualAnalyzer | ( | ) |
Create a new contextual analyzer object.
Bool om::scripting::mir::ContextualAnalyzer::check | ( | const UTF8String & | source, |
const ArrayList< Token > & | tokens, | ||
const Shared< Module > & | module, | ||
ArrayList< Error > & | errors | ||
) |
Check the structure of a parsed module and return whether or not the module is semantically valid.
This process involves type checking and name resolution, along with deferred expression parsing (because of ambiguities in the grammar).
If there are any errors, they are placed in the output list of errors. The method returns TRUE if there are no errors, and FALSE if any errors are encountered.
Bool om::scripting::mir::ContextualAnalyzer::check | ( | const UTF8String & | source, |
const ArrayList< Token > & | tokens, | ||
const Shared< Module > & | module | ||
) |
Check the structure of a parsed module and return whether or not the module is semantically valid.
This process involves type checking and name resolution, along with deferred expression parsing (because of ambiguities in the grammar).
The method returns TRUE if there are no errors, and FALSE if any errors are encountered.