Halide 19.0.0
Halide compiler and libraries
Loading...
Searching...
No Matches
Halide::Internal::BaseExprNode Struct Referenceabstract

A base class for expression nodes. More...

#include <Expr.h>

Inheritance diagram for Halide::Internal::BaseExprNode:
Halide::Internal::IRNode Halide::Internal::ExprNode< Add > Halide::Internal::ExprNode< And > Halide::Internal::ExprNode< Broadcast > Halide::Internal::ExprNode< Call > Halide::Internal::ExprNode< Cast > Halide::Internal::ExprNode< Div > Halide::Internal::ExprNode< EQ > Halide::Internal::ExprNode< FloatImm > Halide::Internal::ExprNode< GE > Halide::Internal::ExprNode< GT > Halide::Internal::ExprNode< IntImm > Halide::Internal::ExprNode< LE > Halide::Internal::ExprNode< LT > Halide::Internal::ExprNode< Let > Halide::Internal::ExprNode< Load > Halide::Internal::ExprNode< Max > Halide::Internal::ExprNode< Min > Halide::Internal::ExprNode< Mod > Halide::Internal::ExprNode< Mul > Halide::Internal::ExprNode< NE > Halide::Internal::ExprNode< Not > Halide::Internal::ExprNode< Or > Halide::Internal::ExprNode< Ramp > Halide::Internal::ExprNode< Reinterpret > Halide::Internal::ExprNode< Select > Halide::Internal::ExprNode< Shuffle > Halide::Internal::ExprNode< StringImm > Halide::Internal::ExprNode< Sub > Halide::Internal::ExprNode< UIntImm > Halide::Internal::ExprNode< Variable > Halide::Internal::ExprNode< VectorReduce > Halide::Internal::ExprNode< T >

Public Member Functions

 BaseExprNode (IRNodeType t)
 
virtual Expr mutate_expr (IRMutator *v) const =0
 
- Public Member Functions inherited from Halide::Internal::IRNode
virtual void accept (IRVisitor *v) const =0
 We use the visitor pattern to traverse IR nodes throughout the compiler, so we have a virtual accept method which accepts visitors.
 
 IRNode (IRNodeType t)
 
virtual ~IRNode ()=default
 

Public Attributes

Type type
 
- Public Attributes inherited from Halide::Internal::IRNode
RefCount ref_count
 These classes are all managed with intrusive reference counting, so we also track a reference count.
 
IRNodeType node_type
 Each IR node subclass has a unique identifier.
 

Detailed Description

A base class for expression nodes.

They all contain their types (e.g. Int(32), Float(32))

Definition at line 143 of file Expr.h.

Constructor & Destructor Documentation

◆ BaseExprNode()

Halide::Internal::BaseExprNode::BaseExprNode ( IRNodeType t)
inline

Definition at line 144 of file Expr.h.

Member Function Documentation

◆ mutate_expr()

Member Data Documentation

◆ type


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