Subversion Repositories QNX 8.QNX8 LLVM/Clang compiler suite

Rev

Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
14 pmbaty 1
//===- PDBSymbolExe.h - Accessors for querying executables in a PDB ----*-===//
2
//
3
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4
// See https://llvm.org/LICENSE.txt for license information.
5
// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
6
//
7
//===----------------------------------------------------------------------===//
8
 
9
#ifndef LLVM_DEBUGINFO_PDB_PDBSYMBOLEXE_H
10
#define LLVM_DEBUGINFO_PDB_PDBSYMBOLEXE_H
11
 
12
#include "PDBSymbol.h"
13
#include "PDBTypes.h"
14
 
15
namespace llvm {
16
 
17
class raw_ostream;
18
 
19
namespace pdb {
20
 
21
class PDBSymbolExe : public PDBSymbol {
22
  DECLARE_PDB_SYMBOL_CONCRETE_TYPE(PDB_SymType::Exe)
23
public:
24
  void dump(PDBSymDumper &Dumper) const override;
25
 
26
  FORWARD_SYMBOL_METHOD(getAge)
27
  FORWARD_SYMBOL_METHOD(getGuid)
28
  FORWARD_SYMBOL_METHOD(hasCTypes)
29
  FORWARD_SYMBOL_METHOD(hasPrivateSymbols)
30
  FORWARD_SYMBOL_METHOD(getMachineType)
31
  FORWARD_SYMBOL_METHOD(getName)
32
  FORWARD_SYMBOL_METHOD(getSignature)
33
  FORWARD_SYMBOL_METHOD(getSymbolsFileName)
34
 
35
  uint32_t getPointerByteSize() const;
36
 
37
private:
38
  void dumpChildren(raw_ostream &OS, StringRef Label, PDB_SymType ChildType,
39
                    int Indent) const;
40
};
41
} // namespace pdb
42
} // namespace llvm
43
 
44
#endif // LLVM_DEBUGINFO_PDB_PDBSYMBOLEXE_H