19#include "mlir/IR/DialectImplementation.h" 
   20#include "mlir/IR/OpDefinition.h" 
   21#include "llvm/ADT/SmallString.h" 
   22#include "llvm/ADT/TypeSwitch.h" 
   26using namespace chirrtl;
 
   27using namespace firrtl;
 
   29#define GET_TYPEDEF_CLASSES 
   30#include "circt/Dialect/FIRRTL/CHIRRTLTypes.cpp.inc" 
   36void CMemoryType::print(AsmPrinter &printer)
 const {
 
   40  printer << 
", " << getNumElements() << 
">";
 
   43Type CMemoryType::parse(AsmParser &parser) {
 
   47      parser.parseComma() || parser.parseInteger(
numElements) ||
 
   48      parser.parseGreater())
 
   53LogicalResult CMemoryType::verify(function_ref<InFlightDiagnostic()> emitError,
 
   57    return emitError() << 
"behavioral memory element type must be passive";
 
   66void CHIRRTLDialect::registerTypes() {
 
   68#define GET_TYPEDEF_LIST 
   69#include "circt/Dialect/FIRRTL/CHIRRTLTypes.cpp.inc" 
MlirType uint64_t numElements
 
ParseResult parseNestedBaseType(FIRRTLBaseType &result, AsmParser &parser)
 
void printNestedType(Type type, AsmPrinter &os)
Print a type defined by this dialect.
 
The InstanceGraph op interface, see InstanceGraphInterface.td for more details.