LLZK 3.0.0
An open-source IR for Zero Knowledge (ZK) circuits
Loading...
Searching...
No Matches
OpInterfaces.h.inc
Go to the documentation of this file.
1/*===- TableGen'erated file -------------------------------------*- C++ -*-===*\
2|* *|
3|* Interface Declarations *|
4|* *|
5|* Automatically generated file, do not edit! *|
6|* *|
7\*===----------------------------------------------------------------------===*/
8
9namespace llzk::constrain {
10
13
14} // namespace llzk::constrain
15namespace llzk::constrain {
16
18namespace detail {
20 struct Concept {
22 };
23 template<typename ConcreteOp>
24 class Model : public Concept {
25 public:
27 Model() : Concept{} {}
28
29 };
30 template<typename ConcreteOp>
37 template<typename ConcreteModel, typename ConcreteOp>
38 class ExternalModel : public FallbackModel<ConcreteModel> {
39 public:
40 using ConcreteEntity = ConcreteOp;
41 };
42};
43template <typename ConcreteOp>
45
46} // namespace detail
47class ConstraintOpInterface : public ::mlir::OpInterface<ConstraintOpInterface, detail::ConstraintOpInterfaceInterfaceTraits> {
48public:
49 using ::mlir::OpInterface<ConstraintOpInterface, detail::ConstraintOpInterfaceInterfaceTraits>::OpInterface;
50 template <typename ConcreteOp>
51 struct Trait : public detail::ConstraintOpInterfaceTrait<ConcreteOp> {};
52};
53
54} // namespace llzk::constrain
56
57 template <typename ConcreteOp>
58 struct ConstraintOpInterfaceTrait : public ::mlir::OpInterface<ConstraintOpInterface, detail::ConstraintOpInterfaceInterfaceTraits>::Trait<ConcreteOp> {
59 };
60
61} // namespace llzk::constrain::detail
62namespace llzk::constrain {
63
64
65} // namespace llzk::constrain
Common interface for operations that produce a constraint.