CIRCT  20.0.0git
Public Member Functions | Static Public Member Functions | List of all members
circt::moore::UnpackedType Class Reference

An unpacked SystemVerilog type. More...

#include <MooreTypes.h>

Inheritance diagram for circt::moore::UnpackedType:
Inheritance graph
[legend]
Collaboration diagram for circt::moore::UnpackedType:
Collaboration graph
[legend]

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)
 

Detailed Description

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:

The unpacked dimensions are:

Definition at line 82 of file MooreTypes.h.

Member Function Documentation

◆ classof()

static bool circt::moore::UnpackedType::classof ( Type  type)
inlinestatic

Definition at line 84 of file MooreTypes.h.

◆ getBitSize()

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.

◆ getDomain()

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.

◆ parse()

Type UnpackedType::parse ( mlir::AsmParser &  odsParser)
static

Definition at line 85 of file MooreTypes.cpp.

References parseMooreType().

◆ print()

void UnpackedType::print ( mlir::AsmPrinter &  odsPrinter) const

Definition at line 92 of file MooreTypes.cpp.

References printMooreType().


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