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

Public Types

using Adaptor = StructDefOpAdaptor
 
template<typename RangeT>
using GenericAdaptor = StructDefOpGenericAdaptor<RangeT>
 
using FoldAdaptor = GenericAdaptor<::llvm::ArrayRef<::mlir::Attribute>>
 
using Properties = FoldAdaptor::Properties
 

Public Member Functions

static ::llvm::ArrayRef<::llvm::StringRef > getAttributeNames ()
 
::mlir::StringAttr getConstParamsAttrName ()
 
::mlir::StringAttr getSymNameAttrName ()
 
std::pair< unsigned, unsigned > getODSOperandIndexAndLength (unsigned index)
 
::mlir::Operation::operand_range getODSOperands (unsigned index)
 
std::pair< unsigned, unsigned > getODSResultIndexAndLength (unsigned index)
 
::mlir::Operation::result_range getODSResults (unsigned index)
 
::mlir::Region & getBody ()
 
void writeProperties (::mlir::DialectBytecodeWriter &writer)
 
::mlir::StringAttr getSymNameAttr ()
 
::llvm::StringRef getSymName ()
 
::mlir::ArrayAttr getConstParamsAttr ()
 
::std::optional< ::mlir::ArrayAttr > getConstParams ()
 
void setSymNameAttr (::mlir::StringAttr attr)
 
void setSymName (::llvm::StringRef attrValue)
 
void setConstParamsAttr (::mlir::ArrayAttr attr)
 
::mlir::Attribute removeConstParamsAttr ()
 
::mlir::LogicalResult verifyInvariantsImpl ()
 
::mlir::LogicalResult verifyInvariants ()
 
::mlir::LogicalResult verifyRegions ()
 
::mlir::LogicalResult verifySymbolUses (::mlir::SymbolTableCollection &symbolTable)
 
void print (::mlir::OpAsmPrinter &_odsPrinter)
 
StructType getType (::std::optional<::mlir::ArrayAttr > constParams={})
 Gets the StructType representing this struct.
 
FieldDefOp getFieldDef (::mlir::StringAttr fieldName)
 Gets the FieldDefOp that defines the field in this structure with the given name, if present.
 
::std::vector< FieldDefOpgetFieldDefs ()
 Get all FieldDefOp in this structure.
 
::mlir::LogicalResult hasColumns ()
 Returns wether the struct defines fields marked as columns.
 
::llzk::function::FuncDefOp getComputeFuncOp ()
 Gets the FuncDefOp that defines the compute function in this structure, if present.
 
::llzk::function::FuncDefOp getConstrainFuncOp ()
 Gets the FuncDefOp that defines the constrain function in this structure, if present.
 
::std::string getHeaderString ()
 Generate header string, in the same format as the assemblyFormat.
 
bool hasConstParamsAttr ()
 Return false iff getConstParamsAttr() returns nullptr
 
bool hasParamNamed (::mlir::StringAttr find)
 Return true iff this StructDefOp has a parameter with the given name.
 
bool hasParamNamed (::mlir::FlatSymbolRefAttr find)
 
::mlir::SymbolRefAttr getFullyQualifiedName ()
 Return the full name for this struct from the root module, including any surrounding module scopes.
 
bool isMainComponent ()
 Return true iff this StructDefOp is named "Main".
 

Static Public Member Functions

::mlir::StringAttr getConstParamsAttrName (::mlir::OperationName name)
 
::mlir::StringAttr getSymNameAttrName (::mlir::OperationName name)
 
static constexpr ::llvm::StringLiteral getOperationName ()
 
::mlir::LogicalResult setPropertiesFromAttr (Properties &prop, ::mlir::Attribute attr, ::llvm::function_ref<::mlir::InFlightDiagnostic()> emitError)
 
::mlir::Attribute getPropertiesAsAttr (::mlir::MLIRContext *ctx, const Properties &prop)
 
static llvm::hash_code computePropertiesHash (const Properties &prop)
 
static std::optional< mlir::Attribute > getInherentAttr (::mlir::MLIRContext *ctx, const Properties &prop, llvm::StringRef name)
 
static void setInherentAttr (Properties &prop, llvm::StringRef name, mlir::Attribute value)
 
static void populateInherentAttrs (::mlir::MLIRContext *ctx, const Properties &prop, ::mlir::NamedAttrList &attrs)
 
::mlir::LogicalResult verifyInherentAttrs (::mlir::OperationName opName, ::mlir::NamedAttrList &attrs, llvm::function_ref<::mlir::InFlightDiagnostic()> emitError)
 
::mlir::LogicalResult readProperties (::mlir::DialectBytecodeReader &reader, ::mlir::OperationState &state)
 
static void build (::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::StringAttr sym_name, ::mlir::ArrayAttr const_params)
 
static void build (::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::TypeRange resultTypes, ::mlir::StringAttr sym_name, ::mlir::ArrayAttr const_params)
 
static void build (::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::llvm::StringRef sym_name, ::mlir::ArrayAttr const_params)
 
static void build (::mlir::OpBuilder &odsBuilder, ::mlir::OperationState &odsState, ::mlir::TypeRange resultTypes, ::llvm::StringRef sym_name, ::mlir::ArrayAttr const_params)
 
static void build (::mlir::OpBuilder &, ::mlir::OperationState &odsState, ::mlir::TypeRange resultTypes, ::mlir::ValueRange operands, ::llvm::ArrayRef<::mlir::NamedAttribute > attributes={})
 
::mlir::ParseResult parse (::mlir::OpAsmParser &parser, ::mlir::OperationState &result)
 

Detailed Description

Definition at line 889 of file Ops.h.inc.

Member Typedef Documentation

◆ Adaptor

◆ FoldAdaptor

using llzk::component::StructDefOp::FoldAdaptor = GenericAdaptor<::llvm::ArrayRef<::mlir::Attribute>>

Definition at line 896 of file Ops.h.inc.

◆ GenericAdaptor

Definition at line 895 of file Ops.h.inc.

◆ Properties

Member Function Documentation

◆ build() [1/5]

void llzk::component::StructDefOp::build ( ::mlir::OpBuilder & ,
::mlir::OperationState & odsState,
::mlir::TypeRange resultTypes,
::mlir::ValueRange operands,
::llvm::ArrayRef<::mlir::NamedAttribute > attributes = {} )
static

Definition at line 2021 of file Ops.cpp.inc.

◆ build() [2/5]

void llzk::component::StructDefOp::build ( ::mlir::OpBuilder & odsBuilder,
::mlir::OperationState & odsState,
::llvm::StringRef sym_name,
::mlir::ArrayAttr const_params )
static

Definition at line 2003 of file Ops.cpp.inc.

◆ build() [3/5]

void llzk::component::StructDefOp::build ( ::mlir::OpBuilder & odsBuilder,
::mlir::OperationState & odsState,
::mlir::StringAttr sym_name,
::mlir::ArrayAttr const_params )
static

Definition at line 1985 of file Ops.cpp.inc.

◆ build() [4/5]

void llzk::component::StructDefOp::build ( ::mlir::OpBuilder & odsBuilder,
::mlir::OperationState & odsState,
::mlir::TypeRange resultTypes,
::llvm::StringRef sym_name,
::mlir::ArrayAttr const_params )
static

Definition at line 2011 of file Ops.cpp.inc.

◆ build() [5/5]

void llzk::component::StructDefOp::build ( ::mlir::OpBuilder & odsBuilder,
::mlir::OperationState & odsState,
::mlir::TypeRange resultTypes,
::mlir::StringAttr sym_name,
::mlir::ArrayAttr const_params )
static

Definition at line 1993 of file Ops.cpp.inc.

◆ computePropertiesHash()

llvm::hash_code llzk::component::StructDefOp::computePropertiesHash ( const Properties & prop)
static

Definition at line 1884 of file Ops.cpp.inc.

◆ getAttributeNames()

static ::llvm::ArrayRef<::llvm::StringRef > llzk::component::StructDefOp::getAttributeNames ( )
inline

Definition at line 898 of file Ops.h.inc.

◆ getBody()

mlir::Region & llzk::component::StructDefOp::getBody ( )

Definition at line 1810 of file Ops.cpp.inc.

◆ getComputeFuncOp()

FuncDefOp llzk::component::StructDefOp::getComputeFuncOp ( )

Gets the FuncDefOp that defines the compute function in this structure, if present.

Definition at line 353 of file Ops.cpp.

◆ getConstParams()

std::optional<::mlir::ArrayAttr > llzk::component::StructDefOp::getConstParams ( )

Definition at line 1962 of file Ops.cpp.inc.

◆ getConstParamsAttr()

mlir::ArrayAttr llzk::component::StructDefOp::getConstParamsAttr ( )

