top | up | prev | next

FileScope Class

Definition at line 110 of Scope.hpp

Constructors

FileScope()

Member Functions

void AddContainerScope(ContainerScope* containerScope)
void CollectViableFunctions(int arity, const std::u32string& groupName, std::unordered_set<ContainerScope*>& scopesLookedUp, ViableFunctionSet& viableFunctions, Module* module)
void InstallAlias(ContainerScope* containerScope, AliasNode* aliasNode)
void InstallNamespaceImport(ContainerScope* containerScope, NamespaceImportNode* namespaceImportNode)
Symbol* Lookup(const std::u32string& name) const override
Symbol* Lookup(const std::u32string& name, ScopeLookup lookup) const override
std::vector<CCSymbolEntry> LookupBeginWith(const std::u32string& prefix) const override
std::vector<CCSymbolEntry> LookupBeginWith(const std::u32string& prefix, ScopeLookup lookup) const override

Member Variables

std::map<std::u32string, Symbol*> aliasSymbolMap
std::vector<ContainerScope*> containerScopes

Constructor Details

FileScope Constructor

cmajor::symbols::FileScope::FileScope()

Definition at line 746 of Scope.cpp :
747 {
748 }


Declaration at line 113 of Scope.hpp


Member Function Details

AddContainerScope Member Function

void cmajor::symbols::FileScope::AddContainerScope(ContainerScope * containerScope)

Definition at line 766 of Scope.cpp :
767 {
768     if (std::find(containerScopes.begin()containerScopes.end()containerScope) == containerScopes.end())
769     {
770         containerScopes.push_back(containerScope);
771     }
772 }


Declaration at line 115 of Scope.hpp


CollectViableFunctions Member Function

void cmajor::symbols::FileScope::CollectViableFunctions(int arity, const std::u32string& groupName, std::unordered_set<ContainerScope *>& scopesLookedUp, ViableFunctionSet & viableFunctions, Module * module)

Definition at line 893 of Scope.cpp :
895 {
896     for (ContainerScope* containerScope : containerScopes)
897     {
898         if (scopesLookedUp.find(containerScope) == scopesLookedUp.end())
899         {
900             containerScope->CollectViableFunctions(aritygroupNamescopesLookedUpScopeLookup::this_viableFunctionsmodule);
901             scopesLookedUp.insert(containerScope);
902         }
903     }
904 }


Declaration at line 121 of Scope.hpp

Calls: cmajor::symbols::ContainerScope::CollectViableFunctions


InstallAlias Member Function

void cmajor::symbols::FileScope::InstallAlias(ContainerScope * containerScope, AliasNode* aliasNode)

Definition at line 750 of Scope.cpp

Calls: cmajor::symbols::ContainerScope::Lookup


InstallNamespaceImport Member Function

void cmajor::symbols::FileScope::InstallNamespaceImport(ContainerScope * containerScope, NamespaceImportNode* namespaceImportNode)

Definition at line 774 of Scope.cpp

Calls: cmajor::symbols::ContainerScope::Lookup , cmajor::symbols::Symbol::GetContainerScope , cmajor::symbols::Symbol::GetSymbolType


Lookup Member Function

Symbol * cmajor::symbols::FileScope::Lookup(const std::u32string& name) const override

Definition at line 807 of Scope.cpp :
808 {
809     return Lookup(nameScopeLookup::this_);
810 }


Declaration at line 117 of Scope.hpp

Base class overridden functions: cmajor::symbols::Scope::Lookup

Calls: cmajor::symbols::FileScope::Lookup


Lookup Member Function

Symbol * cmajor::symbols::FileScope::Lookup(const std::u32string& name, ScopeLookup lookup) const override

Definition at line 812 of Scope.cpp
Declaration at line 118 of Scope.hpp

Base class overridden functions: cmajor::symbols::Scope::Lookup

Calls: cmajor::symbols::ContainerScope::Lookup , cmajor::symbols::Symbol::FullName , cmajor::symbols::Symbol::GetSpan , cmajor::symbols::Symbol::SourceModuleId

Called by: cmajor::symbols::FileScope::Lookup


LookupBeginWith Member Function

std::vector<CCSymbolEntry > cmajor::symbols::FileScope::LookupBeginWith(const std::u32string& prefix) const override

Definition at line 868 of Scope.cpp :
869 {
870     return LookupBeginWith(prefixScopeLookup::this_);
871 }


Declaration at line 119 of Scope.hpp

Base class overridden functions: cmajor::symbols::Scope::LookupBeginWith

Calls: cmajor::symbols::FileScope::LookupBeginWith


LookupBeginWith Member Function

std::vector<CCSymbolEntry > cmajor::symbols::FileScope::LookupBeginWith(const std::u32string& prefix, ScopeLookup lookup) const override

Definition at line 873 of Scope.cpp
Declaration at line 120 of Scope.hpp

Base class overridden functions: cmajor::symbols::Scope::LookupBeginWith

Calls: cmajor::symbols::ContainerScope::LookupBeginWith

Called by: cmajor::symbols::FileScope::LookupBeginWith


top | up | prev | next