CIRCT  19.0.0git
Public Types | Public Member Functions | Static Public Member Functions | Public Attributes | List of all members
circt::firrtl::detail::FEnumTypeStorage Struct Reference
Inheritance diagram for circt::firrtl::detail::FEnumTypeStorage:
Inheritance graph
[legend]
Collaboration diagram for circt::firrtl::detail::FEnumTypeStorage:
Collaboration graph
[legend]

Public Types

using KeyTy = std::pair< ArrayRef< FEnumType::EnumElement >, char >
 
- Public Types inherited from circt::firrtl::detail::FIRRTLBaseTypeStorage
using KeyTy = char
 

Public Member Functions

 FEnumTypeStorage (ArrayRef< FEnumType::EnumElement > elements, bool isConst)
 
bool operator== (const KeyTy &key) const
 
KeyTy getAsKey () const
 
- Public Member Functions inherited from circt::firrtl::detail::FIRRTLBaseTypeStorage
 FIRRTLBaseTypeStorage (bool isConst)
 
bool operator== (const KeyTy &key) const
 
KeyTy getAsKey () const
 

Static Public Member Functions

static llvm::hash_code hashKey (const KeyTy &key)
 
static FEnumTypeStorageconstruct (TypeStorageAllocator &allocator, KeyTy key)
 
- Static Public Member Functions inherited from circt::firrtl::detail::FIRRTLBaseTypeStorage
static FIRRTLBaseTypeStorageconstruct (TypeStorageAllocator &allocator, KeyTy key)
 

Public Attributes

SmallVector< FEnumType::EnumElement, 4 > elements
 
SmallVector< uint64_t, 4 > fieldIDs
 
uint64_t maxFieldID
 
RecursiveTypeProperties recProps
 
FIRRTLBaseType anonymousType
 
- Public Attributes inherited from circt::firrtl::detail::FIRRTLBaseTypeStorage
char isConst
 

Detailed Description

Definition at line 2107 of file FIRRTLTypes.cpp.

Member Typedef Documentation

◆ KeyTy

using circt::firrtl::detail::FEnumTypeStorage::KeyTy = std::pair<ArrayRef<FEnumType::EnumElement>, char>

Definition at line 2108 of file FIRRTLTypes.cpp.

Constructor & Destructor Documentation

◆ FEnumTypeStorage()

circt::firrtl::detail::FEnumTypeStorage::FEnumTypeStorage ( ArrayRef< FEnumType::EnumElement >  elements,
bool  isConst 
)
inline

Member Function Documentation

◆ construct()

static FEnumTypeStorage* circt::firrtl::detail::FEnumTypeStorage::construct ( TypeStorageAllocator &  allocator,
KeyTy  key 
)
inlinestatic

Definition at line 2146 of file FIRRTLTypes.cpp.

References FEnumTypeStorage().

◆ getAsKey()

KeyTy circt::firrtl::detail::FEnumTypeStorage::getAsKey ( ) const
inline

Definition at line 2138 of file FIRRTLTypes.cpp.

References elements, and circt::firrtl::detail::FIRRTLBaseTypeStorage::isConst.

Referenced by operator==().

◆ hashKey()

static llvm::hash_code circt::firrtl::detail::FEnumTypeStorage::hashKey ( const KeyTy key)
inlinestatic

Definition at line 2140 of file FIRRTLTypes.cpp.

◆ operator==()

bool circt::firrtl::detail::FEnumTypeStorage::operator== ( const KeyTy key) const
inline

Definition at line 2136 of file FIRRTLTypes.cpp.

References getAsKey().

Member Data Documentation

◆ anonymousType

FIRRTLBaseType circt::firrtl::detail::FEnumTypeStorage::anonymousType

Definition at line 2157 of file FIRRTLTypes.cpp.

◆ elements

SmallVector<FEnumType::EnumElement, 4> circt::firrtl::detail::FEnumTypeStorage::elements

Definition at line 2152 of file FIRRTLTypes.cpp.

Referenced by FEnumTypeStorage(), and getAsKey().

◆ fieldIDs

SmallVector<uint64_t, 4> circt::firrtl::detail::FEnumTypeStorage::fieldIDs

Definition at line 2153 of file FIRRTLTypes.cpp.

Referenced by FEnumTypeStorage().

◆ maxFieldID

uint64_t circt::firrtl::detail::FEnumTypeStorage::maxFieldID

Definition at line 2154 of file FIRRTLTypes.cpp.

Referenced by FEnumTypeStorage().

◆ recProps

RecursiveTypeProperties circt::firrtl::detail::FEnumTypeStorage::recProps

Definition at line 2156 of file FIRRTLTypes.cpp.

Referenced by FEnumTypeStorage().


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