LLZK
3.0.0
An open-source IR for Zero Knowledge (ZK) circuits
Toggle main menu visibility
Loading...
Searching...
No Matches
Types.cpp.inc
Go to the documentation of this file.
1
/*===- TableGen'erated file -------------------------------------*- C++ -*-===*\
2
|* *|
3
|* TypeDef Definitions *|
4
|* *|
5
|* Automatically generated file, do not edit! *|
6
|* *|
7
\*===----------------------------------------------------------------------===*/
8
9
#ifdef GET_TYPEDEF_LIST
10
#undef GET_TYPEDEF_LIST
11
12
::llzk::string::StringType
13
14
#endif
// GET_TYPEDEF_LIST
15
16
#ifdef GET_TYPEDEF_CLASSES
17
#undef GET_TYPEDEF_CLASSES
18
19
static ::mlir::OptionalParseResult generatedTypeParser(::mlir::AsmParser &parser, ::llvm::StringRef *mnemonic, ::mlir::Type &value) {
20
return ::mlir::AsmParser::KeywordSwitch<::mlir::OptionalParseResult>(parser)
21
.Case(
::llzk::string::StringType::getMnemonic
(), [&](llvm::StringRef, llvm::SMLoc) {
22
value = ::llzk::string::StringType::get(parser.getContext());
23
return ::mlir::success(!!value);
24
})
25
.Default([&](llvm::StringRef keyword, llvm::SMLoc) {
26
*mnemonic = keyword;
27
return
std::nullopt;
28
});
29
}
30
31
static ::llvm::LogicalResult generatedTypePrinter(::mlir::Type def, ::mlir::AsmPrinter &printer) {
32
return ::llvm::TypeSwitch<::mlir::Type, ::llvm::LogicalResult>(def) .Case<
::llzk::string::StringType
>([&](
auto
t) {
33
printer <<
::llzk::string::StringType::getMnemonic
();
34
return ::mlir::success();
35
})
36
.Default([](
auto
) { return ::mlir::failure(); });
37
}
38
39
namespace
llzk
{
40
namespace
string
{
41
}
// namespace string
42
}
// namespace llzk
43
MLIR_DEFINE_EXPLICIT_TYPE_ID(
::llzk::string::StringType
)
44
namespace
llzk
{
45
namespace
string
{
46
48
::mlir::Type
StringDialect::parseType
(::mlir::DialectAsmParser &parser)
const
{
49
::llvm::SMLoc typeLoc = parser.getCurrentLocation();
50
::llvm::StringRef mnemonic;
51
::mlir::Type genType;
52
auto
parseResult = generatedTypeParser(parser, &mnemonic, genType);
53
if
(parseResult.has_value())
54
return
genType;
55
56
parser.emitError(typeLoc) <<
"unknown type `"
57
<< mnemonic <<
"` in dialect `"
<< getNamespace() <<
"`"
;
58
return
{};
59
}
60
61
void
StringDialect::printType
(::mlir::Type type,
62
::mlir::DialectAsmPrinter &printer)
const
{
63
if
(::mlir::succeeded(generatedTypePrinter(type, printer)))
64
return
;
65
66
}
67
}
// namespace string
68
}
// namespace llzk
69
70
#endif
// GET_TYPEDEF_CLASSES
71
llzk::string::StringDialect::printType
void printType(::mlir::Type type, ::mlir::DialectAsmPrinter &os) const override
Print a type registered to this dialect.
Definition
Types.cpp.inc:61
llzk::string::StringDialect::parseType
::mlir::Type parseType(::mlir::DialectAsmParser &parser) const override
Parse a type registered to this dialect.
Definition
Types.cpp.inc:48
llzk::string::StringType
Definition
Types.h.inc:20
llzk::string::StringType::getMnemonic
static constexpr ::llvm::StringLiteral getMnemonic()
Definition
Types.h.inc:25
llzk::string
Definition
Ops.cpp:18
llzk
Definition
AnalysisPassEnums.cpp:19
build
include
llzk
Dialect
String
IR
Types.cpp.inc
Generated by
1.17.0
Copyright 2025 Veridise Inc. under the Apache License v2.0. Copyright 2026 Project LLZK under the Apache License v2.0.