CIRCT  20.0.0git
Public Member Functions | List of all members
circt::hw::StmtVisitor< ConcreteType, ResultType, ExtraArgs > Class Template Reference

This helps visit TypeOp nodes. More...

#include <HWVisitors.h>

Public Member Functions

ResultType dispatchStmtVisitor (Operation *op, ExtraArgs... args)
 
ResultType visitInvalidStmt (Operation *op, ExtraArgs... args)
 This callback is invoked on any non-expression operations. More...
 
ResultType visitUnhandledTypeOp (Operation *op, ExtraArgs... args)
 This callback is invoked on any combinational operations that are not handled by the concrete visitor. More...
 
ResultType visitBinaryTypeOp (Operation *op, ExtraArgs... args)
 This fallback is invoked on any binary node that isn't explicitly handled. More...
 
ResultType visitUnaryTypeOp (Operation *op, ExtraArgs... args)
 
 HANDLE (OutputOp, Unhandled)
 
 HANDLE (InstanceOp, Unhandled)
 
 HANDLE (InstanceChoiceOp, Unhandled)
 
 HANDLE (TypeScopeOp, Unhandled)
 
 HANDLE (TypedeclOp, Unhandled)
 

Detailed Description

template<typename ConcreteType, typename ResultType = void, typename... ExtraArgs>
class circt::hw::StmtVisitor< ConcreteType, ResultType, ExtraArgs >

This helps visit TypeOp nodes.

Definition at line 87 of file HWVisitors.h.

Member Function Documentation

◆ dispatchStmtVisitor()

template<typename ConcreteType , typename ResultType = void, typename... ExtraArgs>
ResultType circt::hw::StmtVisitor< ConcreteType, ResultType, ExtraArgs >::dispatchStmtVisitor ( Operation *  op,
ExtraArgs...  args 
)
inline

Definition at line 89 of file HWVisitors.h.

◆ HANDLE() [1/5]

template<typename ConcreteType , typename ResultType = void, typename... ExtraArgs>
circt::hw::StmtVisitor< ConcreteType, ResultType, ExtraArgs >::HANDLE ( InstanceChoiceOp  ,
Unhandled   
)

◆ HANDLE() [2/5]

template<typename ConcreteType , typename ResultType = void, typename... ExtraArgs>
circt::hw::StmtVisitor< ConcreteType, ResultType, ExtraArgs >::HANDLE ( InstanceOp  ,
Unhandled   
)

◆ HANDLE() [3/5]

template<typename ConcreteType , typename ResultType = void, typename... ExtraArgs>
circt::hw::StmtVisitor< ConcreteType, ResultType, ExtraArgs >::HANDLE ( OutputOp  ,
Unhandled   
)

◆ HANDLE() [4/5]

template<typename ConcreteType , typename ResultType = void, typename... ExtraArgs>
circt::hw::StmtVisitor< ConcreteType, ResultType, ExtraArgs >::HANDLE ( TypedeclOp  ,
Unhandled   
)

◆ HANDLE() [5/5]

template<typename ConcreteType , typename ResultType = void, typename... ExtraArgs>
circt::hw::StmtVisitor< ConcreteType, ResultType, ExtraArgs >::HANDLE ( TypeScopeOp  ,
Unhandled   
)

◆ visitBinaryTypeOp()

template<typename ConcreteType , typename ResultType = void, typename... ExtraArgs>
ResultType circt::hw::StmtVisitor< ConcreteType, ResultType, ExtraArgs >::visitBinaryTypeOp ( Operation *  op,
ExtraArgs...  args 
)
inline

This fallback is invoked on any binary node that isn't explicitly handled.

The default implementation delegates to the 'unhandled' fallback.

Definition at line 115 of file HWVisitors.h.

References circt::hw::StmtVisitor< ConcreteType, ResultType, ExtraArgs >::visitUnhandledTypeOp().

◆ visitInvalidStmt()

template<typename ConcreteType , typename ResultType = void, typename... ExtraArgs>
ResultType circt::hw::StmtVisitor< ConcreteType, ResultType, ExtraArgs >::visitInvalidStmt ( Operation *  op,
ExtraArgs...  args 
)
inline

This callback is invoked on any non-expression operations.

Definition at line 102 of file HWVisitors.h.

◆ visitUnaryTypeOp()

template<typename ConcreteType , typename ResultType = void, typename... ExtraArgs>
ResultType circt::hw::StmtVisitor< ConcreteType, ResultType, ExtraArgs >::visitUnaryTypeOp ( Operation *  op,
ExtraArgs...  args 
)
inline

◆ visitUnhandledTypeOp()

template<typename ConcreteType , typename ResultType = void, typename... ExtraArgs>
ResultType circt::hw::StmtVisitor< ConcreteType, ResultType, ExtraArgs >::visitUnhandledTypeOp ( Operation *  op,
ExtraArgs...  args 
)
inline

This callback is invoked on any combinational operations that are not handled by the concrete visitor.

Definition at line 109 of file HWVisitors.h.

Referenced by circt::hw::StmtVisitor< ConcreteType, ResultType, ExtraArgs >::visitBinaryTypeOp(), and circt::hw::StmtVisitor< ConcreteType, ResultType, ExtraArgs >::visitUnaryTypeOp().


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