Definition at line 1958 of file Ops.cpp.inc.

◆ getConstParamsAttrName() [1/2]

::mlir::StringAttr llzk::component::StructDefOp::getConstParamsAttrName ( )
inline

Definition at line 903 of file Ops.h.inc.

◆ getConstParamsAttrName() [2/2]

::mlir::StringAttr llzk::component::StructDefOp::getConstParamsAttrName ( ::mlir::OperationName name)
inlinestatic

Definition at line 907 of file Ops.h.inc.

◆ getConstrainFuncOp()

FuncDefOp llzk::component::StructDefOp::getConstrainFuncOp ( )

Gets the FuncDefOp that defines the constrain function in this structure, if present.

Definition at line 357 of file Ops.cpp.

◆ getFieldDef()

FieldDefOp llzk::component::StructDefOp::getFieldDef ( ::mlir::StringAttr fieldName)

Gets the FieldDefOp that defines the field in this structure with the given name, if present.

Definition at line 328 of file Ops.cpp.

◆ getFieldDefs()

std::vector< FieldDefOp > llzk::component::StructDefOp::getFieldDefs ( )

Get all FieldDefOp in this structure.

Definition at line 341 of file Ops.cpp.

◆ getFullyQualifiedName()

SymbolRefAttr llzk::component::StructDefOp::getFullyQualifiedName ( )

Return the full name for this struct from the root module, including any surrounding module scopes.

Definition at line 177 of file Ops.cpp.

◆ getHeaderString()

std::string llzk::component::StructDefOp::getHeaderString ( )

Generate header string, in the same format as the assemblyFormat.

Definition at line 149 of file Ops.cpp.

◆ getInherentAttr()

std::optional< mlir::Attribute > llzk::component::StructDefOp::getInherentAttr ( ::mlir::MLIRContext * ctx,
const Properties & prop,
llvm::StringRef name )
static

Definition at line 1890 of file Ops.cpp.inc.

◆ getODSOperandIndexAndLength()

std::pair< unsigned, unsigned > llzk::component::StructDefOp::getODSOperandIndexAndLength ( unsigned index)

Definition at line 1790 of file Ops.cpp.inc.

◆ getODSOperands()

mlir::Operation::operand_range llzk::component::StructDefOp::getODSOperands ( unsigned index)

Definition at line 1794 of file Ops.cpp.inc.

◆ getODSResultIndexAndLength()

std::pair< unsigned, unsigned > llzk::component::StructDefOp::getODSResultIndexAndLength ( unsigned index)

Definition at line 1800 of file Ops.cpp.inc.

◆ getODSResults()

mlir::Operation::result_range llzk::component::StructDefOp::getODSResults ( unsigned index)

Definition at line 1804 of file Ops.cpp.inc.

◆ getOperationName()

static constexpr ::llvm::StringLiteral llzk::component::StructDefOp::getOperationName ( )
inlinestatic

Definition at line 919 of file Ops.h.inc.

◆ getPropertiesAsAttr()

mlir::Attribute llzk::component::StructDefOp::getPropertiesAsAttr ( ::mlir::MLIRContext * ctx,
const Properties & prop )
static

Definition at line 1861 of file Ops.cpp.inc.

◆ getSymName()

llvm::StringRef llzk::component::StructDefOp::getSymName ( )

Definition at line 1953 of file Ops.cpp.inc.

◆ getSymNameAttr()

mlir::StringAttr llzk::component::StructDefOp::getSymNameAttr ( )

Definition at line 1949 of file Ops.cpp.inc.

◆ getSymNameAttrName() [1/2]

::mlir::StringAttr llzk::component::StructDefOp::getSymNameAttrName ( )
inline

Definition at line 911 of file Ops.h.inc.

◆ getSymNameAttrName() [2/2]

::mlir::StringAttr llzk::component::StructDefOp::getSymNameAttrName ( ::mlir::OperationName name)
inlinestatic

Definition at line 915 of file Ops.h.inc.

◆ getType()

StructType llzk::component::StructDefOp::getType ( ::std::optional<::mlir::ArrayAttr > constParams = {})

Gets the StructType representing this struct.

If the constParams to use in the type are not given, the StructType will use this->getConstParamsAttr().

Definition at line 143 of file Ops.cpp.

◆ hasColumns()

::mlir::LogicalResult llzk::component::StructDefOp::hasColumns ( )
inline

