Loading...
Searching...
No Matches
Halide::Internal::IRMatcher::WidenOp< A > Struct Template Reference

`#include <IRMatch.h>`

## Classes

struct | pattern_tag

## Public Member Functions

template<uint32_t bound>
HALIDE_ALWAYS_INLINE bool | match (const BaseExprNode &e, MatcherState &state) const noexcept
template<uint32_t bound, typename A2>
HALIDE_ALWAYS_INLINE bool | match (const WidenOp< A2 > &op, MatcherState &state) const noexcept
HALIDE_ALWAYS_INLINE Expr | make (MatcherState &state, halide_type_t type_hint) const

## Public Attributes

A | a

## Static Public Attributes

static constexpr uint32_t | binds = bindings<A>::mask
static constexpr IRNodeType | min_node_type = IRNodeType::Cast
static constexpr IRNodeType | max_node_type = IRNodeType::Cast
static constexpr bool | canonical = A::canonical
static constexpr bool | foldable = false

## Detailed Description

template<typename A>
struct Halide::Internal::IRMatcher::WidenOp< A >

Definition at line 2081 of file IRMatch.h.

## Member Function Documentation

## match() [1/2]

template<typename A>
template<uint32_t bound>

HALIDE_ALWAYS_INLINE bool Halide::Internal::IRMatcher::WidenOp< A >::match | ( | const BaseExprNode & | e,
|  | MatcherState & | state ) const

inline noexcept

Definition at line 2092 of file IRMatch.h.

References Halide::Internal::Cast::_node_type, a, Halide::Expr::get(), HALIDE_ALWAYS_INLINE, match(), Halide::Expr::type(), Halide::Internal::Cast::value, and Halide::Type::widen().

Referenced by match(), and match().

## match() [2/2]

template<typename A>
template<uint32_t bound, typename A2>

HALIDE_ALWAYS_INLINE bool Halide::Internal::IRMatcher::WidenOp< A >::match | ( | const WidenOp< A2 > & | op,
|  | MatcherState & | state ) const

inline noexcept

Definition at line 2101 of file IRMatch.h.

References a, HALIDE_ALWAYS_INLINE, match(), and Halide::Internal::IRMatcher::unwrap().

## make()

template<typename A>

HALIDE_ALWAYS_INLINE Expr Halide::Internal::IRMatcher::WidenOp< A >::make | ( | MatcherState & | state,
|  | halide_type_t | type_hint ) const

inline

Definition at line 2106 of file IRMatch.h.

References a, Halide::Internal::IRMatcher::cast(), Halide::Expr::type(), and Halide::Type::widen().

## Member Data Documentation

## a

template<typename A>

A Halide::Internal::IRMatcher::WidenOp< A >::a

Definition at line 2083 of file IRMatch.h.

Referenced by make(), match(), match(), and Halide::Internal::IRMatcher::operator<<().

## binds

template<typename A>

uint32_t Halide::Internal::IRMatcher::WidenOp< A >::binds = bindings<A>::mask

static constexpr

Definition at line 2085 of file IRMatch.h.

## min_node_type

template<typename A>

IRNodeType Halide::Internal::IRMatcher::WidenOp< A >::min_node_type = IRNodeType::Cast

static constexpr

Definition at line 2087 of file IRMatch.h.

## max_node_type

template<typename A>

IRNodeType Halide::Internal::IRMatcher::WidenOp< A >::max_node_type = IRNodeType::Cast

static constexpr

Definition at line 2088 of file IRMatch.h.

## canonical

template<typename A>

bool Halide::Internal::IRMatcher::WidenOp< A >::canonical = A::canonical

static constexpr

Definition at line 2089 of file IRMatch.h.

## foldable

template<typename A>

bool Halide::Internal::IRMatcher::WidenOp< A >::foldable = false

static constexpr

Definition at line 2112 of file IRMatch.h.

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

- src/IRMatch.h