MLIR 22.0.0git
mlir::TypeRange Class Reference

This class provides an abstraction over the various different ranges of value types. More...

#include "mlir/IR/TypeRange.h"

Inheritance diagram for mlir::TypeRange:

Public Member Functions

 TypeRange (ArrayRef< Type > types={})
 TypeRange (OperandRange values)
 TypeRange (ResultRange values)
 TypeRange (ValueRange values)
template<typename ValueRangeT>
 TypeRange (ValueTypeRange< ValueRangeT > values)
template<typename Arg, typename = std::enable_if_t<std::is_constructible< ArrayRef<Type>, Arg>::value>>
 TypeRange (Arg &&arg LLVM_LIFETIME_BOUND)
 TypeRange (std::initializer_list< Type > types LLVM_LIFETIME_BOUND)

Detailed Description

This class provides an abstraction over the various different ranges of value types.

In many cases, this prevents the need to explicitly materialize a SmallVector/stdvector. This class should be used in places that are not suitable for a more derived type (e.g. ArrayRef) or a template range parameter.

Definition at line 33 of file TypeRange.h.

Constructor & Destructor Documentation

◆ TypeRange() [1/7]

TypeRange::TypeRange ( ArrayRef< Type > types = {})

Definition at line 17 of file TypeRange.cpp.

References TypeRange().

Referenced by TypeRange(), TypeRange(), TypeRange(), TypeRange(), TypeRange(), TypeRange(), and TypeRange().

◆ TypeRange() [2/7]

TypeRange::TypeRange ( OperandRange values)
explicit

Definition at line 22 of file TypeRange.cpp.

References getBase(), and TypeRange().

◆ TypeRange() [3/7]

TypeRange::TypeRange ( ResultRange values)
explicit

Definition at line 24 of file TypeRange.cpp.

References getBase(), and TypeRange().

◆ TypeRange() [4/7]

TypeRange::TypeRange ( ValueRange values)
explicit

Definition at line 26 of file TypeRange.cpp.

References getBase(), result, and TypeRange().

◆ TypeRange() [5/7]

template<typename ValueRangeT>
mlir::TypeRange::TypeRange ( ValueTypeRange< ValueRangeT > values)
inline

Definition at line 45 of file TypeRange.h.

References TypeRange().

◆ TypeRange() [6/7]

template<typename Arg, typename = std::enable_if_t<std::is_constructible< ArrayRef<Type>, Arg>::value>>
mlir::TypeRange::TypeRange ( Arg &&arg LLVM_LIFETIME_BOUND)
inline

Definition at line 50 of file TypeRange.h.

References TypeRange().

◆ TypeRange() [7/7]

mlir::TypeRange::TypeRange ( std::initializer_list< Type > types LLVM_LIFETIME_BOUND)
inline

Definition at line 52 of file TypeRange.h.

References TypeRange().


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