CIRCT  20.0.0git
Public Member Functions | Private Member Functions | Private Attributes | Friends | List of all members
circt::igraph::InstancePath Class Referencefinal

An instance path composed of a series of instances. More...

#include <InstanceGraph.h>

Collaboration diagram for circt::igraph::InstancePath:
Collaboration graph
[legend]

Public Member Functions

 InstancePath ()=default
 
InstanceOpInterface top () const
 
InstanceOpInterface leaf () const
 
InstancePath dropFront () const
 
InstancePath dropBack () const
 
InstanceOpInterface operator[] (size_t idx) const
 
ArrayRef< InstanceOpInterface >::iterator begin () const
 
ArrayRef< InstanceOpInterface >::iterator end () const
 
size_t size () const
 
bool empty () const
 
bool operator== (const InstancePath &that) const
 
void print (llvm::raw_ostream &into) const
 Print the path to any stream-like object. More...
 

Private Member Functions

 InstancePath (ArrayRef< InstanceOpInterface > path)
 

Private Attributes

ArrayRef< InstanceOpInterface > path
 

Friends

struct InstancePathCache
 

Detailed Description

An instance path composed of a series of instances.

Definition at line 284 of file InstanceGraph.h.

Constructor & Destructor Documentation

◆ InstancePath() [1/2]

circt::igraph::InstancePath::InstancePath ( )
default

Referenced by dropBack(), and dropFront().

◆ InstancePath() [2/2]

circt::igraph::InstancePath::InstancePath ( ArrayRef< InstanceOpInterface >  path)
inlineprivate

Definition at line 316 of file InstanceGraph.h.

Member Function Documentation

◆ begin()

ArrayRef<InstanceOpInterface>::iterator circt::igraph::InstancePath::begin ( ) const
inline

◆ dropBack()

InstancePath circt::igraph::InstancePath::dropBack ( ) const
inline

Definition at line 300 of file InstanceGraph.h.

References InstancePath(), and path.

◆ dropFront()

InstancePath circt::igraph::InstancePath::dropFront ( ) const
inline

Definition at line 298 of file InstanceGraph.h.

References InstancePath(), and path.

◆ empty()

bool circt::igraph::InstancePath::empty ( ) const
inline

Definition at line 306 of file InstanceGraph.h.

References path.

Referenced by leaf(), and top().

◆ end()

ArrayRef<InstanceOpInterface>::iterator circt::igraph::InstancePath::end ( ) const
inline

◆ leaf()

InstanceOpInterface circt::igraph::InstancePath::leaf ( ) const
inline

Definition at line 293 of file InstanceGraph.h.

References assert(), empty(), and path.

◆ operator==()

bool circt::igraph::InstancePath::operator== ( const InstancePath that) const
inline

Definition at line 308 of file InstanceGraph.h.

References path.

◆ operator[]()

InstanceOpInterface circt::igraph::InstancePath::operator[] ( size_t  idx) const
inline

Definition at line 302 of file InstanceGraph.h.

References path.

◆ print()

void InstancePath::print ( llvm::raw_ostream &  into) const

Print the path to any stream-like object.

Definition at line 278 of file InstanceGraph.cpp.

Referenced by circt::igraph::operator<<().

◆ size()

size_t circt::igraph::InstancePath::size ( ) const
inline

◆ top()

InstanceOpInterface circt::igraph::InstancePath::top ( ) const
inline

Definition at line 288 of file InstanceGraph.h.

References assert(), empty(), and path.

Friends And Related Function Documentation

◆ InstancePathCache

friend struct InstancePathCache
friend

Definition at line 315 of file InstanceGraph.h.

Member Data Documentation

◆ path

ArrayRef<InstanceOpInterface> circt::igraph::InstancePath::path
private

Definition at line 318 of file InstanceGraph.h.

Referenced by begin(), dropBack(), dropFront(), empty(), end(), leaf(), operator==(), operator[](), size(), and top().


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