slang-netlist  0.10.0
Loading...
Searching...
No Matches
slang::report::ReportDrivers Class Reference

Visitor for printing driver information. More...

#include <ReportDrivers.hpp>

Inheritance diagram for slang::report::ReportDrivers:
slang::report::ReportVisitorBase< ReportDrivers, ValueInfo >

Public Member Functions

 ReportDrivers (ast::Compilation &compilation, analysis::AnalysisManager &analysisManager)
auto tableHeader () const -> netlist::Utilities::Row
void appendItemRows (netlist::Utilities::Table &table, ValueInfo const &value) const
void emitJsonItem (JsonWriter &writer, ValueInfo const &value) const
void handle (ast::ValueSymbol const &symbol)
Public Member Functions inherited from slang::report::ReportVisitorBase< ReportDrivers, ValueInfo >
 ReportVisitorBase (ast::Compilation &compilation)
void setNameFilters (std::vector< std::string > filters)
void report (FormatBuffer &buffer)
 Render the collected information as a human-readable table.

Additional Inherited Members

Protected Member Functions inherited from slang::report::ReportVisitorBase< ReportDrivers, ValueInfo >
auto locationStr (SourceLocation loc) const -> std::string
 Format a source location using the compilation's SourceManager.
auto nameMatches (std::string_view name) const -> bool
Protected Attributes inherited from slang::report::ReportVisitorBase< ReportDrivers, ValueInfo >
ast::Compilation & compilation
std::vector< ValueInfoitems
std::vector< std::string > nameFilters

Detailed Description

Visitor for printing driver information.

Constructor & Destructor Documentation

◆ ReportDrivers()

slang::report::ReportDrivers::ReportDrivers ( ast::Compilation & compilation,
analysis::AnalysisManager & analysisManager )
inlineexplicit

Member Function Documentation

◆ appendItemRows()

void slang::report::ReportDrivers::appendItemRows ( netlist::Utilities::Table & table,
ValueInfo const & value ) const
inline

◆ emitJsonItem()

void slang::report::ReportDrivers::emitJsonItem ( JsonWriter & writer,
ValueInfo const & value ) const
inline

◆ handle()

void slang::report::ReportDrivers::handle ( ast::ValueSymbol const & symbol)
inline

Slang's AnalysisManager::getDrivers API returns all known drivers for static lvalue symbols (via the ValueSymbol type). Create a ValueInfo entry for each symbol and populate it with the driver information.

◆ tableHeader()

auto slang::report::ReportDrivers::tableHeader ( ) const -> netlist::Utilities::Row
inline

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