Mana
|
#include <GlobalSemanticAnalyzer.h>
Public Member Functions | |
GlobalSemanticAnalyzer (const std::shared_ptr< SymbolFactory > &symbolFactory, const std::shared_ptr< TypeDescriptorFactory > &typeDescriptorFactory) | |
~GlobalSemanticAnalyzer () override=default | |
void | Resolve (std::shared_ptr< SyntaxNode > node) |
![]() | |
SemanticAnalyzer (const std::shared_ptr< SymbolFactory > &symbolFactory, const std::shared_ptr< TypeDescriptorFactory > &typeDescriptorFactory) | |
virtual | ~SemanticAnalyzer ()=default |
void | SetCurrentFileInformation (const std::shared_ptr< SyntaxNode > &node) |
bool | SearchSymbolFromName (const std::shared_ptr< SyntaxNode > &node) |
void | ResolveTypeDescription (const std::shared_ptr< SyntaxNode > &node) |
std::shared_ptr< TypeDescriptor > | ResolveVariableSize (const std::shared_ptr< SyntaxNode > &node) |
void | ResolveDeclarator (const std::shared_ptr< SyntaxNode > &node, const bool isStaticVariable) |
void | ResolveVariableDescription (const std::shared_ptr< SyntaxNode > &node, const Symbol::MemoryTypeId memoryTypeId, const bool isStaticVariable) |
void | ResolveTypeFromChildNode (const std::shared_ptr< SyntaxNode > &node) const |
Additional Inherited Members | |
![]() | |
std::shared_ptr< Symbol > | Lookup (const std::string_view name) const |
const std::shared_ptr< SymbolFactory > & | GetSymbolFactory () |
const std::shared_ptr< TypeDescriptorFactory > & | GetTypeDescriptorFactory () |
mana::GlobalSemanticAnalyzer::GlobalSemanticAnalyzer | ( | const std::shared_ptr< SymbolFactory > & | symbolFactory, |
const std::shared_ptr< TypeDescriptorFactory > & | typeDescriptorFactory | ||
) |
|
overridedefault |
void mana::GlobalSemanticAnalyzer::Resolve | ( | std::shared_ptr< SyntaxNode > | node | ) |
Registers symbol information while traversing nodes (but does not evaluate to intermediate languages)