CIRCT  19.0.0git
Public Member Functions | Static Public Member Functions | List of all members
circt::firrtl::FIRRTLType Class Reference

#include <FIRRTLTypes.h>

Inheritance diagram for circt::firrtl::FIRRTLType:
Inheritance graph
[legend]
Collaboration diagram for circt::firrtl::FIRRTLType:
Collaboration graph
[legend]

Public Member Functions

RecursiveTypeProperties getRecursiveTypeProperties () const
 Return the recursive properties of the type, containing the isPassive, containsAnalog, and hasUninferredWidth bits, among others. More...
 
bool containsConst ()
 Returns true if this is or contains a 'const' type. More...
 
bool containsAnalog ()
 Return true if this is or contains an Analog type. More...
 
bool containsReference ()
 Return true if this is or contains a Reference type. More...
 
bool containsTypeAlias ()
 Return true if this is an anonymous type (no type alias). More...
 
bool hasUninferredWidth ()
 Return true if this type contains an uninferred bit width. More...
 
bool hasUninferredReset ()
 Return true if this type contains an uninferred bit reset. More...
 
bool isGround ()
 Return true if this is a 'ground' type, aka a non-aggregate type. More...
 
bool isConst ()
 Returns true if this is a 'const' type that can only hold compile-time constant values. More...
 

Static Public Member Functions

static bool classof (Type type)
 Support method to enable LLVM-style type casting. More...
 

Detailed Description

Definition at line 83 of file FIRRTLTypes.h.

Member Function Documentation

◆ classof()

static bool circt::firrtl::FIRRTLType::classof ( Type  type)
inlinestatic

Support method to enable LLVM-style type casting.

Definition at line 86 of file FIRRTLTypes.h.

◆ containsAnalog()

bool circt::firrtl::FIRRTLType::containsAnalog ( )
inline

Return true if this is or contains an Analog type.

Definition at line 102 of file FIRRTLTypes.h.

References circt::firrtl::RecursiveTypeProperties::containsAnalog, and getRecursiveTypeProperties().

◆ containsConst()

bool circt::firrtl::FIRRTLType::containsConst ( )
inline

Returns true if this is or contains a 'const' type.

Definition at line 99 of file FIRRTLTypes.h.

References circt::firrtl::RecursiveTypeProperties::containsConst, and getRecursiveTypeProperties().

◆ containsReference()

bool circt::firrtl::FIRRTLType::containsReference ( )
inline

Return true if this is or contains a Reference type.

Definition at line 105 of file FIRRTLTypes.h.

References circt::firrtl::RecursiveTypeProperties::containsReference, and getRecursiveTypeProperties().

◆ containsTypeAlias()

bool circt::firrtl::FIRRTLType::containsTypeAlias ( )
inline

Return true if this is an anonymous type (no type alias).

Definition at line 110 of file FIRRTLTypes.h.

References circt::firrtl::RecursiveTypeProperties::containsTypeAlias, and getRecursiveTypeProperties().

◆ getRecursiveTypeProperties()

RecursiveTypeProperties circt::firrtl::FIRRTLType::getRecursiveTypeProperties ( ) const

Return the recursive properties of the type, containing the isPassive, containsAnalog, and hasUninferredWidth bits, among others.

Referenced by containsAnalog(), containsConst(), containsReference(), containsTypeAlias(), hasUninferredReset(), hasUninferredWidth(), and circt::firrtl::detail::OpenVectorTypeStorage::OpenVectorTypeStorage().

◆ hasUninferredReset()

bool circt::firrtl::FIRRTLType::hasUninferredReset ( )
inline

Return true if this type contains an uninferred bit reset.

Definition at line 120 of file FIRRTLTypes.h.

References getRecursiveTypeProperties(), and circt::firrtl::RecursiveTypeProperties::hasUninferredReset.

◆ hasUninferredWidth()

bool circt::firrtl::FIRRTLType::hasUninferredWidth ( )
inline

Return true if this type contains an uninferred bit width.

Definition at line 115 of file FIRRTLTypes.h.

References getRecursiveTypeProperties(), and circt::firrtl::RecursiveTypeProperties::hasUninferredWidth.

◆ isConst()

bool circt::firrtl::FIRRTLType::isConst ( )

Returns true if this is a 'const' type that can only hold compile-time constant values.

Referenced by circt::firrtl::areTypesEquivalent(), circt::firrtl::areTypesWeaklyEquivalent(), and circt::firrtl::impl::inferBitwiseResult().

◆ isGround()

bool circt::firrtl::FIRRTLType::isGround ( )

Return true if this is a 'ground' type, aka a non-aggregate type.


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