Halide 22.0.0 Halide compiler and libraries

Classes | Public Member Functions | List of all members
Halide::Internal::Stmt Struct Reference

A reference-counted handle to a statement node. More...

`#include <Expr.h>`

Inheritance diagram for Halide::Internal::Stmt:

## Classes
struct | Compare
| This lets you use a Stmt as a key in a map of the form map<Stmt, Foo, Stmt::Compare> More...

## Public Member Functions
| Stmt ()=default
| Stmt (const BaseStmtNode *n)
HALIDE_ALWAYS_INLINE const BaseStmtNode * | get () const
| Override get() to return a BaseStmtNode * instead of an IRNode *. More...
Public Member Functions inherited from Halide::Internal::IRHandle
HALIDE_ALWAYS_INLINE | IRHandle ()=default
HALIDE_ALWAYS_INLINE | IRHandle (const IRNode *p)
void | accept (IRVisitor *v) const
| Dispatch to the correct visitor method for this node. More...
template<typename T >
const T * | as () const
| Downcast this ir node to its actual type (e.g. More...
IRNodeType | node_type () const
Public Member Functions inherited from Halide::Internal::IntrusivePtr< const IRNode >
const IRNode * | get () const
| Access the raw pointer in a variety of ways. More...
const IRNode & | operator* () const
const IRNode * | operator-> () const
| ~IntrusivePtr ()
HALIDE_ALWAYS_INLINE | IntrusivePtr ()=default
HALIDE_ALWAYS_INLINE | IntrusivePtr (const IRNode *p)
HALIDE_ALWAYS_INLINE | IntrusivePtr (const IntrusivePtr< const IRNode > &other) noexcept
HALIDE_ALWAYS_INLINE | IntrusivePtr (IntrusivePtr< const IRNode > &&other) noexcept
IntrusivePtr< const IRNode > & | operator= (const IntrusivePtr< const IRNode > &other)
IntrusivePtr< const IRNode > & | operator= (IntrusivePtr< const IRNode > &&other) noexcept
HALIDE_ALWAYS_INLINE bool | defined () const
HALIDE_ALWAYS_INLINE bool | same_as (const IntrusivePtr &other) const
HALIDE_ALWAYS_INLINE bool | operator< (const IntrusivePtr< const IRNode > &other) const
HALIDE_ALWAYS_INLINE bool | is_sole_reference () const

## Additional Inherited Members
Protected Attributes inherited from Halide::Internal::IntrusivePtr< const IRNode >
const IRNode * | ptr

## Detailed Description

A reference-counted handle to a statement node.

Definition at line 427 of file Expr.h.

## Constructor & Destructor Documentation

## ◆ Stmt() [1/2]

Halide::Internal::Stmt::Stmt | ( |  | ) |
| default

## ◆ Stmt() [2/2]

Halide::Internal::Stmt::Stmt | ( | const BaseStmtNode * | n | ) |
| inline

Definition at line 429 of file Expr.h.

## Member Function Documentation

## ◆ get()

HALIDE_ALWAYS_INLINE const BaseStmtNode * Halide::Internal::Stmt::get | ( |  | ) | const
| inline

Override get() to return a BaseStmtNode * instead of an IRNode *.

Definition at line 435 of file Expr.h.

References Halide::Internal::IntrusivePtr< const IRNode >::ptr.

Referenced by Halide::Internal::VariadicVisitor< T, ExprRet, StmtRet >::dispatch().

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

- src/Expr.h