13#include "mlir/CAPI/IR.h"
14#include "mlir/CAPI/Registration.h"
31 return isa<SequenceType>(
unwrap(type));
39 return isa<PropertyType>(
unwrap(type));
55 return isa<ClockEdgeAttr>(
unwrap(attr));
59 return wrap(ClockEdgeAttr::get(
unwrap(ctx),
static_cast<ClockEdge
>(edge)));
63 auto edge = cast<ClockEdgeAttr>(
unwrap(attr)).getValue();
64 return static_cast<LTLClockEdge>(
static_cast<unsigned>(edge));
return wrap(CMemoryType::get(unwrap(ctx), baseType, numElements))
MLIR_DEFINE_CAPI_DIALECT_REGISTRATION(CHIRRTL, chirrtl, circt::chirrtl::CHIRRTLDialect) MlirType chirrtlTypeGetCMemory(MlirContext ctx
bool ltlAttrIsAClockEdgeAttr(MlirAttribute attr)
bool ltlTypeIsAProperty(MlirType type)
LTLClockEdge ltlClockEdgeAttrGetValue(MlirAttribute attr)
MlirType ltlPropertyTypeGet(MlirContext ctx)
MlirType ltlSequenceTypeGet(MlirContext ctx)
MlirAttribute ltlClockEdgeAttrGet(MlirContext ctx, LTLClockEdge edge)
MLIR_CAPI_EXPORTED bool ltlTypeIsASequence(MlirType type)
static EvaluatorValuePtr unwrap(OMEvaluatorValue c)
The InstanceGraph op interface, see InstanceGraphInterface.td for more details.