/home/arjun/llvm-project/build/tools/mlir/include/mlir/IR/OpAsmInterface.h.inc
Line | Count | Source (jump to first uncovered line) |
1 | | /*===- TableGen'erated file -------------------------------------*- C++ -*-===*\ |
2 | | |* *| |
3 | | |* Operation Interface Declarations *| |
4 | | |* *| |
5 | | |* Automatically generated file, do not edit! *| |
6 | | |* *| |
7 | | \*===----------------------------------------------------------------------===*/ |
8 | | |
9 | | namespace detail { |
10 | | struct OpAsmOpInterfaceInterfaceTraits { |
11 | | class Concept { |
12 | | public: |
13 | 0 | virtual ~Concept() = default; |
14 | | virtual void getAsmResultNames(Operation *tablegen_opaque_op, OpAsmSetValueNameFn setNameFn) = 0; |
15 | | }; |
16 | | template<typename ConcreteOp> |
17 | | class Model : public Concept { |
18 | | public: |
19 | 0 | void getAsmResultNames(Operation *tablegen_opaque_op, OpAsmSetValueNameFn setNameFn) final { |
20 | 0 | auto op = llvm::cast<ConcreteOp>(tablegen_opaque_op); |
21 | 0 | (void)op; |
22 | 0 | return op.getAsmResultNames(setNameFn); |
23 | 0 | } |
24 | | }; |
25 | | }; |
26 | | } // end namespace detail |
27 | | class OpAsmOpInterface : public OpInterface<OpAsmOpInterface, detail::OpAsmOpInterfaceInterfaceTraits> { |
28 | | public: |
29 | | using OpInterface<OpAsmOpInterface, detail::OpAsmOpInterfaceInterfaceTraits>::OpInterface; |
30 | | template <typename ConcreteOp> |
31 | | struct OpAsmOpInterfaceTrait : public OpInterface<OpAsmOpInterface, detail::OpAsmOpInterfaceInterfaceTraits>::Trait<ConcreteOp> { |
32 | | }; |
33 | | template <typename ConcreteOp> |
34 | | struct Trait : public OpAsmOpInterfaceTrait<ConcreteOp> {}; |
35 | | void getAsmResultNames(OpAsmSetValueNameFn setNameFn); |
36 | | }; |