sun::semantic_analysis::QualifiedName
struct · Source (opens in a new tab)
struct sun::semantic_analysis::QualifiedNameDescribe a source name and its scope independently of declaration identity.
Public Functions
- QualifiedName
- bundleHash
- display
- empty
- joinPath
- lookupName
- memberNamed
- operator!=
- operator<
- operator==
- scopePathString
QualifiedName
QualifiedName(std::vector< std::string > path, std::string name)
public · function · Source (opens in a new tab)
sun::semantic_analysis::QualifiedName::QualifiedName(std::vector< std::string > path, std::string name)Creates a declaration name from its enclosing path and local spelling.
QualifiedName()=default
public · function · Source (opens in a new tab)
sun::semantic_analysis::QualifiedName::QualifiedName()=defaultCreates a declaration name from its enclosing path and local spelling.
bundleHash
public · function · Source (opens in a new tab)
std::string sun::semantic_analysis::QualifiedName::bundleHash() constReturn the defining bundle hash, or empty for an unbundled name.
display
public · function · Source (opens in a new tab)
std::string sun::semantic_analysis::QualifiedName::display() constDisplay form for error messages, "A.B.my_func", with library hash segments left out.
empty
public · function · Source (opens in a new tab)
bool sun::semantic_analysis::QualifiedName::empty() constReports whether this object contains no entries.
joinPath
public · function · static · Source (opens in a new tab)
static std::string sun::semantic_analysis::QualifiedName::joinPath(const std::vector< std::string > &path)Static helper to join a scope path vector into dot-separated string.
lookupName
public · function · Source (opens in a new tab)
std::string sun::semantic_analysis::QualifiedName::lookupName() constReturn the dotted lookup name, including the bundle scope.
memberNamed
public · function · Source (opens in a new tab)
QualifiedName sun::semantic_analysis::QualifiedName::memberNamed(const std::string &member) constThe name of member declared inside this one — the enclosing name becomes a scope segment, as a class does for its methods.
Related: QualifiedName
operator!=
public · function · Source (opens in a new tab)
bool sun::semantic_analysis::QualifiedName::operator!=(const QualifiedName &other) constReports whether the stored values differ.
Related: QualifiedName
operator<
public · function · Source (opens in a new tab)
bool sun::semantic_analysis::QualifiedName::operator<(const QualifiedName &other) constOrders values for use in sorted containers.
Related: QualifiedName
operator==
public · function · Source (opens in a new tab)
bool sun::semantic_analysis::QualifiedName::operator==(const QualifiedName &other) constCompares the stored values for equality.
Related: QualifiedName
scopePathString
public · function · Source (opens in a new tab)
std::string sun::semantic_analysis::QualifiedName::scopePathString() constGet scope path as dot-separated string (for compatibility/display).
Public Fields
baseName
public · variable · Source (opens in a new tab)
std::string sun::semantic_analysis::QualifiedName::baseNameNo documentation comment.
scopePath
public · variable · Source (opens in a new tab)
std::vector<std::string> sun::semantic_analysis::QualifiedName::scopePathNo documentation comment.