Class Namespace
A C++ namespace. For example the (single) namespace A
in the following
code:
namespace A
{
// ...
}
// ...
namespace A
{
// ...
}
Note that namespaces are somewhat nebulous entities, as they do not in
general have a single well-defined location in the source code. The
related notion of a NamespaceDeclarationEntry
is rather more concrete,
and should be used when a location is required. For example, the std::
namespace is particularly nebulous, as parts of it are defined across a
wide range of headers. As a more extreme example, the global namespace
is never explicitly declared, but might correspond to a large proportion
of the source code.
Import path
import cpp
Direct supertypes
Indirect supertypes
Known direct subtypes
Predicates
fromSource |
Holds if this namespace may be from source. |
getAChildNamespace |
Gets a child namespace of this namespace. |
getADeclaration |
Gets a child declaration of this namespace. |
getADeclarationEntry |
Gets a declaration of (part of) this namespace. |
getAFile |
Gets a file which declares (part of) this namespace. |
getFriendlyName |
Gets a version of the |
getLocation |
Gets the location of the namespace. Most namespaces do not have a single well-defined source location, so a dummy location is returned, unless the namespace has exactly one declaration entry. |
getMetrics |
Gets the metric namespace. |
getName |
Gets the simple name of this namespace. |
getParentNamespace |
Gets the parent namespace, if any. |
getQualifiedName |
Gets the qualified name of this namespace. For example: |
hasName |
Holds if this element is named |
isAnonymous |
Holds if this namespace is anonymous. |
isInline |
Holds if the namespace is inline. |
toString |
Gets a textual representation of this element. |
Inherited predicates
findRootCause |
Gets the source of this element: either itself or a macro that expanded to this element. |
from Element |
getANameQualifier |
Gets a name qualifier for which this is the qualifying namespace or user-defined type. For example: class |
from NameQualifyingElement |
getAPrimaryQlClass |
Gets the name of a primary CodeQL class to which this element belongs. |
from ElementBase |
getEnclosingElement |
Gets the closest |
from Element |
getFile |
Gets the primary file where this element occurs. |
from Element |
getParentScope |
Gets the parent scope of this |
from Element |
getPrimaryQlClasses |
Gets a comma-separated list of the names of the primary CodeQL classes to which this element belongs. |
from ElementBase |
isAffectedByMacro |
Holds if this element is affected in any way by a macro. All elements that are totally or partially generated by a macro are included, so this is a super-set of |
from Element |
isFromTemplateInstantiation |
Holds if this |
from Element |
isFromUninstantiatedTemplate |
Holds if this |
from Element |
isInMacroExpansion |
Holds if this element comes from a macro expansion. Only elements that are entirely generated by a macro are included - for elements that partially come from a macro, see |
from Element |