|
clang 24.0.0git
|
Type storage for CIR union types. More...
#include "clang/CIR/Dialect/IR/CIRTypesDetails.h"
Classes | |
| struct | KeyTy |
Public Member Functions | |
| UnionTypeStorage (llvm::ArrayRef< mlir::Type > members, mlir::StringAttr name, bool incomplete, bool packed, mlir::Type padding, llvm::ArrayRef< RecordMemberKind > member_kinds) | |
| KeyTy | getAsKey () const |
| bool | operator== (const KeyTy &key) const |
| llvm::LogicalResult | mutate (mlir::TypeStorageAllocator &allocator, llvm::ArrayRef< mlir::Type > members, bool packed, mlir::Type padding, llvm::ArrayRef< RecordMemberKind > memberKinds) |
| Mutates the members and attributes of an identified union. | |
Static Public Member Functions | |
| static llvm::hash_code | hashKey (const KeyTy &key) |
| static UnionTypeStorage * | construct (mlir::TypeStorageAllocator &allocator, const KeyTy &key) |
Public Attributes | |
| llvm::ArrayRef< mlir::Type > | members |
| mlir::StringAttr | name |
| bool | incomplete |
| bool | packed |
| mlir::Type | padding |
| llvm::ArrayRef< RecordMemberKind > | member_kinds |
Type storage for CIR union types.
Definition at line 124 of file CIRTypesDetails.h.
|
inline |
Definition at line 147 of file CIRTypesDetails.h.
References incomplete, member_kinds, members, name, packed, and padding.
Referenced by construct().
|
inlinestatic |
Definition at line 176 of file CIRTypesDetails.h.
References cir::detail::UnionTypeStorage::KeyTy::incomplete, cir::detail::UnionTypeStorage::KeyTy::member_kinds, cir::detail::UnionTypeStorage::KeyTy::members, cir::detail::UnionTypeStorage::KeyTy::name, cir::detail::UnionTypeStorage::KeyTy::packed, cir::detail::UnionTypeStorage::KeyTy::padding, and UnionTypeStorage().
|
inline |
Definition at line 157 of file CIRTypesDetails.h.
References incomplete, member_kinds, members, name, packed, and padding.
|
inlinestatic |
Definition at line 169 of file CIRTypesDetails.h.
References cir::detail::UnionTypeStorage::KeyTy::incomplete, cir::detail::UnionTypeStorage::KeyTy::member_kinds, cir::detail::UnionTypeStorage::KeyTy::members, cir::detail::UnionTypeStorage::KeyTy::name, cir::detail::UnionTypeStorage::KeyTy::packed, and cir::detail::UnionTypeStorage::KeyTy::padding.
|
inline |
Mutates the members and attributes of an identified union.
Definition at line 184 of file CIRTypesDetails.h.
References incomplete, members, name, packed, and padding.
Definition at line 161 of file CIRTypesDetails.h.
References incomplete, cir::detail::UnionTypeStorage::KeyTy::incomplete, cir::detail::UnionTypeStorage::KeyTy::member_kinds, member_kinds, cir::detail::UnionTypeStorage::KeyTy::members, members, cir::detail::UnionTypeStorage::KeyTy::name, name, cir::detail::UnionTypeStorage::KeyTy::packed, packed, cir::detail::UnionTypeStorage::KeyTy::padding, and padding.
| bool cir::detail::UnionTypeStorage::incomplete |
Definition at line 142 of file CIRTypesDetails.h.
Referenced by getAsKey(), mutate(), operator==(), and UnionTypeStorage().
| llvm::ArrayRef<RecordMemberKind> cir::detail::UnionTypeStorage::member_kinds |
Definition at line 145 of file CIRTypesDetails.h.
Referenced by getAsKey(), operator==(), and UnionTypeStorage().
| llvm::ArrayRef<mlir::Type> cir::detail::UnionTypeStorage::members |
Definition at line 140 of file CIRTypesDetails.h.
Referenced by getAsKey(), mutate(), operator==(), and UnionTypeStorage().
| mlir::StringAttr cir::detail::UnionTypeStorage::name |
Definition at line 141 of file CIRTypesDetails.h.
Referenced by getAsKey(), mutate(), operator==(), and UnionTypeStorage().
| bool cir::detail::UnionTypeStorage::packed |
Definition at line 143 of file CIRTypesDetails.h.
Referenced by getAsKey(), mutate(), operator==(), and UnionTypeStorage().
| mlir::Type cir::detail::UnionTypeStorage::padding |
Definition at line 144 of file CIRTypesDetails.h.
Referenced by getAsKey(), mutate(), operator==(), and UnionTypeStorage().