CIRCT  19.0.0git
Public Member Functions | Private Attributes | List of all members
circt::hw::InnerSymbolTableCollection Class Reference

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

#include <InnerSymbolTable.h>

Collaboration diagram for circt::hw::InnerSymbolTableCollection:
Collaboration graph
[legend]

Public Member Functions

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

Private Attributes

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

Detailed Description

This class represents a collection of InnerSymbolTable's.

Definition at line 200 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 211 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 160 of file InnerSymbolTable.cpp.

Referenced by circt::hw::InnerRefNamespace::lookup(), and circt::hw::InnerRefNamespace::lookupOp().

◆ 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 168 of file InnerSymbolTable.cpp.

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 223 of file InnerSymbolTable.h.


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