#include <StaticScope.hpp>
Definition at line 99 of file StaticScope.hpp.
◆ NamespaceScope() [1/3]
Ark::internal::NamespaceScope::NamespaceScope |
( |
std::string | name, |
|
|
bool | with_prefix, |
|
|
bool | is_glob, |
|
|
const std::vector< std::string > & | symbols ) |
◆ NamespaceScope() [2/3]
Ark::internal::NamespaceScope::NamespaceScope |
( |
const NamespaceScope & | | ) |
|
|
delete |
◆ NamespaceScope() [3/3]
◆ add()
std::string Ark::internal::NamespaceScope::add |
( |
const std::string & | name, |
|
|
bool | is_mutable ) |
|
overridevirtual |
◆ fullyQualifiedName()
std::string Ark::internal::NamespaceScope::fullyQualifiedName |
( |
const std::string & | name | ) |
const |
|
nodiscardoverridevirtual |
◆ get()
std::optional< Declaration > Ark::internal::NamespaceScope::get |
( |
const std::string & | name, |
|
|
bool | extensive_lookup ) |
|
nodiscardoverridevirtual |
Try to return a Declaration from this scope with a given name.
- Parameters
-
name | |
extensive_lookup | if true, use the additional saved namespaces |
- Returns
- std::optional<Declaration> std::nullopt if the Declaration isn't in scope
Reimplemented from Ark::internal::StaticScope.
Definition at line 68 of file StaticScope.cpp.
References fullyQualifiedName(), hasSymbol(), m_additional_namespaces, m_is_glob, m_namespace, m_symbols, m_vars, m_with_prefix, Ark::internal::Declaration::name, and Ark::internal::Declaration::original_name.
◆ hasSymbol()
bool Ark::internal::NamespaceScope::hasSymbol |
( |
const std::string & | symbol | ) |
const |
|
inlinenodiscardoverridevirtual |
◆ isGlob()
bool Ark::internal::NamespaceScope::isGlob |
( |
| ) |
const |
|
inlinenodiscardoverridevirtual |
◆ isNamespace()
bool Ark::internal::NamespaceScope::isNamespace |
( |
| ) |
const |
|
nodiscardoverridevirtual |
◆ operator=() [1/2]
◆ operator=() [2/2]
◆ prefix()
std::string Ark::internal::NamespaceScope::prefix |
( |
| ) |
const |
|
inlinenodiscardoverridevirtual |
◆ recursiveHasSymbol()
bool Ark::internal::NamespaceScope::recursiveHasSymbol |
( |
const std::string & | symbol | ) |
|
|
nodiscardoverridevirtual |
◆ saveNamespace()
bool Ark::internal::NamespaceScope::saveNamespace |
( |
std::unique_ptr< StaticScope > & | scope | ) |
|
|
overridevirtual |
◆ withPrefix()
bool Ark::internal::NamespaceScope::withPrefix |
( |
| ) |
const |
|
inlinenodiscardoverridevirtual |
◆ m_additional_namespaces
std::vector<std::unique_ptr<StaticScope> > Ark::internal::NamespaceScope::m_additional_namespaces |
|
private |
◆ m_is_glob
bool Ark::internal::NamespaceScope::m_is_glob |
|
private |
◆ m_namespace
std::string Ark::internal::NamespaceScope::m_namespace |
|
private |
◆ m_symbols
std::vector<std::string> Ark::internal::NamespaceScope::m_symbols |
|
private |
◆ m_vars
std::unordered_set<Declaration> Ark::internal::NamespaceScope::m_vars {} |
|
private |
◆ m_with_prefix
bool Ark::internal::NamespaceScope::m_with_prefix |
|
private |
The documentation for this class was generated from the following files:
- /Users/fola/Documents/ArkScript/Ark/include/Ark/Compiler/NameResolution/StaticScope.hpp
- /Users/fola/Documents/ArkScript/Ark/src/arkreactor/Compiler/NameResolution/StaticScope.cpp