llvm/tools/mlir/include/mlir/Dialect/Vector/TransformOps/VectorTransformOps.h.inc

/*===- TableGen'erated file -------------------------------------*- C++ -*-===*\
|*                                                                            *|
|* Op Declarations                                                            *|
|*                                                                            *|
|* Automatically generated file, do not edit!                                 *|
|* From: VectorTransformOps.td                                                *|
|*                                                                            *|
\*===----------------------------------------------------------------------===*/

namespace mlir {
namespace transform {
class ApplyCastAwayVectorLeadingOneDimPatternsOp;
} // namespace transform
} // namespace mlir
namespace mlir {
namespace transform {
class ApplyDropUnitDimWithShapeCastPatternsOp;
} // namespace transform
} // namespace mlir
namespace mlir {
namespace transform {
class ApplyFoldArithExtensionPatternsOp;
} // namespace transform
} // namespace mlir
namespace mlir {
namespace transform {
class ApplyFoldElementwiseToVectorPatternsOp;
} // namespace transform
} // namespace mlir
namespace mlir {
namespace transform {
class ApplyInterleaveToShufflePatternsOp;
} // namespace transform
} // namespace mlir
namespace mlir {
namespace transform {
class ApplyLowerBitCastPatternsOp;
} // namespace transform
} // namespace mlir
namespace mlir {
namespace transform {
class ApplyLowerBroadcastPatternsOp;
} // namespace transform
} // namespace mlir
namespace mlir {
namespace transform {
class ApplyLowerContractionPatternsOp;
} // namespace transform
} // namespace mlir
namespace mlir {
namespace transform {
class ApplyLowerCreateMaskPatternsOp;
} // namespace transform
} // namespace mlir
namespace mlir {
namespace transform {
class ApplyLowerGatherPatternsOp;
} // namespace transform
} // namespace mlir
namespace mlir {
namespace transform {
class ApplyLowerInterleavePatternsOp;
} // namespace transform
} // namespace mlir
namespace mlir {
namespace transform {
class ApplyLowerMaskedTransfersPatternsOp;
} // namespace transform
} // namespace mlir
namespace mlir {
namespace transform {
class ApplyLowerMasksPatternsOp;
} // namespace transform
} // namespace mlir
namespace mlir {
namespace transform {
class ApplyLowerMultiReductionPatternsOp;
} // namespace transform
} // namespace mlir
namespace mlir {
namespace transform {
class ApplyLowerOuterProductPatternsOp;
} // namespace transform
} // namespace mlir
namespace mlir {
namespace transform {
class ApplyLowerScanPatternsOp;
} // namespace transform
} // namespace mlir
namespace mlir {
namespace transform {
class ApplyLowerShapeCastPatternsOp;
} // namespace transform
} // namespace mlir
namespace mlir {
namespace transform {
class ApplyLowerTransferPatternsOp;
} // namespace transform
} // namespace mlir
namespace mlir {
namespace transform {
class ApplyLowerTransposePatternsOp;
} // namespace transform
} // namespace mlir
namespace mlir {
namespace transform {
class ApplyMaterializeMasksPatternsOp;
} // namespace transform
} // namespace mlir
namespace mlir {
namespace transform {
class ApplyRankReducingSubviewPatternsOp;
} // namespace transform
} // namespace mlir
namespace mlir {
namespace transform {
class ApplyRewriteNarrowTypePatternsOp;
} // namespace transform
} // namespace mlir
namespace mlir {
namespace transform {
class ApplySplitTransferFullPartialPatternsOp;
} // namespace transform
} // namespace mlir
namespace mlir {
namespace transform {
class ApplyTransferPermutationPatternsOp;
} // namespace transform
} // namespace mlir
namespace mlir {
namespace transform {
class ApplyTransferToScfPatternsOp;
} // namespace transform
} // namespace mlir
namespace mlir {
namespace transform {
class ApplyVectorReductionToContractPatternsOp;
} // namespace transform
} // namespace mlir
namespace mlir {
namespace transform {
class ApplyVectorToLLVMConversionPatternsOp;
} // namespace transform
} // namespace mlir
#ifdef GET_OP_CLASSES
#undef GET_OP_CLASSES

namespace mlir {
namespace transform {

//===----------------------------------------------------------------------===//
// ::mlir::transform::ApplyCastAwayVectorLeadingOneDimPatternsOp declarations
//===----------------------------------------------------------------------===//

namespace detail {
class ApplyCastAwayVectorLeadingOneDimPatternsOpGenericAdaptorBase {};
} // namespace detail
template <typename RangeT>
class ApplyCastAwayVectorLeadingOneDimPatternsOpGenericAdaptor : public detail::ApplyCastAwayVectorLeadingOneDimPatternsOpGenericAdaptorBase {};
class ApplyCastAwayVectorLeadingOneDimPatternsOpAdaptor : public ApplyCastAwayVectorLeadingOneDimPatternsOpGenericAdaptor<::mlir::ValueRange> {};
class ApplyCastAwayVectorLeadingOneDimPatternsOp : public ::mlir::Op<ApplyCastAwayVectorLeadingOneDimPatternsOp, ::mlir::OpTrait::ZeroRegions, ::mlir::OpTrait::ZeroResults, ::mlir::OpTrait::ZeroSuccessors, ::mlir::OpTrait::ZeroOperands, ::mlir::OpTrait::OpInvariants, ::mlir::transform::PatternDescriptorOpInterface::Trait> {};
} // namespace transform
} // namespace mlir
MLIR_DECLARE_EXPLICIT_TYPE_ID(::mlir::transform::ApplyCastAwayVectorLeadingOneDimPatternsOp)

