CIRCT 24.0.0git
Loading...
Searching...
No Matches
circt::hw::InnerSymbolTableCollection Class Reference

This class represents a collection of InnerSymbolTable's. More...

#include <InnerSymbolTable.h>

Collaboration diagram for circt::hw::InnerSymbolTableCollection:

Public Member Functions

InnerSymbolTable & getInnerSymbolTable (Operation *op)
 Get or create the InnerSymbolTable for the specified operation.
LogicalResult populateAndVerifyTables (Operation *innerRefNSOp)
 Populate tables in parallel for all InnerSymbolTable operations in the given InnerRefNamespace operation, verifying each and returning the verification result.
 InnerSymbolTableCollection ()=default
 InnerSymbolTableCollection (Operation *innerRefNSOp)
 InnerSymbolTableCollection (const InnerSymbolTableCollection &)=delete
InnerSymbolTableCollection & operator= (const InnerSymbolTableCollection &)=delete

Private Attributes

DenseMap< Operation *, std::unique_ptr< InnerSymbolTable > > symbolTables
 This maps Operations to their InnnerSymbolTable's.

Detailed Description

This class represents a collection of InnerSymbolTable's.

Definition at line 208 of file InnerSymbolTable.h.

Constructor & Destructor Documentation

◆ InnerSymbolTableCollection() [1/3]

circt::hw::InnerSymbolTableCollection::InnerSymbolTableCollection ( )
explicitdefault

◆ InnerSymbolTableCollection() [2/3]

circt::hw::InnerSymbolTableCollection::InnerSymbolTableCollection ( Operation * innerRefNSOp)
inlineexplicit

Definition at line 219 of file InnerSymbolTable.h.

References assert(), and populateAndVerifyTables().

◆ InnerSymbolTableCollection() [3/3]

circt::hw::InnerSymbolTableCollection::InnerSymbolTableCollection ( const InnerSymbolTableCollection & )
delete

Member Function Documentation

◆ getInnerSymbolTable()

InnerSymbolTable & circt::hw::InnerSymbolTableCollection::getInnerSymbolTable ( Operation * op)

Get or create the InnerSymbolTable for the specified operation.

Definition at line 161 of file InnerSymbolTable.cpp.

References symbolTables.

◆ operator=()

InnerSymbolTableCollection & circt::hw::InnerSymbolTableCollection::operator= ( const InnerSymbolTableCollection & )
delete

◆ populateAndVerifyTables()

LogicalResult circt::hw::InnerSymbolTableCollection::populateAndVerifyTables ( Operation * innerRefNSOp)

Populate tables in parallel for all InnerSymbolTable operations in the given InnerRefNamespace operation, verifying each and returning the verification result.

Definition at line 169 of file InnerSymbolTable.cpp.

References failure(), and symbolTables.

Referenced by InnerSymbolTableCollection(), and circt::hw::detail::verifyInnerRefNamespace().

Member Data Documentation

◆ symbolTables

DenseMap<Operation *, std::unique_ptr<InnerSymbolTable> > circt::hw::InnerSymbolTableCollection::symbolTables
private

This maps Operations to their InnnerSymbolTable's.

Definition at line 231 of file InnerSymbolTable.h.

Referenced by getInnerSymbolTable(), and populateAndVerifyTables().


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