LLVM  8.0.1
NativeTypeVTShape.h
Go to the documentation of this file.
1 //===- NativeTypeVTShape.h - info about virtual table shape ------*- C++-*-===//
2 //
3 // The LLVM Compiler Infrastructure
4 //
5 // This file is distributed under the University of Illinois Open Source
6 // License. See LICENSE.TXT for details.
7 //
8 //===----------------------------------------------------------------------===//
9 
10 #ifndef LLVM_DEBUGINFO_PDB_NATIVE_NATIVETYPEVTSHAPE_H
11 #define LLVM_DEBUGINFO_PDB_NATIVE_NATIVETYPEVTSHAPE_H
12 
13 #include "llvm/ADT/Optional.h"
18 
19 namespace llvm {
20 namespace pdb {
21 
23 public:
24  // Create a pointer record for a non-simple type.
27 
28  ~NativeTypeVTShape() override;
29 
30  void dump(raw_ostream &OS, int Indent, PdbSymbolIdField ShowIdFields,
31  PdbSymbolIdField RecurseIdFields) const override;
32 
33  bool isConstType() const override;
34  bool isVolatileType() const override;
35  bool isUnalignedType() const override;
36  uint32_t getCount() const override;
37 
38 protected:
41 };
42 
43 } // namespace pdb
44 } // namespace llvm
45 
46 #endif // LLVM_DEBUGINFO_PDB_NATIVE_NATIVETYPEVTSHAPE_H
This class represents lattice values for constants.
Definition: AllocatorList.h:24
codeview::VFTableShapeRecord Record
bool isConstType() const override
NativeTypeVTShape(NativeSession &Session, SymIndexId Id, codeview::TypeIndex TI, codeview::VFTableShapeRecord SR)
A 32-bit type reference.
Definition: TypeIndex.h:96
void dump(raw_ostream &OS, int Indent, PdbSymbolIdField ShowIdFields, PdbSymbolIdField RecurseIdFields) const override
uint32_t getCount() const override
Definition: JSON.cpp:598
bool isUnalignedType() const override
This class implements an extremely fast bulk output stream that can only output to a stream...
Definition: raw_ostream.h:46
bool isVolatileType() const override