MLIR  20.0.0git
Public Member Functions | List of all members
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:

Public Member Functions

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

Additional Inherited Members

- 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 410 of file Predicate.h.

Constructor & Destructor Documentation

◆ Qualifier()

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

Definition at line 412 of file Predicate.h.

Member Function Documentation

◆ getKind()

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

Returns the kind of this qualifier.

Definition at line 415 of file Predicate.h.


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