namespace mlir {
namespace transform {

//===----------------------------------------------------------------------===//
// ::mlir::transform::ApplyDropUnitDimWithShapeCastPatternsOp declarations
//===----------------------------------------------------------------------===//

namespace detail {
class ApplyDropUnitDimWithShapeCastPatternsOpGenericAdaptorBase {};
} // namespace detail
template <typename RangeT>
class ApplyDropUnitDimWithShapeCastPatternsOpGenericAdaptor : public detail::ApplyDropUnitDimWithShapeCastPatternsOpGenericAdaptorBase {};
class ApplyDropUnitDimWithShapeCastPatternsOpAdaptor : public ApplyDropUnitDimWithShapeCastPatternsOpGenericAdaptor<::mlir::ValueRange> {};
class ApplyDropUnitDimWithShapeCastPatternsOp : public ::mlir::Op<ApplyDropUnitDimWithShapeCastPatternsOp, ::mlir::OpTrait::ZeroRegions, ::mlir::OpTrait::ZeroResults, ::mlir::OpTrait::ZeroSuccessors, ::mlir::OpTrait::ZeroOperands, ::mlir::OpTrait::OpInvariants, ::mlir::transform::PatternDescriptorOpInterface::Trait> {};
} // namespace transform
} // namespace mlir
MLIR_DECLARE_EXPLICIT_TYPE_ID(::mlir::transform::ApplyDropUnitDimWithShapeCastPatternsOp)

namespace mlir {
namespace transform {

//===----------------------------------------------------------------------===//
// ::mlir::transform::ApplyFoldArithExtensionPatternsOp declarations
//===----------------------------------------------------------------------===//

namespace detail {
class ApplyFoldArithExtensionPatternsOpGenericAdaptorBase {};
} // namespace detail
template <typename RangeT>
class ApplyFoldArithExtensionPatternsOpGenericAdaptor : public detail::ApplyFoldArithExtensionPatternsOpGenericAdaptorBase {};
class ApplyFoldArithExtensionPatternsOpAdaptor : public ApplyFoldArithExtensionPatternsOpGenericAdaptor<::mlir::ValueRange> {};
class ApplyFoldArithExtensionPatternsOp : public ::mlir::Op<ApplyFoldArithExtensionPatternsOp, ::mlir::OpTrait::ZeroRegions, ::mlir::OpTrait::ZeroResults, ::mlir::OpTrait::ZeroSuccessors, ::mlir::OpTrait::ZeroOperands, ::mlir::OpTrait::OpInvariants, ::mlir::transform::PatternDescriptorOpInterface::Trait> {};
} // namespace transform
} // namespace mlir
MLIR_DECLARE_EXPLICIT_TYPE_ID(::mlir::transform::ApplyFoldArithExtensionPatternsOp)

namespace mlir {
namespace transform {

//===----------------------------------------------------------------------===//
// ::mlir::transform::ApplyFoldElementwiseToVectorPatternsOp declarations
//===----------------------------------------------------------------------===//

namespace detail {
class ApplyFoldElementwiseToVectorPatternsOpGenericAdaptorBase {};
} // namespace detail
template <typename RangeT>
class ApplyFoldElementwiseToVectorPatternsOpGenericAdaptor : public detail::ApplyFoldElementwiseToVectorPatternsOpGenericAdaptorBase {};
class ApplyFoldElementwiseToVectorPatternsOpAdaptor : public ApplyFoldElementwiseToVectorPatternsOpGenericAdaptor<::mlir::ValueRange> {};
class ApplyFoldElementwiseToVectorPatternsOp : public ::mlir::Op<ApplyFoldElementwiseToVectorPatternsOp, ::mlir::OpTrait::ZeroRegions, ::mlir::OpTrait::ZeroResults, ::mlir::OpTrait::ZeroSuccessors, ::mlir::OpTrait::ZeroOperands, ::mlir::OpTrait::OpInvariants, ::mlir::transform::PatternDescriptorOpInterface::Trait> {};
} // namespace transform
} // namespace mlir
MLIR_DECLARE_EXPLICIT_TYPE_ID(::mlir::transform::ApplyFoldElementwiseToVectorPatternsOp)

namespace mlir {
namespace transform {

//===----------------------------------------------------------------------===//
// ::mlir::transform::ApplyInterleaveToShufflePatternsOp declarations
//===----------------------------------------------------------------------===//

namespace detail {
class ApplyInterleaveToShufflePatternsOpGenericAdaptorBase {};
} // namespace detail
template <typename RangeT>
class ApplyInterleaveToShufflePatternsOpGenericAdaptor : public detail::ApplyInterleaveToShufflePatternsOpGenericAdaptorBase {};
class ApplyInterleaveToShufflePatternsOpAdaptor : public ApplyInterleaveToShufflePatternsOpGenericAdaptor<::mlir::ValueRange> {};
class ApplyInterleaveToShufflePatternsOp : public ::mlir::Op<ApplyInterleaveToShufflePatternsOp, ::mlir::OpTrait::ZeroRegions, ::mlir::OpTrait::ZeroResults, ::mlir::OpTrait::ZeroSuccessors, ::mlir::OpTrait::ZeroOperands, ::mlir::OpTrait::OpInvariants, ::mlir::transform::PatternDescriptorOpInterface::Trait> {};
} // namespace transform
} // namespace mlir
MLIR_DECLARE_EXPLICIT_TYPE_ID(::mlir::transform::ApplyInterleaveToShufflePatternsOp)

namespace mlir {
namespace transform {

//===----------------------------------------------------------------------===//
// ::mlir::transform::ApplyLowerBitCastPatternsOp declarations
//===----------------------------------------------------------------------===//

namespace detail {
class ApplyLowerBitCastPatternsOpGenericAdaptorBase {};
} // namespace detail
template <typename RangeT>
class ApplyLowerBitCastPatternsOpGenericAdaptor : public detail::ApplyLowerBitCastPatternsOpGenericAdaptorBase {};
class ApplyLowerBitCastPatternsOpAdaptor : public ApplyLowerBitCastPatternsOpGenericAdaptor<::mlir::ValueRange> {};
class ApplyLowerBitCastPatternsOp : public ::mlir::Op<ApplyLowerBitCastPatternsOp, ::mlir::OpTrait::ZeroRegions, ::mlir::OpTrait::ZeroResults, ::mlir::OpTrait::ZeroSuccessors, ::mlir::OpTrait::ZeroOperands, ::mlir::OpTrait::OpInvariants, ::mlir::transform::PatternDescriptorOpInterface::Trait> {};
} // namespace transform
} // namespace mlir
MLIR_DECLARE_EXPLICIT_TYPE_ID(::mlir::transform::ApplyLowerBitCastPatternsOp)

namespace mlir {
namespace transform {

//===----------------------------------------------------------------------===//
// ::mlir::transform::ApplyLowerBroadcastPatternsOp declarations
//===----------------------------------------------------------------------===//

namespace detail {
class ApplyLowerBroadcastPatternsOpGenericAdaptorBase {};
} // namespace detail
template <typename RangeT>
class ApplyLowerBroadcastPatternsOpGenericAdaptor : public detail::ApplyLowerBroadcastPatternsOpGenericAdaptorBase {};
class ApplyLowerBroadcastPatternsOpAdaptor : public ApplyLowerBroadcastPatternsOpGenericAdaptor<::mlir::ValueRange> {};
class ApplyLowerBroadcastPatternsOp : public ::mlir::Op<ApplyLowerBroadcastPatternsOp, ::mlir::OpTrait::ZeroRegions, ::mlir::OpTrait::ZeroResults, ::mlir::OpTrait::ZeroSuccessors, ::mlir::OpTrait::ZeroOperands, ::mlir::OpTrait::OpInvariants, ::mlir::transform::PatternDescriptorOpInterface::Trait> {};
} // namespace transform
} // namespace mlir
MLIR_DECLARE_EXPLICIT_TYPE_ID(::mlir::transform::ApplyLowerBroadcastPatternsOp)

namespace mlir {
namespace transform {

//===----------------------------------------------------------------------===//
// ::mlir::transform::ApplyLowerContractionPatternsOp declarations
//===----------------------------------------------------------------------===//

namespace detail {
class ApplyLowerContractionPatternsOpGenericAdaptorBase {};
} // namespace detail
template <typename RangeT>
class ApplyLowerContractionPatternsOpGenericAdaptor : public detail::ApplyLowerContractionPatternsOpGenericAdaptorBase {};
class ApplyLowerContractionPatternsOpAdaptor : public ApplyLowerContractionPatternsOpGenericAdaptor<::mlir::ValueRange> {};
class ApplyLowerContractionPatternsOp : public ::mlir::Op<ApplyLowerContractionPatternsOp, ::mlir::OpTrait::ZeroRegions, ::mlir::OpTrait::ZeroResults, ::mlir::OpTrait::ZeroSuccessors, ::mlir::OpTrait::ZeroOperands, ::mlir::OpTrait::OpInvariants, ::mlir::BytecodeOpInterface::Trait, ::mlir::transform::PatternDescriptorOpInterface::Trait> {};
} // namespace transform
} // namespace mlir
MLIR_DECLARE_EXPLICIT_TYPE_ID(::mlir::transform::ApplyLowerContractionPatternsOp)

