sun::semantic_analysis::QualifiedName

sun::semantic_analysis::QualifiedName

struct · Source (opens in a new tab)

struct sun::semantic_analysis::QualifiedName

Describe a source name and its scope independently of declaration identity.

Public Functions

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()=default

Creates 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() const

Return 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() const

Display 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() const

Reports 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() const

Return 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) const

The 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) const

Reports 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) const

Orders 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) const

Compares the stored values for equality.

Related: QualifiedName

scopePathString

public · function · Source (opens in a new tab)

std::string sun::semantic_analysis::QualifiedName::scopePathString() const

Get 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::baseName

No documentation comment.

scopePath

public · variable · Source (opens in a new tab)

std::vector<std::string> sun::semantic_analysis::QualifiedName::scopePath

No documentation comment.