CIRCT
20.0.0git
|
An unpacked SystemVerilog type. More...
#include <MooreTypes.h>
Public Member Functions | |
Domain | getDomain () const |
Get the value domain of this type. More... | |
std::optional< unsigned > | getBitSize () const |
Get the size of this type in bits. More... | |
void | print (mlir::AsmPrinter &odsPrinter) const |
Static Public Member Functions | |
static bool | classof (Type type) |
static Type | parse (mlir::AsmParser &odsParser) |
An unpacked SystemVerilog type.
Unpacked types are a second level of types in SystemVerilog. They extend a core unpacked type with a variety of unpacked dimensions, depending on which syntactic construct generated the type (variable or otherwise). The core unpacked types are:
shortreal
, real
, realtime
string
, chandle
, event
The unpacked dimensions are:
[]
)[x]
)[x:y]
)[T]
or [*]
)[$]
or [$:x]
) Definition at line 82 of file MooreTypes.h.
|
inlinestatic |
Definition at line 84 of file MooreTypes.h.
std::optional< unsigned > UnpackedType::getBitSize | ( | ) | const |
Get the size of this type in bits.
Returns None
if any of the type's dimensions is unsized, associative, or a queue, or the core type itself has no known size.
Definition at line 51 of file MooreTypes.cpp.
Domain UnpackedType::getDomain | ( | ) | const |
Get the value domain of this type.
Definition at line 36 of file MooreTypes.cpp.
References circt::moore::FourValued, and circt::moore::TwoValued.
|
static |
Definition at line 85 of file MooreTypes.cpp.
References parseMooreType().
void UnpackedType::print | ( | mlir::AsmPrinter & | odsPrinter | ) | const |
Definition at line 92 of file MooreTypes.cpp.
References printMooreType().