LLZK 0.1.0
Veridise's ZK Language IR
Loading...
Searching...
No Matches
llzk::component::StructType Class Reference
Inheritance diagram for llzk::component::StructType:
[legend]
Collaboration diagram for llzk::component::StructType:
[legend]

Public Member Functions

::mlir::FailureOr< SymbolLookupResult< StructDefOp > > getDefinition (::mlir::SymbolTableCollection &symbolTable, ::mlir::Operation *op) const
 Gets the struct op that defines this struct.
 
::mlir::LogicalResult verifySymbolRef (::mlir::SymbolTableCollection &symbolTable, ::mlir::Operation *op)
 
mlir::LogicalResult hasColumns (mlir::SymbolTableCollection &symbolTable, mlir::Operation *op) const
 Returns wether the struct this type refers to has fields marked as columns.
 
void print (::mlir::AsmPrinter &odsPrinter) const
 
::mlir::SymbolRefAttr getNameRef () const
 
::mlir::ArrayAttr getParams () const
 

Static Public Member Functions

static StructType get (::mlir::SymbolRefAttr structName)
 
static StructType getChecked (::llvm::function_ref<::mlir::InFlightDiagnostic()> emitError, ::mlir::SymbolRefAttr structName)
 
static StructType get (::mlir::SymbolRefAttr structName, ::mlir::ArrayAttr params)
 
static StructType getChecked (::llvm::function_ref<::mlir::InFlightDiagnostic()> emitError, ::mlir::SymbolRefAttr structName, ::mlir::ArrayAttr params)
 
static StructType get (::mlir::SymbolRefAttr structName, ::llvm::ArrayRef<::mlir::Attribute > paramsRef)
 
static StructType getChecked (::llvm::function_ref<::mlir::InFlightDiagnostic()> emitError, ::mlir::SymbolRefAttr structName, ::llvm::ArrayRef<::mlir::Attribute > paramsRef)
 
::mlir::LogicalResult verify (::llvm::function_ref<::mlir::InFlightDiagnostic()> emitError, ::mlir::SymbolRefAttr nameRef, ::mlir::ArrayAttr params)
 
static constexpr ::llvm::StringLiteral getMnemonic ()
 
::mlir::Type parse (::mlir::AsmParser &odsParser)
 

Static Public Attributes

static constexpr ::llvm::StringLiteral name = "struct.type"
 

Detailed Description

Definition at line 23 of file Types.h.inc.

Member Function Documentation

◆ get() [1/3]

StructType llzk::component::StructType::get ( ::mlir::SymbolRefAttr structName)
static

Definition at line 69 of file Types.cpp.inc.

◆ get() [2/3]

StructType llzk::component::StructType::get ( ::mlir::SymbolRefAttr structName,
::llvm::ArrayRef<::mlir::Attribute > paramsRef )
static

Definition at line 93 of file Types.cpp.inc.

◆ get() [3/3]

StructType llzk::component::StructType::get ( ::mlir::SymbolRefAttr structName,
::mlir::ArrayAttr params )
static

Definition at line 77 of file Types.cpp.inc.

◆ getChecked() [1/3]

StructType llzk::component::StructType::getChecked ( ::llvm::function_ref<::mlir::InFlightDiagnostic()> emitError,
::mlir::SymbolRefAttr structName )
static

Definition at line 73 of file Types.cpp.inc.

◆ getChecked() [2/3]

StructType llzk::component::StructType::getChecked ( ::llvm::function_ref<::mlir::InFlightDiagnostic()> emitError,
::mlir::SymbolRefAttr structName,
::llvm::ArrayRef<::mlir::Attribute > paramsRef )
static

Definition at line 99 of file Types.cpp.inc.

◆ getChecked() [3/3]

StructType llzk::component::StructType::getChecked ( ::llvm::function_ref<::mlir::InFlightDiagnostic()> emitError,
::mlir::SymbolRefAttr structName,
::mlir::ArrayAttr params )
static

Definition at line 85 of file Types.cpp.inc.

◆ getDefinition()

FailureOr< SymbolLookupResult< StructDefOp > > llzk::component::StructType::getDefinition ( ::mlir::SymbolTableCollection & symbolTable,
::mlir::Operation * op ) const

Gets the struct op that defines this struct.

Provided op is used as a starting point for the lookup. Should not be assumed to be non-null as we don't verify all types during verification.

Definition at line 39 of file Types.cpp.

◆ getMnemonic()

static constexpr ::llvm::StringLiteral llzk::component::StructType::getMnemonic ( )
inlinestatic

Definition at line 47 of file Types.h.inc.

◆ getNameRef()

mlir::SymbolRefAttr llzk::component::StructType::getNameRef ( ) const

Definition at line 155 of file Types.cpp.inc.

◆ getParams()

mlir::ArrayAttr llzk::component::StructType::getParams ( ) const

Definition at line 159 of file Types.cpp.inc.

◆ hasColumns()

LogicalResult llzk::component::StructType::hasColumns ( mlir::SymbolTableCollection & symbolTable,
mlir::Operation * op ) const

Returns wether the struct this type refers to has fields marked as columns.

A lookup is necessary first and will forward the failure state if it fails.

Definition at line 68 of file Types.cpp.

◆ parse()

mlir::Type llzk::component::StructType::parse ( ::mlir::AsmParser & odsParser)
static

Definition at line 105 of file Types.cpp.inc.

◆ print()

void llzk::component::StructType::print ( ::mlir::AsmPrinter & odsPrinter) const

Definition at line 141 of file Types.cpp.inc.

◆ verify()

LogicalResult llzk::component::StructType::verify ( ::llvm::function_ref<::mlir::InFlightDiagnostic()> emitError,
::mlir::SymbolRefAttr nameRef,
::mlir::ArrayAttr params )
static

Definition at line 34 of file Types.cpp.

◆ verifySymbolRef()

LogicalResult llzk::component::StructType::verifySymbolRef ( ::mlir::SymbolTableCollection & symbolTable,
::mlir::Operation * op )

Definition at line 64 of file Types.cpp.

Member Data Documentation

◆ name

::llvm::StringLiteral llzk::component::StructType::name = "struct.type"
static

Definition at line 38 of file Types.h.inc.


The documentation for this class was generated from the following files: