Line data Source code
1 : //===-- SymbolVisitorDelegate.h ---------------------------------*- 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_CODEVIEW_SYMBOLVISITORDELEGATE_H
11 : #define LLVM_DEBUGINFO_CODEVIEW_SYMBOLVISITORDELEGATE_H
12 :
13 : #include "llvm/ADT/StringRef.h"
14 : #include <cstdint>
15 :
16 : namespace llvm {
17 :
18 : class BinaryStreamReader;
19 :
20 : namespace codeview {
21 :
22 : class DebugStringTableSubsectionRef;
23 :
24 : class SymbolVisitorDelegate {
25 : public:
26 0 : virtual ~SymbolVisitorDelegate() = default;
27 :
28 : virtual uint32_t getRecordOffset(BinaryStreamReader Reader) = 0;
29 : virtual StringRef getFileNameForFileOffset(uint32_t FileOffset) = 0;
30 : virtual DebugStringTableSubsectionRef getStringTable() = 0;
31 : };
32 :
33 : } // end namespace codeview
34 :
35 : } // end namespace llvm
36 :
37 : #endif // LLVM_DEBUGINFO_CODEVIEW_SYMBOLVISITORDELEGATE_H
|