MLIR 22.0.0git
mlir::OpTrait::detail::MultiOperandTraitBase< ConcreteType, TraitType > Struct Template Reference

Utility trait base that provides accessors for derived traits that have multiple operands. More...

#include "mlir/IR/OpDefinition.h"

Inheritance diagram for mlir::OpTrait::detail::MultiOperandTraitBase< ConcreteType, TraitType >:

Public Types

using operand_iterator = Operation::operand_iterator
using operand_range = Operation::operand_range
using operand_type_iterator = Operation::operand_type_iterator
using operand_type_range = Operation::operand_type_range

Public Member Functions

unsigned getNumOperands ()
 Return the number of operands.
Value getOperand (unsigned i)
 Return the operand at index 'i'.
void setOperand (unsigned i, Value value)
 Set the operand at index 'i' to 'value'.
operand_iterator operand_begin ()
 Operand iterator access.
operand_iterator operand_end ()
operand_range getOperands ()
operand_type_iterator operand_type_begin ()
 Operand type access.
operand_type_iterator operand_type_end ()
operand_type_range getOperandTypes ()

Additional Inherited Members

Protected Member Functions inherited from mlir::OpTrait::TraitBase< ConcreteType, TraitType >
OperationgetOperation ()
 Return the ultimate Operation being worked on.

Detailed Description

template<typename ConcreteType, template< typename > class TraitType>
struct mlir::OpTrait::detail::MultiOperandTraitBase< ConcreteType, TraitType >

Utility trait base that provides accessors for derived traits that have multiple operands.

Definition at line 395 of file OpDefinition.h.

Member Typedef Documentation

◆ operand_iterator

template<typename ConcreteType, template< typename > class TraitType>
using mlir::OpTrait::detail::MultiOperandTraitBase< ConcreteType, TraitType >::operand_iterator = Operation::operand_iterator

Definition at line 396 of file OpDefinition.h.

◆ operand_range

template<typename ConcreteType, template< typename > class TraitType>
using mlir::OpTrait::detail::MultiOperandTraitBase< ConcreteType, TraitType >::operand_range = Operation::operand_range

Definition at line 397 of file OpDefinition.h.

◆ operand_type_iterator

template<typename ConcreteType, template< typename > class TraitType>
using mlir::OpTrait::detail::MultiOperandTraitBase< ConcreteType, TraitType >::operand_type_iterator = Operation::operand_type_iterator

Definition at line 398 of file OpDefinition.h.

◆ operand_type_range

template<typename ConcreteType, template< typename > class TraitType>
using mlir::OpTrait::detail::MultiOperandTraitBase< ConcreteType, TraitType >::operand_type_range = Operation::operand_type_range

Definition at line 399 of file OpDefinition.h.

Member Function Documentation

◆ getNumOperands()

template<typename ConcreteType, template< typename > class TraitType>
unsigned mlir::OpTrait::detail::MultiOperandTraitBase< ConcreteType, TraitType >::getNumOperands ( )
inline

Return the number of operands.

Definition at line 402 of file OpDefinition.h.

References mlir::Operation::getNumOperands(), and mlir::OpTrait::TraitBase< ConcreteType, TraitType >::getOperation().

◆ getOperand()

template<typename ConcreteType, template< typename > class TraitType>
Value mlir::OpTrait::detail::MultiOperandTraitBase< ConcreteType, TraitType >::getOperand ( unsigned i)
inline

Return the operand at index 'i'.

Definition at line 405 of file OpDefinition.h.

References mlir::Operation::getOperand(), and mlir::OpTrait::TraitBase< ConcreteType, TraitType >::getOperation().

◆ getOperands()

template<typename ConcreteType, template< typename > class TraitType>
operand_range mlir::OpTrait::detail::MultiOperandTraitBase< ConcreteType, TraitType >::getOperands ( )
inline

◆ getOperandTypes()

template<typename ConcreteType, template< typename > class TraitType>
operand_type_range mlir::OpTrait::detail::MultiOperandTraitBase< ConcreteType, TraitType >::getOperandTypes ( )
inline

◆ operand_begin()

template<typename ConcreteType, template< typename > class TraitType>
operand_iterator mlir::OpTrait::detail::MultiOperandTraitBase< ConcreteType, TraitType >::operand_begin ( )
inline

◆ operand_end()

template<typename ConcreteType, template< typename > class TraitType>
operand_iterator mlir::OpTrait::detail::MultiOperandTraitBase< ConcreteType, TraitType >::operand_end ( )
inline

◆ operand_type_begin()

template<typename ConcreteType, template< typename > class TraitType>
operand_type_iterator mlir::OpTrait::detail::MultiOperandTraitBase< ConcreteType, TraitType >::operand_type_begin ( )
inline

◆ operand_type_end()

template<typename ConcreteType, template< typename > class TraitType>
operand_type_iterator mlir::OpTrait::detail::MultiOperandTraitBase< ConcreteType, TraitType >::operand_type_end ( )
inline

◆ setOperand()

template<typename ConcreteType, template< typename > class TraitType>
void mlir::OpTrait::detail::MultiOperandTraitBase< ConcreteType, TraitType >::setOperand ( unsigned i,
Value value )
inline

Set the operand at index 'i' to 'value'.

Definition at line 408 of file OpDefinition.h.

References mlir::OpTrait::TraitBase< ConcreteType, TraitType >::getOperation(), and mlir::Operation::setOperand().


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