MLIR  15.0.0git
mlir::pdl_to_pdl_interp::Qualifier Class Reference

An ordinal predicate consists of a "Question" and a set of acceptable "Answers" (later converted to ordinal values). More...

#include "Conversion/PDLToPDLInterp/Predicate.h"

Inheritance diagram for mlir::pdl_to_pdl_interp::Qualifier:
Collaboration diagram for mlir::pdl_to_pdl_interp::Qualifier:

## Public Member Functions

Qualifier (Predicates::Kind kind)

Predicates::Kind getKind () const
Returns the kind of this qualifier. More...

Protected Member Functions inherited from mlir::StorageUniquer::BaseStorage
BaseStorage ()=default

## Detailed Description

An ordinal predicate consists of a "Question" and a set of acceptable "Answers" (later converted to ordinal values).

A predicate will query some property of a positional value and decide what to do based on the result.

This makes top-level predicate representations ordinal (SwitchOp). Later, predicates that end up with only one acceptable answer (including all boolean kinds) will be converted to boolean predicates (PredicateOp) in the matcher.

For simplicity, both are represented as "qualifiers", with a base kind and perhaps additional properties. For example, all OperationName predicates ask the same question, but GenericConstraint predicates may ask different ones.

Definition at line 383 of file Predicate.h.

## ◆ Qualifier()

 mlir::pdl_to_pdl_interp::Qualifier::Qualifier ( Predicates::Kind kind )
inlineexplicit

Definition at line 385 of file Predicate.h.

## ◆ getKind()

 Predicates::Kind mlir::pdl_to_pdl_interp::Qualifier::getKind ( ) const
inline

Returns the kind of this qualifier.

Definition at line 388 of file Predicate.h.

Referenced by createSwitchOp().

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