1//===- PDBSymbolUnknown.h - unknown symbol type -----------------*- 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_PDBSYMBOLUNKNOWN_H
11#define LLVM_DEBUGINFO_PDB_PDBSYMBOLUNKNOWN_H
12
13#include "PDBSymbol.h"
14
15namespace llvm {
16
17class raw_ostream;
18
19class PDBSymbolUnknown : public PDBSymbol {
20public:
21  PDBSymbolUnknown(const IPDBSession &PDBSession,
22                   std::unique_ptr<IPDBRawSymbol> UnknownSymbol);
23
24  void dump(PDBSymDumper &Dumper) const override;
25
26  static bool classof(const PDBSymbol *S) {
27    return (S->getSymTag() == PDB_SymType::None ||
28            S->getSymTag() >= PDB_SymType::Max);
29  }
30};
31
32} // namespace llvm
33
34#endif // LLVM_DEBUGINFO_PDB_PDBSYMBOLUNKNOWN_H
35