MLIR  20.0.0git
Public Types | Public Member Functions | List of all members
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. More...
 
Value getOperand (unsigned i)
 Return the operand at index 'i'. More...
 
void setOperand (unsigned i, Value value)
 Set the operand at index 'i' to 'value'. More...
 
operand_iterator operand_begin ()
 Operand iterator access. More...
 
operand_iterator operand_end ()
 
operand_range getOperands ()
 
operand_type_iterator operand_type_begin ()
 Operand type access. More...
 
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. More...
 

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 389 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 390 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 391 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 392 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 393 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 396 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 399 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 402 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: