xref: /llvm-project/mlir/include/mlir-c/Dialect/Transform.h (revision 681eacc1b670fd7137d8677fef6fc76c6e37dca9)
1 //===-- mlir-c/Dialect/Transform.h - C API for Transform Dialect --*- C -*-===//
2 //
3 // Part of the LLVM Project, under the Apache License v2.0 with LLVM
4 // Exceptions.
5 // See https://llvm.org/LICENSE.txt for license information.
6 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
7 //
8 //===----------------------------------------------------------------------===//
9 
10 #ifndef MLIR_C_DIALECT_TRANSFORM_H
11 #define MLIR_C_DIALECT_TRANSFORM_H
12 
13 #include "mlir-c/IR.h"
14 #include "mlir-c/Support.h"
15 
16 #ifdef __cplusplus
17 extern "C" {
18 #endif
19 
20 MLIR_DECLARE_CAPI_DIALECT_REGISTRATION(Transform, transform);
21 
22 //===---------------------------------------------------------------------===//
23 // AnyOpType
24 //===---------------------------------------------------------------------===//
25 
26 MLIR_CAPI_EXPORTED bool mlirTypeIsATransformAnyOpType(MlirType type);
27 
28 MLIR_CAPI_EXPORTED MlirTypeID mlirTransformAnyOpTypeGetTypeID(void);
29 
30 MLIR_CAPI_EXPORTED MlirType mlirTransformAnyOpTypeGet(MlirContext ctx);
31 
32 //===---------------------------------------------------------------------===//
33 // AnyParamType
34 //===---------------------------------------------------------------------===//
35 
36 MLIR_CAPI_EXPORTED bool mlirTypeIsATransformAnyParamType(MlirType type);
37 
38 MLIR_CAPI_EXPORTED MlirTypeID mlirTransformAnyParamTypeGetTypeID(void);
39 
40 MLIR_CAPI_EXPORTED MlirType mlirTransformAnyParamTypeGet(MlirContext ctx);
41 
42 //===---------------------------------------------------------------------===//
43 // AnyValueType
44 //===---------------------------------------------------------------------===//
45 
46 MLIR_CAPI_EXPORTED bool mlirTypeIsATransformAnyValueType(MlirType type);
47 
48 MLIR_CAPI_EXPORTED MlirTypeID mlirTransformAnyValueTypeGetTypeID(void);
49 
50 MLIR_CAPI_EXPORTED MlirType mlirTransformAnyValueTypeGet(MlirContext ctx);
51 
52 //===---------------------------------------------------------------------===//
53 // OperationType
54 //===---------------------------------------------------------------------===//
55 
56 MLIR_CAPI_EXPORTED bool mlirTypeIsATransformOperationType(MlirType type);
57 
58 MLIR_CAPI_EXPORTED MlirTypeID mlirTransformOperationTypeGetTypeID(void);
59 
60 MLIR_CAPI_EXPORTED MlirType
61 mlirTransformOperationTypeGet(MlirContext ctx, MlirStringRef operationName);
62 
63 MLIR_CAPI_EXPORTED MlirStringRef
64 mlirTransformOperationTypeGetOperationName(MlirType type);
65 
66 //===---------------------------------------------------------------------===//
67 // ParamType
68 //===---------------------------------------------------------------------===//
69 
70 MLIR_CAPI_EXPORTED bool mlirTypeIsATransformParamType(MlirType type);
71 
72 MLIR_CAPI_EXPORTED MlirTypeID mlirTransformParamTypeGetTypeID(void);
73 
74 MLIR_CAPI_EXPORTED MlirType mlirTransformParamTypeGet(MlirContext ctx,
75                                                       MlirType type);
76 
77 MLIR_CAPI_EXPORTED MlirType mlirTransformParamTypeGetType(MlirType type);
78 
79 #ifdef __cplusplus
80 }
81 #endif
82 
83 #endif // MLIR_C_DIALECT_TRANSFORM_H
84