slang-netlist  0.9.0
Loading...
Searching...
No Matches
slang::netlist::SymbolTable Class Reference

#include <SymbolReference.hpp>

Public Member Functions

auto intern (std::string_view name, std::string_view hierarchicalPath, TextLocation location) -> SymbolReference const *
auto intern (SymbolReference const &ref) -> SymbolReference const *
 Convenience: intern by copying from an existing SymbolReference value.
auto size () const -> size_t
 Number of unique symbol entries currently interned.

Detailed Description

Centralised table of unique SymbolReference records, keyed by hierarchicalPath. Returned pointers are stable for the table's lifetime and may be shared across many NetlistEdge instances. Lookups are lock-free; insertion takes a mutex.

Member Function Documentation

◆ intern() [1/2]

auto slang::netlist::SymbolTable::intern ( std::string_view name,
std::string_view hierarchicalPath,
TextLocation location ) -> SymbolReference const *
inline

Intern a SymbolReference. Returns a stable pointer to the canonical record. Thread safe.

◆ intern() [2/2]

auto slang::netlist::SymbolTable::intern ( SymbolReference const & ref) -> SymbolReference const *
inline

Convenience: intern by copying from an existing SymbolReference value.

◆ size()

auto slang::netlist::SymbolTable::size ( ) const -> size_t
inline

Number of unique symbol entries currently interned.


The documentation for this class was generated from the following file: