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

ExprVisitor is a visitor for FIRRTL expression nodes. More...

#include <FIRRTLVisitors.h>

Inheritance diagram for circt::firrtl::ExprVisitor< ConcreteType, ResultType, ExtraArgs >:
Inheritance graph
[legend]

Public Member Functions

ResultType dispatchExprVisitor (Operation *op, ExtraArgs... args)
 
ResultType visitInvalidExpr (Operation *op, ExtraArgs... args)
 This callback is invoked on any non-expression operations. More...
 
ResultType visitUnhandledExpr (Operation *op, ExtraArgs... args)
 This callback is invoked on any expression operations that are not handled by the concrete visitor. More...
 
ResultType visitUnaryExpr (Operation *op, ExtraArgs... args)
 This fallback is invoked on any unary expr that isn't explicitly handled. More...
 
ResultType visitBinaryExpr (Operation *op, ExtraArgs... args)
 This fallback is invoked on any binary expr that isn't explicitly handled. More...
 
 HANDLE (ConstantOp, Unhandled)
 
 HANDLE (SpecialConstantOp, Unhandled)
 
 HANDLE (AggregateConstantOp, Unhandled)
 
 HANDLE (BundleCreateOp, Unhandled)
 
 HANDLE (VectorCreateOp, Unhandled)
 
 HANDLE (FEnumCreateOp, Unhandled)
 
 HANDLE (SubfieldOp, Unhandled)
 
 HANDLE (SubindexOp, Unhandled)
 
 HANDLE (SubaccessOp, Unhandled)
 
 HANDLE (IsTagOp, Unhandled)
 
 HANDLE (SubtagOp, Unhandled)
 
 HANDLE (TagExtractOp, Unhandled)
 
 HANDLE (MultibitMuxOp, Unhandled)
 
 HANDLE (OpenSubfieldOp, Unhandled)
 
 HANDLE (OpenSubindexOp, Unhandled)
 
 HANDLE (ObjectSubfieldOp, Unhandled)
 
 HANDLE (ObjectAnyRefCastOp, Unhandled)
 
 HANDLE (AddPrimOp, Binary)
 
 HANDLE (SubPrimOp, Binary)
 
 HANDLE (MulPrimOp, Binary)
 
 HANDLE (DivPrimOp, Binary)
 
 HANDLE (RemPrimOp, Binary)
 
 HANDLE (AndPrimOp, Binary)
 
 HANDLE (OrPrimOp, Binary)
 
 HANDLE (XorPrimOp, Binary)
 
 HANDLE (LEQPrimOp, Binary)
 
 HANDLE (LTPrimOp, Binary)
 
 HANDLE (GEQPrimOp, Binary)
 
 HANDLE (GTPrimOp, Binary)
 
 HANDLE (EQPrimOp, Binary)
 
 HANDLE (NEQPrimOp, Binary)
 
 HANDLE (CatPrimOp, Binary)
 
 HANDLE (DShlPrimOp, Binary)
 
 HANDLE (DShlwPrimOp, Binary)
 
 HANDLE (DShrPrimOp, Binary)
 
 HANDLE (AsSIntPrimOp, Unary)
 
 HANDLE (AsUIntPrimOp, Unary)
 
 HANDLE (AsAsyncResetPrimOp, Unary)
 
 HANDLE (AsClockPrimOp, Unary)
 
 HANDLE (CvtPrimOp, Unary)
 
 HANDLE (NegPrimOp, Unary)
 
 HANDLE (NotPrimOp, Unary)
 
 HANDLE (AndRPrimOp, Unary)
 
 HANDLE (OrRPrimOp, Unary)
 
 HANDLE (XorRPrimOp, Unary)
 
 HANDLE (ElementwiseOrPrimOp, Unhandled)
 
 HANDLE (ElementwiseAndPrimOp, Unhandled)
 
 HANDLE (ElementwiseXorPrimOp, Unhandled)
 
 HANDLE (IsXIntrinsicOp, Unhandled)
 
 HANDLE (PlusArgsValueIntrinsicOp, Unhandled)
 
 HANDLE (PlusArgsTestIntrinsicOp, Unhandled)
 
 HANDLE (SizeOfIntrinsicOp, Unhandled)
 
 HANDLE (ClockGateIntrinsicOp, Unhandled)
 
 HANDLE (ClockInverterIntrinsicOp, Unhandled)
 
 HANDLE (ClockDividerIntrinsicOp, Unhandled)
 
 HANDLE (LTLAndIntrinsicOp, Unhandled)
 
 HANDLE (LTLOrIntrinsicOp, Unhandled)
 
 HANDLE (LTLIntersectIntrinsicOp, Unhandled)
 
 HANDLE (LTLDelayIntrinsicOp, Unhandled)
 
 HANDLE (LTLConcatIntrinsicOp, Unhandled)
 
 HANDLE (LTLRepeatIntrinsicOp, Unhandled)
 
 HANDLE (LTLGoToRepeatIntrinsicOp, Unhandled)
 
 HANDLE (LTLNonConsecutiveRepeatIntrinsicOp, Unhandled)
 
 HANDLE (LTLNotIntrinsicOp, Unhandled)
 
 HANDLE (LTLImplicationIntrinsicOp, Unhandled)
 
 HANDLE (LTLUntilIntrinsicOp, Unhandled)
 
 HANDLE (LTLEventuallyIntrinsicOp, Unhandled)
 
 HANDLE (LTLClockIntrinsicOp, Unhandled)
 
 HANDLE (Mux4CellIntrinsicOp, Unhandled)
 
 HANDLE (Mux2CellIntrinsicOp, Unhandled)
 
 HANDLE (HasBeenResetIntrinsicOp, Unhandled)
 
 HANDLE (BitsPrimOp, Unhandled)
 
 HANDLE (HeadPrimOp, Unhandled)
 
 HANDLE (InvalidValueOp, Unhandled)
 
 HANDLE (MuxPrimOp, Unhandled)
 
 HANDLE (PadPrimOp, Unhandled)
 
 HANDLE (ShlPrimOp, Unhandled)
 
 HANDLE (ShrPrimOp, Unhandled)
 
 HANDLE (TailPrimOp, Unhandled)
 
 HANDLE (VerbatimExprOp, Unhandled)
 
 HANDLE (RefSendOp, Unhandled)
 
 HANDLE (RefResolveOp, Unhandled)
 
 HANDLE (RefSubOp, Unhandled)
 
 HANDLE (RWProbeOp, Unhandled)
 
 HANDLE (XMRRefOp, Unhandled)
 
 HANDLE (XMRDerefOp, Unhandled)
 
 HANDLE (HWStructCastOp, Unhandled)
 
 HANDLE (UninferredResetCastOp, Unhandled)
 
 HANDLE (ConstCastOp, Unhandled)
 
 HANDLE (BitCastOp, Unhandled)
 
 HANDLE (RefCastOp, Unhandled)
 
 HANDLE (StringConstantOp, Unhandled)
 
 HANDLE (FIntegerConstantOp, Unhandled)
 
 HANDLE (BoolConstantOp, Unhandled)
 
 HANDLE (DoubleConstantOp, Unhandled)
 
 HANDLE (ListCreateOp, Unhandled)
 
 HANDLE (ListConcatOp, Unhandled)
 
 HANDLE (PathOp, Unhandled)
 
 HANDLE (UnresolvedPathOp, Unhandled)
 
 HANDLE (IntegerAddOp, Unhandled)
 
 HANDLE (IntegerMulOp, Unhandled)
 
 HANDLE (IntegerShrOp, Unhandled)
 

Detailed Description

template<typename ConcreteType, typename ResultType = void, typename... ExtraArgs>
class circt::firrtl::ExprVisitor< ConcreteType, ResultType, ExtraArgs >

ExprVisitor is a visitor for FIRRTL expression nodes.

Definition at line 26 of file FIRRTLVisitors.h.

Member Function Documentation

◆ dispatchExprVisitor()

template<typename ConcreteType , typename ResultType = void, typename... ExtraArgs>
ResultType circt::firrtl::ExprVisitor< ConcreteType, ResultType, ExtraArgs >::dispatchExprVisitor ( Operation *  op,
ExtraArgs...  args 
)
inline

Definition at line 28 of file FIRRTLVisitors.h.

Referenced by circt::firrtl::isExpression().

◆ HANDLE() [1/102]

template<typename ConcreteType , typename ResultType = void, typename... ExtraArgs>
circt::firrtl::ExprVisitor< ConcreteType, ResultType, ExtraArgs >::HANDLE ( AddPrimOp  ,
Binary   
)

◆ HANDLE() [2/102]

template<typename ConcreteType , typename ResultType = void, typename... ExtraArgs>
circt::firrtl::ExprVisitor< ConcreteType, ResultType, ExtraArgs >::HANDLE ( AggregateConstantOp  ,
Unhandled   
)

◆ HANDLE() [3/102]

template<typename ConcreteType , typename ResultType = void, typename... ExtraArgs>
circt::firrtl::ExprVisitor< ConcreteType, ResultType, ExtraArgs >::HANDLE ( AndPrimOp  ,
Binary   
)

◆ HANDLE() [4/102]

template<typename ConcreteType , typename ResultType = void, typename... ExtraArgs>
circt::firrtl::ExprVisitor< ConcreteType, ResultType, ExtraArgs >::HANDLE ( AndRPrimOp  ,
Unary   
)

◆ HANDLE() [5/102]

template<typename ConcreteType , typename ResultType = void, typename... ExtraArgs>
circt::firrtl::ExprVisitor< ConcreteType, ResultType, ExtraArgs >::HANDLE ( AsAsyncResetPrimOp  ,
Unary   
)

◆ HANDLE() [6/102]

template<typename ConcreteType , typename ResultType = void, typename... ExtraArgs>
circt::firrtl::ExprVisitor< ConcreteType, ResultType, ExtraArgs >::HANDLE ( AsClockPrimOp  ,
Unary   
)

◆ HANDLE() [7/102]

template<typename ConcreteType , typename ResultType = void, typename... ExtraArgs>
circt::firrtl::ExprVisitor< ConcreteType, ResultType, ExtraArgs >::HANDLE ( AsSIntPrimOp  ,
Unary   
)

◆ HANDLE() [8/102]

template<typename ConcreteType , typename ResultType = void, typename... ExtraArgs>
circt::firrtl::ExprVisitor< ConcreteType, ResultType, ExtraArgs >::HANDLE ( AsUIntPrimOp  ,
Unary   
)

◆ HANDLE() [9/102]

template<typename ConcreteType , typename ResultType = void, typename... ExtraArgs>
circt::firrtl::ExprVisitor< ConcreteType, ResultType, ExtraArgs >::HANDLE ( BitCastOp  ,
Unhandled   
)

◆ HANDLE() [10/102]

template<typename ConcreteType , typename ResultType = void, typename... ExtraArgs>
circt::firrtl::ExprVisitor< ConcreteType, ResultType, ExtraArgs >::HANDLE ( BitsPrimOp  ,
Unhandled   
)

◆ HANDLE() [11/102]

template<typename ConcreteType , typename ResultType = void, typename... ExtraArgs>
circt::firrtl::ExprVisitor< ConcreteType, ResultType, ExtraArgs >::HANDLE ( BoolConstantOp  ,
Unhandled   
)

◆ HANDLE() [12/102]

template<typename ConcreteType , typename ResultType = void, typename... ExtraArgs>
circt::firrtl::ExprVisitor< ConcreteType, ResultType, ExtraArgs >::HANDLE ( BundleCreateOp  ,
Unhandled   
)

◆ HANDLE() [13/102]

template<typename ConcreteType , typename ResultType = void, typename... ExtraArgs>
circt::firrtl::ExprVisitor< ConcreteType, ResultType, ExtraArgs >::HANDLE ( CatPrimOp  ,
Binary   
)

◆ HANDLE() [14/102]

template<typename ConcreteType , typename ResultType = void, typename... ExtraArgs>
circt::firrtl::ExprVisitor< ConcreteType, ResultType, ExtraArgs >::HANDLE ( ClockDividerIntrinsicOp  ,
Unhandled   
)

◆ HANDLE() [15/102]

template<typename ConcreteType , typename ResultType = void, typename... ExtraArgs>
circt::firrtl::ExprVisitor< ConcreteType, ResultType, ExtraArgs >::HANDLE ( ClockGateIntrinsicOp  ,
Unhandled   
)

◆ HANDLE() [16/102]

template<typename ConcreteType , typename ResultType = void, typename... ExtraArgs>
circt::firrtl::ExprVisitor< ConcreteType, ResultType, ExtraArgs >::HANDLE ( ClockInverterIntrinsicOp  ,
Unhandled   
)

◆ HANDLE() [17/102]

template<typename ConcreteType , typename ResultType = void, typename... ExtraArgs>
circt::firrtl::ExprVisitor< ConcreteType, ResultType, ExtraArgs >::HANDLE ( ConstantOp  ,
Unhandled   
)

◆ HANDLE() [18/102]

template<typename ConcreteType , typename ResultType = void, typename... ExtraArgs>
circt::firrtl::ExprVisitor< ConcreteType, ResultType, ExtraArgs >::HANDLE ( ConstCastOp  ,
Unhandled   
)

◆ HANDLE() [19/102]

template<typename ConcreteType , typename ResultType = void, typename... ExtraArgs>
circt::firrtl::ExprVisitor< ConcreteType, ResultType, ExtraArgs >::HANDLE ( CvtPrimOp  ,
Unary   
)

◆ HANDLE() [20/102]

template<typename ConcreteType , typename ResultType = void, typename... ExtraArgs>
circt::firrtl::ExprVisitor< ConcreteType, ResultType, ExtraArgs >::HANDLE ( DivPrimOp  ,
Binary   
)

◆ HANDLE() [21/102]

template<typename ConcreteType , typename ResultType = void, typename... ExtraArgs>
circt::firrtl::ExprVisitor< ConcreteType, ResultType, ExtraArgs >::HANDLE ( DoubleConstantOp  ,
Unhandled   
)

◆ HANDLE() [22/102]

template<typename ConcreteType , typename ResultType = void, typename... ExtraArgs>
circt::firrtl::ExprVisitor< ConcreteType, ResultType, ExtraArgs >::HANDLE ( DShlPrimOp  ,
Binary   
)

◆ HANDLE() [23/102]

template<typename ConcreteType , typename ResultType = void, typename... ExtraArgs>
circt::firrtl::ExprVisitor< ConcreteType, ResultType, ExtraArgs >::HANDLE ( DShlwPrimOp  ,
Binary   
)

◆ HANDLE() [24/102]

template<typename ConcreteType , typename ResultType = void, typename... ExtraArgs>
circt::firrtl::ExprVisitor< ConcreteType, ResultType, ExtraArgs >::HANDLE ( DShrPrimOp  ,
Binary   
)

◆ HANDLE() [25/102]

template<typename ConcreteType , typename ResultType = void, typename... ExtraArgs>
circt::firrtl::ExprVisitor< ConcreteType, ResultType, ExtraArgs >::HANDLE ( ElementwiseAndPrimOp  ,
Unhandled   
)

◆ HANDLE() [26/102]

template<typename ConcreteType , typename ResultType = void, typename... ExtraArgs>
circt::firrtl::ExprVisitor< ConcreteType, ResultType, ExtraArgs >::HANDLE ( ElementwiseOrPrimOp  ,
Unhandled   
)

◆ HANDLE() [27/102]

template<typename ConcreteType , typename ResultType = void, typename... ExtraArgs>
circt::firrtl::ExprVisitor< ConcreteType, ResultType, ExtraArgs >::HANDLE ( ElementwiseXorPrimOp  ,
Unhandled   
)

◆ HANDLE() [28/102]

template<typename ConcreteType , typename ResultType = void, typename... ExtraArgs>
circt::firrtl::ExprVisitor< ConcreteType, ResultType, ExtraArgs >::HANDLE ( EQPrimOp  ,
Binary   
)

◆ HANDLE() [29/102]

template<typename ConcreteType , typename ResultType = void, typename... ExtraArgs>
circt::firrtl::ExprVisitor< ConcreteType, ResultType, ExtraArgs >::HANDLE ( FEnumCreateOp  ,
Unhandled   
)

◆ HANDLE() [30/102]

template<typename ConcreteType , typename ResultType = void, typename... ExtraArgs>
circt::firrtl::ExprVisitor< ConcreteType, ResultType, ExtraArgs >::HANDLE ( FIntegerConstantOp  ,
Unhandled   
)

◆ HANDLE() [31/102]

template<typename ConcreteType , typename ResultType = void, typename... ExtraArgs>
circt::firrtl::ExprVisitor< ConcreteType, ResultType, ExtraArgs >::HANDLE ( GEQPrimOp  ,
Binary   
)

◆ HANDLE() [32/102]

template<typename ConcreteType , typename ResultType = void, typename... ExtraArgs>
circt::firrtl::ExprVisitor< ConcreteType, ResultType, ExtraArgs >::HANDLE ( GTPrimOp  ,
Binary   
)

◆ HANDLE() [33/102]

template<typename ConcreteType , typename ResultType = void, typename... ExtraArgs>
circt::firrtl::ExprVisitor< ConcreteType, ResultType, ExtraArgs >::HANDLE ( HasBeenResetIntrinsicOp  ,
Unhandled   
)

◆ HANDLE() [34/102]

template<typename ConcreteType , typename ResultType = void, typename... ExtraArgs>
circt::firrtl::ExprVisitor< ConcreteType, ResultType, ExtraArgs >::HANDLE ( HeadPrimOp  ,
Unhandled   
)

◆ HANDLE() [35/102]

template<typename ConcreteType , typename ResultType = void, typename... ExtraArgs>
circt::firrtl::ExprVisitor< ConcreteType, ResultType, ExtraArgs >::HANDLE ( HWStructCastOp  ,
Unhandled   
)

◆ HANDLE() [36/102]

template<typename ConcreteType , typename ResultType = void, typename... ExtraArgs>
circt::firrtl::ExprVisitor< ConcreteType, ResultType, ExtraArgs >::HANDLE ( IntegerAddOp  ,
Unhandled   
)

◆ HANDLE() [37/102]

template<typename ConcreteType , typename ResultType = void, typename... ExtraArgs>
circt::firrtl::ExprVisitor< ConcreteType, ResultType, ExtraArgs >::HANDLE ( IntegerMulOp  ,
Unhandled   
)

◆ HANDLE() [38/102]

template<typename ConcreteType , typename ResultType = void, typename... ExtraArgs>
circt::firrtl::ExprVisitor< ConcreteType, ResultType, ExtraArgs >::HANDLE ( IntegerShrOp  ,
Unhandled   
)

◆ HANDLE() [39/102]

template<typename ConcreteType , typename ResultType = void, typename... ExtraArgs>
circt::firrtl::ExprVisitor< ConcreteType, ResultType, ExtraArgs >::HANDLE ( InvalidValueOp  ,
Unhandled   
)

◆ HANDLE() [40/102]

template<typename ConcreteType , typename ResultType = void, typename... ExtraArgs>
circt::firrtl::ExprVisitor< ConcreteType, ResultType, ExtraArgs >::HANDLE ( IsTagOp  ,
Unhandled   
)

◆ HANDLE() [41/102]

template<typename ConcreteType , typename ResultType = void, typename... ExtraArgs>
circt::firrtl::ExprVisitor< ConcreteType, ResultType, ExtraArgs >::HANDLE ( IsXIntrinsicOp  ,
Unhandled   
)

◆ HANDLE() [42/102]

template<typename ConcreteType , typename ResultType = void, typename... ExtraArgs>
circt::firrtl::ExprVisitor< ConcreteType, ResultType, ExtraArgs >::HANDLE ( LEQPrimOp  ,
Binary   
)

◆ HANDLE() [43/102]

template<typename ConcreteType , typename ResultType = void, typename... ExtraArgs>
circt::firrtl::ExprVisitor< ConcreteType, ResultType, ExtraArgs >::HANDLE ( ListConcatOp  ,
Unhandled   
)

◆ HANDLE() [44/102]

template<typename ConcreteType , typename ResultType = void, typename... ExtraArgs>
circt::firrtl::ExprVisitor< ConcreteType, ResultType, ExtraArgs >::HANDLE ( ListCreateOp  ,
Unhandled   
)

◆ HANDLE() [45/102]

template<typename ConcreteType , typename ResultType = void, typename... ExtraArgs>
circt::firrtl::ExprVisitor< ConcreteType, ResultType, ExtraArgs >::HANDLE ( LTLAndIntrinsicOp  ,
Unhandled   
)

◆ HANDLE() [46/102]

template<typename ConcreteType , typename ResultType = void, typename... ExtraArgs>
circt::firrtl::ExprVisitor< ConcreteType, ResultType, ExtraArgs >::HANDLE ( LTLClockIntrinsicOp  ,
Unhandled   
)

◆ HANDLE() [47/102]

template<typename ConcreteType , typename ResultType = void, typename... ExtraArgs>
circt::firrtl::ExprVisitor< ConcreteType, ResultType, ExtraArgs >::HANDLE ( LTLConcatIntrinsicOp  ,
Unhandled   
)

◆ HANDLE() [48/102]

template<typename ConcreteType , typename ResultType = void, typename... ExtraArgs>
circt::firrtl::ExprVisitor< ConcreteType, ResultType, ExtraArgs >::HANDLE ( LTLDelayIntrinsicOp  ,
Unhandled   
)

◆ HANDLE() [49/102]

template<typename ConcreteType , typename ResultType = void, typename... ExtraArgs>
circt::firrtl::ExprVisitor< ConcreteType, ResultType, ExtraArgs >::HANDLE ( LTLEventuallyIntrinsicOp  ,
Unhandled   
)

◆ HANDLE() [50/102]

template<typename ConcreteType , typename ResultType = void, typename... ExtraArgs>
circt::firrtl::ExprVisitor< ConcreteType, ResultType, ExtraArgs >::HANDLE ( LTLGoToRepeatIntrinsicOp  ,
Unhandled   
)

◆ HANDLE() [51/102]

template<typename ConcreteType , typename ResultType = void, typename... ExtraArgs>
circt::firrtl::ExprVisitor< ConcreteType, ResultType, ExtraArgs >::HANDLE ( LTLImplicationIntrinsicOp  ,
Unhandled   
)

◆ HANDLE() [52/102]

template<typename ConcreteType , typename ResultType = void, typename... ExtraArgs>
circt::firrtl::ExprVisitor< ConcreteType, ResultType, ExtraArgs >::HANDLE ( LTLIntersectIntrinsicOp  ,
Unhandled   
)

◆ HANDLE() [53/102]

template<typename ConcreteType , typename ResultType = void, typename... ExtraArgs>
circt::firrtl::ExprVisitor< ConcreteType, ResultType, ExtraArgs >::HANDLE ( LTLNonConsecutiveRepeatIntrinsicOp  ,
Unhandled   
)

◆ HANDLE() [54/102]

template<typename ConcreteType , typename ResultType = void, typename... ExtraArgs>
circt::firrtl::ExprVisitor< ConcreteType, ResultType, ExtraArgs >::HANDLE ( LTLNotIntrinsicOp  ,
Unhandled   
)

◆ HANDLE() [55/102]

template<typename ConcreteType , typename ResultType = void, typename... ExtraArgs>
circt::firrtl::ExprVisitor< ConcreteType, ResultType, ExtraArgs >::HANDLE ( LTLOrIntrinsicOp  ,
Unhandled   
)

◆ HANDLE() [56/102]

template<typename ConcreteType , typename ResultType = void, typename... ExtraArgs>
circt::firrtl::ExprVisitor< ConcreteType, ResultType, ExtraArgs >::HANDLE ( LTLRepeatIntrinsicOp  ,
Unhandled   
)

◆ HANDLE() [57/102]

template<typename ConcreteType , typename ResultType = void, typename... ExtraArgs>
circt::firrtl::ExprVisitor< ConcreteType, ResultType, ExtraArgs >::HANDLE ( LTLUntilIntrinsicOp  ,
Unhandled   
)

◆ HANDLE() [58/102]

template<typename ConcreteType , typename ResultType = void, typename... ExtraArgs>
circt::firrtl::ExprVisitor< ConcreteType, ResultType, ExtraArgs >::HANDLE ( LTPrimOp  ,
Binary   
)

◆ HANDLE() [59/102]

template<typename ConcreteType , typename ResultType = void, typename... ExtraArgs>
circt::firrtl::ExprVisitor< ConcreteType, ResultType, ExtraArgs >::HANDLE ( MulPrimOp  ,
Binary   
)

◆ HANDLE() [60/102]

template<typename ConcreteType , typename ResultType = void, typename... ExtraArgs>
circt::firrtl::ExprVisitor< ConcreteType, ResultType, ExtraArgs >::HANDLE ( MultibitMuxOp  ,
Unhandled   
)

◆ HANDLE() [61/102]

template<typename ConcreteType , typename ResultType = void, typename... ExtraArgs>
circt::firrtl::ExprVisitor< ConcreteType, ResultType, ExtraArgs >::HANDLE ( Mux2CellIntrinsicOp  ,
Unhandled   
)

◆ HANDLE() [62/102]

template<typename ConcreteType , typename ResultType = void, typename... ExtraArgs>
circt::firrtl::ExprVisitor< ConcreteType, ResultType, ExtraArgs >::HANDLE ( Mux4CellIntrinsicOp  ,
Unhandled   
)

◆ HANDLE() [63/102]

template<typename ConcreteType , typename ResultType = void, typename... ExtraArgs>
circt::firrtl::ExprVisitor< ConcreteType, ResultType, ExtraArgs >::HANDLE ( MuxPrimOp  ,
Unhandled   
)

◆ HANDLE() [64/102]

template<typename ConcreteType , typename ResultType = void, typename... ExtraArgs>
circt::firrtl::ExprVisitor< ConcreteType, ResultType, ExtraArgs >::HANDLE ( NegPrimOp  ,
Unary   
)

◆ HANDLE() [65/102]

template<typename ConcreteType , typename ResultType = void, typename... ExtraArgs>
circt::firrtl::ExprVisitor< ConcreteType, ResultType, ExtraArgs >::HANDLE ( NEQPrimOp  ,
Binary   
)

◆ HANDLE() [66/102]

template<typename ConcreteType , typename ResultType = void, typename... ExtraArgs>
circt::firrtl::ExprVisitor< ConcreteType, ResultType, ExtraArgs >::HANDLE ( NotPrimOp  ,
Unary   
)

◆ HANDLE() [67/102]

template<typename ConcreteType , typename ResultType = void, typename... ExtraArgs>
circt::firrtl::ExprVisitor< ConcreteType, ResultType, ExtraArgs >::HANDLE ( ObjectAnyRefCastOp  ,
Unhandled   
)

◆ HANDLE() [68/102]

template<typename ConcreteType , typename ResultType = void, typename... ExtraArgs>
circt::firrtl::ExprVisitor< ConcreteType, ResultType, ExtraArgs >::HANDLE ( ObjectSubfieldOp  ,
Unhandled   
)

◆ HANDLE() [69/102]

template<typename ConcreteType , typename ResultType = void, typename... ExtraArgs>
circt::firrtl::ExprVisitor< ConcreteType, ResultType, ExtraArgs >::HANDLE ( OpenSubfieldOp  ,
Unhandled   
)

◆ HANDLE() [70/102]

template<typename ConcreteType , typename ResultType = void, typename... ExtraArgs>
circt::firrtl::ExprVisitor< ConcreteType, ResultType, ExtraArgs >::HANDLE ( OpenSubindexOp  ,
Unhandled   
)

◆ HANDLE() [71/102]

template<typename ConcreteType , typename ResultType = void, typename... ExtraArgs>
circt::firrtl::ExprVisitor< ConcreteType, ResultType, ExtraArgs >::HANDLE ( OrPrimOp  ,
Binary   
)

◆ HANDLE() [72/102]

template<typename ConcreteType , typename ResultType = void, typename... ExtraArgs>
circt::firrtl::ExprVisitor< ConcreteType, ResultType, ExtraArgs >::HANDLE ( OrRPrimOp  ,
Unary   
)

◆ HANDLE() [73/102]

template<typename ConcreteType , typename ResultType = void, typename... ExtraArgs>
circt::firrtl::ExprVisitor< ConcreteType, ResultType, ExtraArgs >::HANDLE ( PadPrimOp  ,
Unhandled   
)

◆ HANDLE() [74/102]

template<typename ConcreteType , typename ResultType = void, typename... ExtraArgs>
circt::firrtl::ExprVisitor< ConcreteType, ResultType, ExtraArgs >::HANDLE ( PathOp  ,
Unhandled   
)

◆ HANDLE() [75/102]

template<typename ConcreteType , typename ResultType = void, typename... ExtraArgs>
circt::firrtl::ExprVisitor< ConcreteType, ResultType, ExtraArgs >::HANDLE ( PlusArgsTestIntrinsicOp  ,
Unhandled   
)

◆ HANDLE() [76/102]

template<typename ConcreteType , typename ResultType = void, typename... ExtraArgs>
circt::firrtl::ExprVisitor< ConcreteType, ResultType, ExtraArgs >::HANDLE ( PlusArgsValueIntrinsicOp  ,
Unhandled   
)

◆ HANDLE() [77/102]

template<typename ConcreteType , typename ResultType = void, typename... ExtraArgs>
circt::firrtl::ExprVisitor< ConcreteType, ResultType, ExtraArgs >::HANDLE ( RefCastOp  ,
Unhandled   
)

◆ HANDLE() [78/102]

template<typename ConcreteType , typename ResultType = void, typename... ExtraArgs>
circt::firrtl::ExprVisitor< ConcreteType, ResultType, ExtraArgs >::HANDLE ( RefResolveOp  ,
Unhandled   
)

◆ HANDLE() [79/102]

template<typename ConcreteType , typename ResultType = void, typename... ExtraArgs>
circt::firrtl::ExprVisitor< ConcreteType, ResultType, ExtraArgs >::HANDLE ( RefSendOp  ,
Unhandled   
)

◆ HANDLE() [80/102]

template<typename ConcreteType , typename ResultType = void, typename... ExtraArgs>
circt::firrtl::ExprVisitor< ConcreteType, ResultType, ExtraArgs >::HANDLE ( RefSubOp  ,
Unhandled   
)

◆ HANDLE() [81/102]

template<typename ConcreteType , typename ResultType = void, typename... ExtraArgs>
circt::firrtl::ExprVisitor< ConcreteType, ResultType, ExtraArgs >::HANDLE ( RemPrimOp  ,
Binary   
)

◆ HANDLE() [82/102]

template<typename ConcreteType , typename ResultType = void, typename... ExtraArgs>
circt::firrtl::ExprVisitor< ConcreteType, ResultType, ExtraArgs >::HANDLE ( RWProbeOp  ,
Unhandled   
)

◆ HANDLE() [83/102]

template<typename ConcreteType , typename ResultType = void, typename... ExtraArgs>
circt::firrtl::ExprVisitor< ConcreteType, ResultType, ExtraArgs >::HANDLE ( ShlPrimOp  ,
Unhandled   
)

◆ HANDLE() [84/102]

template<typename ConcreteType , typename ResultType = void, typename... ExtraArgs>
circt::firrtl::ExprVisitor< ConcreteType, ResultType, ExtraArgs >::HANDLE ( ShrPrimOp  ,
Unhandled   
)

◆ HANDLE() [85/102]

template<typename ConcreteType , typename ResultType = void, typename... ExtraArgs>
circt::firrtl::ExprVisitor< ConcreteType, ResultType, ExtraArgs >::HANDLE ( SizeOfIntrinsicOp  ,
Unhandled   
)

◆ HANDLE() [86/102]

template<typename ConcreteType , typename ResultType = void, typename... ExtraArgs>
circt::firrtl::ExprVisitor< ConcreteType, ResultType, ExtraArgs >::HANDLE ( SpecialConstantOp  ,
Unhandled   
)

◆ HANDLE() [87/102]

template<typename ConcreteType , typename ResultType = void, typename... ExtraArgs>
circt::firrtl::ExprVisitor< ConcreteType, ResultType, ExtraArgs >::HANDLE ( StringConstantOp  ,
Unhandled   
)

◆ HANDLE() [88/102]

template<typename ConcreteType , typename ResultType = void, typename... ExtraArgs>
circt::firrtl::ExprVisitor< ConcreteType, ResultType, ExtraArgs >::HANDLE ( SubaccessOp  ,
Unhandled   
)

◆ HANDLE() [89/102]

template<typename ConcreteType , typename ResultType = void, typename... ExtraArgs>
circt::firrtl::ExprVisitor< ConcreteType, ResultType, ExtraArgs >::HANDLE ( SubfieldOp  ,
Unhandled   
)

◆ HANDLE() [90/102]

template<typename ConcreteType , typename ResultType = void, typename... ExtraArgs>
circt::firrtl::ExprVisitor< ConcreteType, ResultType, ExtraArgs >::HANDLE ( SubindexOp  ,
Unhandled   
)

◆ HANDLE() [91/102]

template<typename ConcreteType , typename ResultType = void, typename... ExtraArgs>
circt::firrtl::ExprVisitor< ConcreteType, ResultType, ExtraArgs >::HANDLE ( SubPrimOp  ,
Binary   
)

◆ HANDLE() [92/102]

template<typename ConcreteType , typename ResultType = void, typename... ExtraArgs>
circt::firrtl::ExprVisitor< ConcreteType, ResultType, ExtraArgs >::HANDLE ( SubtagOp  ,
Unhandled   
)

◆ HANDLE() [93/102]

template<typename ConcreteType , typename ResultType = void, typename... ExtraArgs>
circt::firrtl::ExprVisitor< ConcreteType, ResultType, ExtraArgs >::HANDLE ( TagExtractOp  ,
Unhandled   
)

◆ HANDLE() [94/102]

template<typename ConcreteType , typename ResultType = void, typename... ExtraArgs>
circt::firrtl::ExprVisitor< ConcreteType, ResultType, ExtraArgs >::HANDLE ( TailPrimOp  ,
Unhandled   
)

◆ HANDLE() [95/102]

template<typename ConcreteType , typename ResultType = void, typename... ExtraArgs>
circt::firrtl::ExprVisitor< ConcreteType, ResultType, ExtraArgs >::HANDLE ( UninferredResetCastOp  ,
Unhandled   
)

◆ HANDLE() [96/102]

template<typename ConcreteType , typename ResultType = void, typename... ExtraArgs>
circt::firrtl::ExprVisitor< ConcreteType, ResultType, ExtraArgs >::HANDLE ( UnresolvedPathOp  ,
Unhandled   
)

◆ HANDLE() [97/102]

template<typename ConcreteType , typename ResultType = void, typename... ExtraArgs>
circt::firrtl::ExprVisitor< ConcreteType, ResultType, ExtraArgs >::HANDLE ( VectorCreateOp  ,
Unhandled   
)

◆ HANDLE() [98/102]

template<typename ConcreteType , typename ResultType = void, typename... ExtraArgs>
circt::firrtl::ExprVisitor< ConcreteType, ResultType, ExtraArgs >::HANDLE ( VerbatimExprOp  ,
Unhandled   
)

◆ HANDLE() [99/102]

template<typename ConcreteType , typename ResultType = void, typename... ExtraArgs>
circt::firrtl::ExprVisitor< ConcreteType, ResultType, ExtraArgs >::HANDLE ( XMRDerefOp  ,
Unhandled   
)

◆ HANDLE() [100/102]

template<typename ConcreteType , typename ResultType = void, typename... ExtraArgs>
circt::firrtl::ExprVisitor< ConcreteType, ResultType, ExtraArgs >::HANDLE ( XMRRefOp  ,
Unhandled   
)

◆ HANDLE() [101/102]

template<typename ConcreteType , typename ResultType = void, typename... ExtraArgs>
circt::firrtl::ExprVisitor< ConcreteType, ResultType, ExtraArgs >::HANDLE ( XorPrimOp  ,
Binary   
)

◆ HANDLE() [102/102]

template<typename ConcreteType , typename ResultType = void, typename... ExtraArgs>
circt::firrtl::ExprVisitor< ConcreteType, ResultType, ExtraArgs >::HANDLE ( XorRPrimOp  ,
Unary   
)

◆ visitBinaryExpr()

template<typename ConcreteType , typename ResultType = void, typename... ExtraArgs>
ResultType circt::firrtl::ExprVisitor< ConcreteType, ResultType, ExtraArgs >::visitBinaryExpr ( Operation *  op,
ExtraArgs...  args 
)
inline

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

The default implementation delegates to the unhandled expression fallback.

Definition at line 98 of file FIRRTLVisitors.h.

References circt::firrtl::ExprVisitor< ConcreteType, ResultType, ExtraArgs >::visitUnhandledExpr().

◆ visitInvalidExpr()

template<typename ConcreteType , typename ResultType = void, typename... ExtraArgs>
ResultType circt::firrtl::ExprVisitor< ConcreteType, ResultType, ExtraArgs >::visitInvalidExpr ( Operation *  op,
ExtraArgs...  args 
)
inline

This callback is invoked on any non-expression operations.

Definition at line 79 of file FIRRTLVisitors.h.

◆ visitUnaryExpr()

template<typename ConcreteType , typename ResultType = void, typename... ExtraArgs>
ResultType circt::firrtl::ExprVisitor< ConcreteType, ResultType, ExtraArgs >::visitUnaryExpr ( Operation *  op,
ExtraArgs...  args 
)
inline

This fallback is invoked on any unary expr that isn't explicitly handled.

The default implementation delegates to the unhandled expression fallback.

Definition at line 92 of file FIRRTLVisitors.h.

References circt::firrtl::ExprVisitor< ConcreteType, ResultType, ExtraArgs >::visitUnhandledExpr().

◆ visitUnhandledExpr()

template<typename ConcreteType , typename ResultType = void, typename... ExtraArgs>
ResultType circt::firrtl::ExprVisitor< ConcreteType, ResultType, ExtraArgs >::visitUnhandledExpr ( Operation *  op,
ExtraArgs...  args 
)
inline

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

Definition at line 86 of file FIRRTLVisitors.h.

Referenced by circt::firrtl::ExprVisitor< ConcreteType, ResultType, ExtraArgs >::visitBinaryExpr(), and circt::firrtl::ExprVisitor< ConcreteType, ResultType, ExtraArgs >::visitUnaryExpr().


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