Line data Source code
1 : //===- PDBSymbolTypeUDT.h - UDT type info -----------------------*- 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_PDBSYMBOLTYPEUDT_H
11 : #define LLVM_DEBUGINFO_PDB_PDBSYMBOLTYPEUDT_H
12 :
13 : #include "IPDBLineNumber.h"
14 : #include "IPDBSession.h"
15 : #include "PDBSymbol.h"
16 : #include "PDBSymbolTypeBaseClass.h"
17 : #include "PDBTypes.h"
18 :
19 : namespace llvm {
20 :
21 : class raw_ostream;
22 :
23 : namespace pdb {
24 :
25 : class PDBSymbolTypeUDT : public PDBSymbol {
26 253 : DECLARE_PDB_SYMBOL_CONCRETE_TYPE(PDB_SymType::UDT)
27 : public:
28 : void dump(PDBSymDumper &Dumper) const override;
29 :
30 : FORWARD_SYMBOL_ID_METHOD(getClassParent)
31 42 : FORWARD_SYMBOL_ID_METHOD(getUnmodifiedType)
32 : FORWARD_SYMBOL_METHOD(hasConstructor)
33 26 : FORWARD_SYMBOL_METHOD(isConstType)
34 : FORWARD_SYMBOL_METHOD(hasAssignmentOperator)
35 : FORWARD_SYMBOL_METHOD(hasCastOperator)
36 : FORWARD_SYMBOL_METHOD(hasNestedTypes)
37 40 : FORWARD_SYMBOL_METHOD(getLength)
38 : FORWARD_SYMBOL_ID_METHOD(getLexicalParent)
39 143 : FORWARD_SYMBOL_METHOD(getName)
40 : FORWARD_SYMBOL_METHOD(getSrcLineOnTypeDefn)
41 : FORWARD_SYMBOL_METHOD(isNested)
42 : FORWARD_SYMBOL_METHOD(hasOverloadedOperator)
43 : FORWARD_SYMBOL_METHOD(isPacked)
44 : FORWARD_SYMBOL_METHOD(isScoped)
45 38 : FORWARD_SYMBOL_METHOD(getUdtKind)
46 26 : FORWARD_SYMBOL_METHOD(isUnalignedType)
47 : FORWARD_SYMBOL_ID_METHOD(getVirtualTableShape)
48 26 : FORWARD_SYMBOL_METHOD(isVolatileType)
49 : FORWARD_SYMBOL_METHOD(getAccess)
50 : };
51 : }
52 : } // namespace llvm
53 :
54 : #endif // LLVM_DEBUGINFO_PDB_PDBSYMBOLTYPEUDT_H
|