namespace mlir {
namespace transform {

//===----------------------------------------------------------------------===//
// ::mlir::transform::ApplyLowerCreateMaskPatternsOp declarations
//===----------------------------------------------------------------------===//

namespace detail {
class ApplyLowerCreateMaskPatternsOpGenericAdaptorBase {};
} // namespace detail
template <typename RangeT>
class ApplyLowerCreateMaskPatternsOpGenericAdaptor : public detail::ApplyLowerCreateMaskPatternsOpGenericAdaptorBase {};
class ApplyLowerCreateMaskPatternsOpAdaptor : public ApplyLowerCreateMaskPatternsOpGenericAdaptor<::mlir::ValueRange> {};
class ApplyLowerCreateMaskPatternsOp : public ::mlir::Op<ApplyLowerCreateMaskPatternsOp, ::mlir::OpTrait::ZeroRegions, ::mlir::OpTrait::ZeroResults, ::mlir::OpTrait::ZeroSuccessors, ::mlir::OpTrait::ZeroOperands, ::mlir::OpTrait::OpInvariants, ::mlir::transform::PatternDescriptorOpInterface::Trait> {};
} // namespace transform
} // namespace mlir
MLIR_DECLARE_EXPLICIT_TYPE_ID(::mlir::transform::ApplyLowerCreateMaskPatternsOp)

namespace mlir {
namespace transform {

//===----------------------------------------------------------------------===//
// ::mlir::transform::ApplyLowerGatherPatternsOp declarations
//===----------------------------------------------------------------------===//

namespace detail {
class ApplyLowerGatherPatternsOpGenericAdaptorBase {};
} // namespace detail
template <typename RangeT>
class ApplyLowerGatherPatternsOpGenericAdaptor : public detail::ApplyLowerGatherPatternsOpGenericAdaptorBase {};
class ApplyLowerGatherPatternsOpAdaptor : public ApplyLowerGatherPatternsOpGenericAdaptor<::mlir::ValueRange> {};
class ApplyLowerGatherPatternsOp : public ::mlir::Op<ApplyLowerGatherPatternsOp, ::mlir::OpTrait::ZeroRegions, ::mlir::OpTrait::ZeroResults, ::mlir::OpTrait::ZeroSuccessors, ::mlir::OpTrait::ZeroOperands, ::mlir::OpTrait::OpInvariants, ::mlir::transform::PatternDescriptorOpInterface::Trait> {};
} // namespace transform
} // namespace mlir
MLIR_DECLARE_EXPLICIT_TYPE_ID(::mlir::transform::ApplyLowerGatherPatternsOp)

namespace mlir {
namespace transform {

//===----------------------------------------------------------------------===//
// ::mlir::transform::ApplyLowerInterleavePatternsOp declarations
//===----------------------------------------------------------------------===//

namespace detail {
class ApplyLowerInterleavePatternsOpGenericAdaptorBase {};
} // namespace detail
template <typename RangeT>
class ApplyLowerInterleavePatternsOpGenericAdaptor : public detail::ApplyLowerInterleavePatternsOpGenericAdaptorBase {};
class ApplyLowerInterleavePatternsOpAdaptor : public ApplyLowerInterleavePatternsOpGenericAdaptor<::mlir::ValueRange> {};
class ApplyLowerInterleavePatternsOp : public ::mlir::Op<ApplyLowerInterleavePatternsOp, ::mlir::OpTrait::ZeroRegions, ::mlir::OpTrait::ZeroResults, ::mlir::OpTrait::ZeroSuccessors, ::mlir::OpTrait::ZeroOperands, ::mlir::OpTrait::OpInvariants, ::mlir::transform::PatternDescriptorOpInterface::Trait> {};
} // namespace transform
} // namespace mlir
MLIR_DECLARE_EXPLICIT_TYPE_ID(::mlir::transform::ApplyLowerInterleavePatternsOp)

namespace mlir {
namespace transform {

//===----------------------------------------------------------------------===//
// ::mlir::transform::ApplyLowerMaskedTransfersPatternsOp declarations
//===----------------------------------------------------------------------===//

namespace detail {
class ApplyLowerMaskedTransfersPatternsOpGenericAdaptorBase {};
} // namespace detail
template <typename RangeT>
class ApplyLowerMaskedTransfersPatternsOpGenericAdaptor : public detail::ApplyLowerMaskedTransfersPatternsOpGenericAdaptorBase {};
class ApplyLowerMaskedTransfersPatternsOpAdaptor : public ApplyLowerMaskedTransfersPatternsOpGenericAdaptor<::mlir::ValueRange> {};
class ApplyLowerMaskedTransfersPatternsOp : public ::mlir::Op<ApplyLowerMaskedTransfersPatternsOp, ::mlir::OpTrait::ZeroRegions, ::mlir::OpTrait::ZeroResults, ::mlir::OpTrait::ZeroSuccessors, ::mlir::OpTrait::ZeroOperands, ::mlir::OpTrait::OpInvariants, ::mlir::transform::PatternDescriptorOpInterface::Trait> {};
} // namespace transform
} // namespace mlir
MLIR_DECLARE_EXPLICIT_TYPE_ID(::mlir::transform::ApplyLowerMaskedTransfersPatternsOp)

