LLZK 3.0.0
An open-source IR for Zero Knowledge (ZK) circuits
Loading...
Searching...
No Matches
Types.h.inc
Go to the documentation of this file.
1/*===- TableGen'erated file -------------------------------------*- C++ -*-===*\
2|* *|
3|* TypeDef Declarations *|
4|* *|
5|* Automatically generated file, do not edit! *|
6|* *|
7\*===----------------------------------------------------------------------===*/
8
9#ifdef GET_TYPEDEF_CLASSES
10#undef GET_TYPEDEF_CLASSES
11
12
13namespace mlir {
14class AsmParser;
15class AsmPrinter;
16} // namespace mlir
17namespace llzk::component {
18
46class StructType;
47namespace detail {
48
50
51} // namespace detail
52class StructType : public ::mlir::Type::TypeBase<StructType, ::mlir::Type, detail::StructTypeStorage> {
53public:
54 using Base::Base;
58 ::mlir::FailureOr<SymbolLookupResult<StructDefOp>> getDefinition
59 (::mlir::SymbolTableCollection &symbolTable, ::mlir::Operation *op, bool reportMissing = true) const;
60
61 // Verifies that this type references a valid struct, relative to the given `op`.
62 ::mlir::LogicalResult verifySymbolRef(::mlir::SymbolTableCollection &symbolTable, ::mlir::Operation *op);
63
66 mlir::LogicalResult hasColumns(mlir::SymbolTableCollection &symbolTable, mlir::Operation *op) const;
67 static constexpr ::llvm::StringLiteral name = "struct.type";
68 static constexpr ::llvm::StringLiteral dialectName = "struct";
69 using Base::getChecked;
70 static StructType get(::mlir::SymbolRefAttr structName);
71 static StructType getChecked(::llvm::function_ref<::mlir::InFlightDiagnostic()> emitError, ::mlir::SymbolRefAttr structName);
72 static StructType get(::mlir::SymbolRefAttr structName, ::mlir::ArrayAttr params);
73 static StructType getChecked(::llvm::function_ref<::mlir::InFlightDiagnostic()> emitError, ::mlir::SymbolRefAttr structName, ::mlir::ArrayAttr params);
74 static StructType get(::mlir::SymbolRefAttr structName, ::llvm::ArrayRef<::mlir::Attribute> paramsRef);
75 static StructType getChecked(::llvm::function_ref<::mlir::InFlightDiagnostic()> emitError, ::mlir::SymbolRefAttr structName, ::llvm::ArrayRef<::mlir::Attribute> paramsRef);
76 static ::llvm::LogicalResult verify(::llvm::function_ref<::mlir::InFlightDiagnostic()> emitError, ::mlir::SymbolRefAttr nameRef, ::mlir::ArrayAttr params);
77 static ::llvm::LogicalResult verifyInvariants(::llvm::function_ref<::mlir::InFlightDiagnostic()> emitError, ::mlir::SymbolRefAttr nameRef, ::mlir::ArrayAttr params);
78 static constexpr ::llvm::StringLiteral getMnemonic() {
79 return {"type"};
80 }
81
82 static ::mlir::Type parse(::mlir::AsmParser &odsParser);
83 void print(::mlir::AsmPrinter &odsPrinter) const;
84 ::mlir::SymbolRefAttr getNameRef() const;
85 ::mlir::ArrayAttr getParams() const;
86};
87
88} // namespace llzk::component
89MLIR_DECLARE_EXPLICIT_TYPE_ID(::llzk::component::StructType)
90
91#endif // GET_TYPEDEF_CLASSES
92
::mlir::SymbolRefAttr getNameRef() const
static StructType getChecked(::llvm::function_ref<::mlir::InFlightDiagnostic()> emitError, ::mlir::SymbolRefAttr structName)
Definition Types.cpp.inc:85
mlir::LogicalResult hasColumns(mlir::SymbolTableCollection &symbolTable, mlir::Operation *op) const
Returns wether the struct this type refers to has members marked as columns.
Definition Types.cpp:64
static constexpr ::llvm::StringLiteral dialectName
Definition Types.h.inc:68
void print(::mlir::AsmPrinter &odsPrinter) const
static StructType get(::mlir::SymbolRefAttr structName)
Definition Types.cpp.inc:81
::mlir::FailureOr< SymbolLookupResult< StructDefOp > > getDefinition(::mlir::SymbolTableCollection &symbolTable, ::mlir::Operation *op, bool reportMissing=true) const
Gets the struct op that defines this struct.
Definition Types.cpp:26
::mlir::Type parse(::mlir::AsmParser &odsParser)
::llvm::LogicalResult verify(::llvm::function_ref<::mlir::InFlightDiagnostic()> emitError, ::mlir::SymbolRefAttr nameRef, ::mlir::ArrayAttr params)
Definition Types.cpp:20
static constexpr ::llvm::StringLiteral getMnemonic()
Definition Types.h.inc:78
::mlir::ArrayAttr getParams() const
::llvm::LogicalResult verifyInvariants(::llvm::function_ref<::mlir::InFlightDiagnostic()> emitError, ::mlir::SymbolRefAttr nameRef, ::mlir::ArrayAttr params)
::mlir::LogicalResult verifySymbolRef(::mlir::SymbolTableCollection &symbolTable, ::mlir::Operation *op)
Definition Types.cpp:60
static constexpr ::llvm::StringLiteral name
Definition Types.h.inc:67
Common interface for operations that read or write from a struct member.