Returns wether the struct defines fields marked as columns.

Definition at line 982 of file Ops.h.inc.

◆ hasConstParamsAttr()

bool llzk::component::StructDefOp::hasConstParamsAttr ( )
inline

Return false iff getConstParamsAttr() returns nullptr

Definition at line 998 of file Ops.h.inc.

◆ hasParamNamed() [1/2]

bool llzk::component::StructDefOp::hasParamNamed ( ::mlir::FlatSymbolRefAttr find)
inline

Definition at line 1002 of file Ops.h.inc.

◆ hasParamNamed() [2/2]

bool llzk::component::StructDefOp::hasParamNamed ( ::mlir::StringAttr find)

Return true iff this StructDefOp has a parameter with the given name.

◆ isMainComponent()

bool llzk::component::StructDefOp::isMainComponent ( )

Return true iff this StructDefOp is named "Main".

Definition at line 361 of file Ops.cpp.

◆ parse()

mlir::ParseResult llzk::component::StructDefOp::parse ( ::mlir::OpAsmParser & parser,
::mlir::OperationState & result )
static

Definition at line 2055 of file Ops.cpp.inc.

◆ populateInherentAttrs()

void llzk::component::StructDefOp::populateInherentAttrs ( ::mlir::MLIRContext * ctx,
const Properties & prop,
::mlir::NamedAttrList & attrs )
static

Definition at line 1911 of file Ops.cpp.inc.

◆ print()

void llzk::component::StructDefOp::print ( ::mlir::OpAsmPrinter & _odsPrinter)

Definition at line 2090 of file Ops.cpp.inc.

◆ readProperties()

mlir::LogicalResult llzk::component::StructDefOp::readProperties ( ::mlir::DialectBytecodeReader & reader,
::mlir::OperationState & state )
static

Definition at line 1932 of file Ops.cpp.inc.

◆ removeConstParamsAttr()

mlir::Attribute llzk::component::StructDefOp::removeConstParamsAttr ( )

Definition at line 1979 of file Ops.cpp.inc.

◆ setConstParamsAttr()

void llzk::component::StructDefOp::setConstParamsAttr ( ::mlir::ArrayAttr attr)

Definition at line 1975 of file Ops.cpp.inc.

◆ setInherentAttr()

void llzk::component::StructDefOp::setInherentAttr ( Properties & prop,
llvm::StringRef name,
mlir::Attribute value )
static

Definition at line 1899 of file Ops.cpp.inc.

◆ setPropertiesFromAttr()

mlir::LogicalResult llzk::component::StructDefOp::setPropertiesFromAttr ( Properties & prop,
::mlir::Attribute attr,
::llvm::function_ref<::mlir::InFlightDiagnostic()> emitError )
static

Definition at line 1814 of file Ops.cpp.inc.

◆ setSymName()

void llzk::component::StructDefOp::setSymName ( ::llvm::StringRef attrValue)

Definition at line 1971 of file Ops.cpp.inc.

◆ setSymNameAttr()

void llzk::component::StructDefOp::setSymNameAttr ( ::mlir::StringAttr attr)

Definition at line 1967 of file Ops.cpp.inc.

◆ verifyInherentAttrs()

mlir::LogicalResult llzk::component::StructDefOp::verifyInherentAttrs ( ::mlir::OperationName opName,
::mlir::NamedAttrList & attrs,
llvm::function_ref<::mlir::InFlightDiagnostic()> emitError )
static

Definition at line 1917 of file Ops.cpp.inc.

◆ verifyInvariants()

mlir::LogicalResult llzk::component::StructDefOp::verifyInvariants ( )

Definition at line 2051 of file Ops.cpp.inc.

◆ verifyInvariantsImpl()

mlir::LogicalResult llzk::component::StructDefOp::verifyInvariantsImpl ( )

Definition at line 2031 of file Ops.cpp.inc.

◆ verifyRegions()

LogicalResult llzk::component::StructDefOp::verifyRegions ( )

Definition at line 236 of file Ops.cpp.

◆ verifySymbolUses()

LogicalResult llzk::component::StructDefOp::verifySymbolUses ( ::mlir::SymbolTableCollection & symbolTable)

Definition at line 183 of file Ops.cpp.

◆ writeProperties()

void llzk::component::StructDefOp::writeProperties ( ::mlir::DialectBytecodeWriter & writer)

Definition at line 1942 of file Ops.cpp.inc.


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