slang-netlist  0.9.0
Loading...
Searching...
No Matches
slang::netlist::TextLocation Struct Reference

#include <TextLocation.hpp>

Public Member Functions

 TextLocation ()=default
 TextLocation (uint32_t fileIndex, size_t line, size_t column)
 TextLocation (uint32_t fileIndex, size_t line, size_t column, SourceLocation sourceLocation)
auto toString (FileTable const &fileTable) const -> std::string
auto empty () const -> bool
auto hasSourceLocation () const -> bool

Public Attributes

uint32_t fileIndex {FileTable::NoFile}
size_t line {0}
size_t column {0}
SourceLocation sourceLocation {SourceLocation::NoLocation}

Detailed Description

A serialisable source location, decoupled from the live slang AST. Stores a file table index, line number, and column number.

Also carries a transient SourceLocation that is populated during graph construction but not serialised. This allows pretty diagnostics (with source lines and carets) when the compilation is still available.

Constructor & Destructor Documentation

◆ TextLocation() [1/3]

slang::netlist::TextLocation::TextLocation ( )
default

◆ TextLocation() [2/3]

slang::netlist::TextLocation::TextLocation ( uint32_t fileIndex,
size_t line,
size_t column )
inline

◆ TextLocation() [3/3]

slang::netlist::TextLocation::TextLocation ( uint32_t fileIndex,
size_t line,
size_t column,
SourceLocation sourceLocation )
inline

Member Function Documentation

◆ empty()

auto slang::netlist::TextLocation::empty ( ) const -> bool
inline

◆ hasSourceLocation()

auto slang::netlist::TextLocation::hasSourceLocation ( ) const -> bool
inline

◆ toString()

auto slang::netlist::TextLocation::toString ( FileTable const & fileTable) const -> std::string
inline

Member Data Documentation

◆ column

size_t slang::netlist::TextLocation::column {0}

◆ fileIndex

uint32_t slang::netlist::TextLocation::fileIndex {FileTable::NoFile}

◆ line

size_t slang::netlist::TextLocation::line {0}

◆ sourceLocation

SourceLocation slang::netlist::TextLocation::sourceLocation {SourceLocation::NoLocation}

Transient — populated during construction, remains NoLocation after deserialisation. Not written to / read from JSON.


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