11#include <mlir/CAPI/IR.h>
12#include <mlir/CAPI/Support.h>
13#include <llvm/ADT/TypeSwitch.h>
20 return llvm::isa<RecordAttr>(unwrap(inp));
25 return wrap(RecordAttr::get(unwrap(ctx), unwrap(name), ::llvm::cast<::mlir::Type>(unwrap(type))));
29 return wrap(llvm::cast<RecordAttr>(unwrap(inp)).getName());
33 return wrap(llvm::cast<RecordAttr>(unwrap(inp)).getType());
37 return wrap(llvm::cast<RecordAttr>(unwrap(inp)).getNameSym());
MlirAttribute llzkPod_RecordAttrGetNameSym(MlirAttribute inp)
Returns the record name as a symbol.
MlirType llzkPod_RecordAttrGetType(MlirAttribute inp)
Get 'type' parameter from a llzk::pod::RecordAttr Attribute.
MlirAttribute llzkPod_RecordAttrGet(MlirContext ctx, MlirIdentifier name, MlirType type)
Create a llzk::pod::RecordAttr Attribute with the given parameters.
bool llzkAttributeIsA_Pod_RecordAttr(MlirAttribute inp)
Returns true if the Attribute is a llzk::pod::RecordAttr.
MlirIdentifier llzkPod_RecordAttrGetName(MlirAttribute inp)
Get 'name' parameter from a llzk::pod::RecordAttr Attribute.