namespace mlir {
namespace transform {

//===----------------------------------------------------------------------===//
// ::mlir::transform::ApplyLowerMasksPatternsOp declarations
//===----------------------------------------------------------------------===//

namespace detail {
class ApplyLowerMasksPatternsOpGenericAdaptorBase {};
} // namespace detail
template <typename RangeT>
class ApplyLowerMasksPatternsOpGenericAdaptor : public detail::ApplyLowerMasksPatternsOpGenericAdaptorBase {};
class ApplyLowerMasksPatternsOpAdaptor : public ApplyLowerMasksPatternsOpGenericAdaptor<::mlir::ValueRange> {};
class ApplyLowerMasksPatternsOp : public ::mlir::Op<ApplyLowerMasksPatternsOp, ::mlir::OpTrait::ZeroRegions, ::mlir::OpTrait::ZeroResults, ::mlir::OpTrait::ZeroSuccessors, ::mlir::OpTrait::ZeroOperands, ::mlir::OpTrait::OpInvariants, ::mlir::transform::PatternDescriptorOpInterface::Trait> {};
} // namespace transform
} // namespace mlir
MLIR_DECLARE_EXPLICIT_TYPE_ID(::mlir::transform::ApplyLowerMasksPatternsOp)

namespace mlir {
namespace transform {

//===----------------------------------------------------------------------===//
// ::mlir::transform::ApplyLowerMultiReductionPatternsOp declarations
//===----------------------------------------------------------------------===//

namespace detail {
class ApplyLowerMultiReductionPatternsOpGenericAdaptorBase {};
} // namespace detail
template <typename RangeT>
class ApplyLowerMultiReductionPatternsOpGenericAdaptor : public detail::ApplyLowerMultiReductionPatternsOpGenericAdaptorBase {};
class ApplyLowerMultiReductionPatternsOpAdaptor : public ApplyLowerMultiReductionPatternsOpGenericAdaptor<::mlir::ValueRange> {};
class ApplyLowerMultiReductionPatternsOp : public ::mlir::Op<ApplyLowerMultiReductionPatternsOp, ::mlir::OpTrait::ZeroRegions, ::mlir::OpTrait::ZeroResults, ::mlir::OpTrait::ZeroSuccessors, ::mlir::OpTrait::ZeroOperands, ::mlir::OpTrait::OpInvariants, ::mlir::BytecodeOpInterface::Trait, ::mlir::transform::PatternDescriptorOpInterface::Trait> {};
} // namespace transform
} // namespace mlir
MLIR_DECLARE_EXPLICIT_TYPE_ID(::mlir::transform::ApplyLowerMultiReductionPatternsOp)

namespace mlir {
namespace transform {

//===----------------------------------------------------------------------===//
// ::mlir::transform::ApplyLowerOuterProductPatternsOp declarations
//===----------------------------------------------------------------------===//

namespace detail {
class ApplyLowerOuterProductPatternsOpGenericAdaptorBase {};
} // namespace detail
template <typename RangeT>
class ApplyLowerOuterProductPatternsOpGenericAdaptor : public detail::ApplyLowerOuterProductPatternsOpGenericAdaptorBase {};
class ApplyLowerOuterProductPatternsOpAdaptor : public ApplyLowerOuterProductPatternsOpGenericAdaptor<::mlir::ValueRange> {};
class ApplyLowerOuterProductPatternsOp : public ::mlir::Op<ApplyLowerOuterProductPatternsOp, ::mlir::OpTrait::ZeroRegions, ::mlir::OpTrait::ZeroResults, ::mlir::OpTrait::ZeroSuccessors, ::mlir::OpTrait::ZeroOperands, ::mlir::OpTrait::OpInvariants, ::mlir::transform::PatternDescriptorOpInterface::Trait> {};
} // namespace transform
} // namespace mlir
MLIR_DECLARE_EXPLICIT_TYPE_ID(::mlir::transform::ApplyLowerOuterProductPatternsOp)

namespace mlir {
namespace transform {

//===----------------------------------------------------------------------===//
// ::mlir::transform::ApplyLowerScanPatternsOp declarations
//===----------------------------------------------------------------------===//

namespace detail {
class ApplyLowerScanPatternsOpGenericAdaptorBase {};
} // namespace detail
template <typename RangeT>
class ApplyLowerScanPatternsOpGenericAdaptor : public detail::ApplyLowerScanPatternsOpGenericAdaptorBase {};
class ApplyLowerScanPatternsOpAdaptor : public ApplyLowerScanPatternsOpGenericAdaptor<::mlir::ValueRange> {};
class ApplyLowerScanPatternsOp : public ::mlir::Op<ApplyLowerScanPatternsOp, ::mlir::OpTrait::ZeroRegions, ::mlir::OpTrait::ZeroResults, ::mlir::OpTrait::ZeroSuccessors, ::mlir::OpTrait::ZeroOperands, ::mlir::OpTrait::OpInvariants, ::mlir::transform::PatternDescriptorOpInterface::Trait> {};
} // namespace transform
} // namespace mlir
MLIR_DECLARE_EXPLICIT_TYPE_ID(::mlir::transform::ApplyLowerScanPatternsOp)

namespace mlir {
namespace transform {

//===----------------------------------------------------------------------===//
// ::mlir::transform::ApplyLowerShapeCastPatternsOp declarations
//===----------------------------------------------------------------------===//

namespace detail {
class ApplyLowerShapeCastPatternsOpGenericAdaptorBase {};
} // namespace detail
template <typename RangeT>
class ApplyLowerShapeCastPatternsOpGenericAdaptor : public detail::ApplyLowerShapeCastPatternsOpGenericAdaptorBase {};
class ApplyLowerShapeCastPatternsOpAdaptor : public ApplyLowerShapeCastPatternsOpGenericAdaptor<::mlir::ValueRange> {};
class ApplyLowerShapeCastPatternsOp : public ::mlir::Op<ApplyLowerShapeCastPatternsOp, ::mlir::OpTrait::ZeroRegions, ::mlir::OpTrait::ZeroResults, ::mlir::OpTrait::ZeroSuccessors, ::mlir::OpTrait::ZeroOperands, ::mlir::OpTrait::OpInvariants, ::mlir::transform::PatternDescriptorOpInterface::Trait> {};
} // namespace transform
} // namespace mlir
MLIR_DECLARE_EXPLICIT_TYPE_ID(::mlir::transform::ApplyLowerShapeCastPatternsOp)

namespace mlir {
namespace transform {

//===----------------------------------------------------------------------===//
// ::mlir::transform::ApplyLowerTransferPatternsOp declarations
//===----------------------------------------------------------------------===//

namespace detail {
class ApplyLowerTransferPatternsOpGenericAdaptorBase {};
} // namespace detail
template <typename RangeT>
class ApplyLowerTransferPatternsOpGenericAdaptor : public detail::ApplyLowerTransferPatternsOpGenericAdaptorBase {};
class ApplyLowerTransferPatternsOpAdaptor : public ApplyLowerTransferPatternsOpGenericAdaptor<::mlir::ValueRange> {};
class ApplyLowerTransferPatternsOp : public ::mlir::Op<ApplyLowerTransferPatternsOp, ::mlir::OpTrait::ZeroRegions, ::mlir::OpTrait::ZeroResults, ::mlir::OpTrait::ZeroSuccessors, ::mlir::OpTrait::ZeroOperands, ::mlir::OpTrait::OpInvariants, ::mlir::BytecodeOpInterface::Trait, ::mlir::transform::PatternDescriptorOpInterface::Trait> {};
} // namespace transform
} // namespace mlir
MLIR_DECLARE_EXPLICIT_TYPE_ID(::mlir::transform::ApplyLowerTransferPatternsOp)

namespace mlir {
namespace transform {

//===----------------------------------------------------------------------===//
// ::mlir::transform::ApplyLowerTransposePatternsOp declarations
//===----------------------------------------------------------------------===//

namespace detail {
class ApplyLowerTransposePatternsOpGenericAdaptorBase {};
} // namespace detail
template <typename RangeT>
class ApplyLowerTransposePatternsOpGenericAdaptor : public detail::ApplyLowerTransposePatternsOpGenericAdaptorBase {};
class ApplyLowerTransposePatternsOpAdaptor : public ApplyLowerTransposePatternsOpGenericAdaptor<::mlir::ValueRange> {};
class ApplyLowerTransposePatternsOp : public ::mlir::Op<ApplyLowerTransposePatternsOp, ::mlir::OpTrait::ZeroRegions, ::mlir::OpTrait::ZeroResults, ::mlir::OpTrait::ZeroSuccessors, ::mlir::OpTrait::ZeroOperands, ::mlir::OpTrait::OpInvariants, ::mlir::BytecodeOpInterface::Trait, ::mlir::transform::PatternDescriptorOpInterface::Trait> {};
} // namespace transform
} // namespace mlir
MLIR_DECLARE_EXPLICIT_TYPE_ID(::mlir::transform::ApplyLowerTransposePatternsOp)

namespace mlir {
namespace transform {

//===----------------------------------------------------------------------===//
// ::mlir::transform::ApplyMaterializeMasksPatternsOp declarations
//===----------------------------------------------------------------------===//

namespace detail {
class ApplyMaterializeMasksPatternsOpGenericAdaptorBase {};
} // namespace detail
template <typename RangeT>
class ApplyMaterializeMasksPatternsOpGenericAdaptor : public detail::ApplyMaterializeMasksPatternsOpGenericAdaptorBase {};
class ApplyMaterializeMasksPatternsOpAdaptor : public ApplyMaterializeMasksPatternsOpGenericAdaptor<::mlir::ValueRange> {};
class ApplyMaterializeMasksPatternsOp : public ::mlir::Op<ApplyMaterializeMasksPatternsOp, ::mlir::OpTrait::ZeroRegions, ::mlir::OpTrait::ZeroResults, ::mlir::OpTrait::ZeroSuccessors, ::mlir::OpTrait::ZeroOperands, ::mlir::OpTrait::OpInvariants, ::mlir::transform::PatternDescriptorOpInterface::Trait> {};
} // namespace transform
} // namespace mlir
MLIR_DECLARE_EXPLICIT_TYPE_ID(::mlir::transform::ApplyMaterializeMasksPatternsOp)

namespace mlir {
namespace transform {

//===----------------------------------------------------------------------===//
// ::mlir::transform::ApplyRankReducingSubviewPatternsOp declarations
//===----------------------------------------------------------------------===//

namespace detail {
class ApplyRankReducingSubviewPatternsOpGenericAdaptorBase {};
} // namespace detail
template <typename RangeT>
class ApplyRankReducingSubviewPatternsOpGenericAdaptor : public detail::ApplyRankReducingSubviewPatternsOpGenericAdaptorBase {};
class ApplyRankReducingSubviewPatternsOpAdaptor : public ApplyRankReducingSubviewPatternsOpGenericAdaptor<::mlir::ValueRange> {};
class ApplyRankReducingSubviewPatternsOp : public ::mlir::Op<ApplyRankReducingSubviewPatternsOp, ::mlir::OpTrait::ZeroRegions, ::mlir::OpTrait::ZeroResults, ::mlir::OpTrait::ZeroSuccessors, ::mlir::OpTrait::ZeroOperands, ::mlir::OpTrait::OpInvariants, ::mlir::transform::PatternDescriptorOpInterface::Trait> {};
} // namespace transform
} // namespace mlir
MLIR_DECLARE_EXPLICIT_TYPE_ID(::mlir::transform::ApplyRankReducingSubviewPatternsOp)

namespace mlir {
namespace transform {

//===----------------------------------------------------------------------===//
// ::mlir::transform::ApplyRewriteNarrowTypePatternsOp declarations
//===----------------------------------------------------------------------===//

namespace detail {
class ApplyRewriteNarrowTypePatternsOpGenericAdaptorBase {};
} // namespace detail
template <typename RangeT>
class ApplyRewriteNarrowTypePatternsOpGenericAdaptor : public detail::ApplyRewriteNarrowTypePatternsOpGenericAdaptorBase {};
class ApplyRewriteNarrowTypePatternsOpAdaptor : public ApplyRewriteNarrowTypePatternsOpGenericAdaptor<::mlir::ValueRange> {};
class ApplyRewriteNarrowTypePatternsOp : public ::mlir::Op<ApplyRewriteNarrowTypePatternsOp, ::mlir::OpTrait::ZeroRegions, ::mlir::OpTrait::ZeroResults, ::mlir::OpTrait::ZeroSuccessors, ::mlir::OpTrait::ZeroOperands, ::mlir::OpTrait::OpInvariants, ::mlir::transform::PatternDescriptorOpInterface::Trait> {};
} // namespace transform
} // namespace mlir
MLIR_DECLARE_EXPLICIT_TYPE_ID(::mlir::transform::ApplyRewriteNarrowTypePatternsOp)

namespace mlir {
namespace transform {

//===----------------------------------------------------------------------===//
// ::mlir::transform::ApplySplitTransferFullPartialPatternsOp declarations
//===----------------------------------------------------------------------===//

namespace detail {
class ApplySplitTransferFullPartialPatternsOpGenericAdaptorBase {};
} // namespace detail
template <typename RangeT>
class ApplySplitTransferFullPartialPatternsOpGenericAdaptor : public detail::ApplySplitTransferFullPartialPatternsOpGenericAdaptorBase {};
class ApplySplitTransferFullPartialPatternsOpAdaptor : public ApplySplitTransferFullPartialPatternsOpGenericAdaptor<::mlir::ValueRange> {};
class ApplySplitTransferFullPartialPatternsOp : public ::mlir::Op<ApplySplitTransferFullPartialPatternsOp, ::mlir::OpTrait::ZeroRegions, ::mlir::OpTrait::ZeroResults, ::mlir::OpTrait::ZeroSuccessors, ::mlir::OpTrait::ZeroOperands, ::mlir::OpTrait::OpInvariants, ::mlir::BytecodeOpInterface::Trait, ::mlir::transform::PatternDescriptorOpInterface::Trait> {};
} // namespace transform
} // namespace mlir
MLIR_DECLARE_EXPLICIT_TYPE_ID(::mlir::transform::ApplySplitTransferFullPartialPatternsOp)

namespace mlir {
namespace transform {

//===----------------------------------------------------------------------===//
// ::mlir::transform::ApplyTransferPermutationPatternsOp declarations
//===----------------------------------------------------------------------===//

namespace detail {
class ApplyTransferPermutationPatternsOpGenericAdaptorBase {};
} // namespace detail
template <typename RangeT>
class ApplyTransferPermutationPatternsOpGenericAdaptor : public detail::ApplyTransferPermutationPatternsOpGenericAdaptorBase {};
class ApplyTransferPermutationPatternsOpAdaptor : public ApplyTransferPermutationPatternsOpGenericAdaptor<::mlir::ValueRange> {};
class ApplyTransferPermutationPatternsOp : public ::mlir::Op<ApplyTransferPermutationPatternsOp, ::mlir::OpTrait::ZeroRegions, ::mlir::OpTrait::ZeroResults, ::mlir::OpTrait::ZeroSuccessors, ::mlir::OpTrait::ZeroOperands, ::mlir::OpTrait::OpInvariants, ::mlir::transform::PatternDescriptorOpInterface::Trait> {};
} // namespace transform
} // namespace mlir
MLIR_DECLARE_EXPLICIT_TYPE_ID(::mlir::transform::ApplyTransferPermutationPatternsOp)

namespace mlir {
namespace transform {

//===----------------------------------------------------------------------===//
// ::mlir::transform::ApplyTransferToScfPatternsOp declarations
//===----------------------------------------------------------------------===//

namespace detail {
class ApplyTransferToScfPatternsOpGenericAdaptorBase {};
} // namespace detail
template <typename RangeT>
class ApplyTransferToScfPatternsOpGenericAdaptor : public detail::ApplyTransferToScfPatternsOpGenericAdaptorBase {};
class ApplyTransferToScfPatternsOpAdaptor : public ApplyTransferToScfPatternsOpGenericAdaptor<::mlir::ValueRange> {};
class ApplyTransferToScfPatternsOp : public ::mlir::Op<ApplyTransferToScfPatternsOp, ::mlir::OpTrait::ZeroRegions, ::mlir::OpTrait::ZeroResults, ::mlir::OpTrait::ZeroSuccessors, ::mlir::OpTrait::ZeroOperands, ::mlir::OpTrait::OpInvariants, ::mlir::BytecodeOpInterface::Trait, ::mlir::transform::PatternDescriptorOpInterface::Trait> {};
} // namespace transform
} // namespace mlir
MLIR_DECLARE_EXPLICIT_TYPE_ID(::mlir::transform::ApplyTransferToScfPatternsOp)

namespace mlir {
namespace transform {

//===----------------------------------------------------------------------===//
// ::mlir::transform::ApplyVectorReductionToContractPatternsOp declarations
//===----------------------------------------------------------------------===//

namespace detail {
class ApplyVectorReductionToContractPatternsOpGenericAdaptorBase {};
} // namespace detail
template <typename RangeT>
class ApplyVectorReductionToContractPatternsOpGenericAdaptor : public detail::ApplyVectorReductionToContractPatternsOpGenericAdaptorBase {};
class ApplyVectorReductionToContractPatternsOpAdaptor : public ApplyVectorReductionToContractPatternsOpGenericAdaptor<::mlir::ValueRange> {};
class ApplyVectorReductionToContractPatternsOp : public ::mlir::Op<ApplyVectorReductionToContractPatternsOp, ::mlir::OpTrait::ZeroRegions, ::mlir::OpTrait::ZeroResults, ::mlir::OpTrait::ZeroSuccessors, ::mlir::OpTrait::ZeroOperands, ::mlir::OpTrait::OpInvariants, ::mlir::transform::PatternDescriptorOpInterface::Trait> {};
} // namespace transform
} // namespace mlir
MLIR_DECLARE_EXPLICIT_TYPE_ID(::mlir::transform::ApplyVectorReductionToContractPatternsOp)

namespace mlir {
namespace transform {

//===----------------------------------------------------------------------===//
// ::mlir::transform::ApplyVectorToLLVMConversionPatternsOp declarations
//===----------------------------------------------------------------------===//

namespace detail {
class ApplyVectorToLLVMConversionPatternsOpGenericAdaptorBase {};
} // namespace detail
template <typename RangeT>
class ApplyVectorToLLVMConversionPatternsOpGenericAdaptor : public detail::ApplyVectorToLLVMConversionPatternsOpGenericAdaptorBase {};
class ApplyVectorToLLVMConversionPatternsOpAdaptor : public ApplyVectorToLLVMConversionPatternsOpGenericAdaptor<::mlir::ValueRange> {};
class ApplyVectorToLLVMConversionPatternsOp : public ::mlir::Op<ApplyVectorToLLVMConversionPatternsOp, ::mlir::OpTrait::ZeroRegions, ::mlir::OpTrait::ZeroResults, ::mlir::OpTrait::ZeroSuccessors, ::mlir::OpTrait::ZeroOperands, ::mlir::OpTrait::OpInvariants, ::mlir::BytecodeOpInterface::Trait, ::mlir::transform::ConversionPatternDescriptorOpInterface::Trait> {};
} // namespace transform
} // namespace mlir
MLIR_DECLARE_EXPLICIT_TYPE_ID(::mlir::transform::ApplyVectorToLLVMConversionPatternsOp)


#endif  // GET_OP_CLASSES