Coverage Report

Created: 2017-05-29 13:07

/Users/buildslave/jenkins/sharedspace/clang-stage2-coverage-R@2/llvm/include/llvm/DebugInfo/CodeView/ModuleDebugFragment.h
Line
Count
Source (jump to first uncovered line)
1
//===- ModuleDebugFragment.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_MODULEDEBUGFRAGMENT_H
11
#define LLVM_DEBUGINFO_CODEVIEW_MODULEDEBUGFRAGMENT_H
12
13
#include "llvm/DebugInfo/CodeView/CodeView.h"
14
#include "llvm/Support/BinaryStreamWriter.h"
15
#include "llvm/Support/Casting.h"
16
17
namespace llvm {
18
namespace codeview {
19
20
class ModuleDebugFragmentRef {
21
public:
22
0
  explicit ModuleDebugFragmentRef(ModuleDebugFragmentKind Kind) : Kind(Kind) {}
23
  virtual ~ModuleDebugFragmentRef();
24
25
0
  ModuleDebugFragmentKind kind() const { return Kind; }
26
27
protected:
28
  ModuleDebugFragmentKind Kind;
29
};
30
31
class ModuleDebugFragment {
32
public:
33
0
  explicit ModuleDebugFragment(ModuleDebugFragmentKind Kind) : Kind(Kind) {}
34
  virtual ~ModuleDebugFragment();
35
36
0
  ModuleDebugFragmentKind kind() const { return Kind; }
37
38
  virtual Error commit(BinaryStreamWriter &Writer) = 0;
39
  virtual uint32_t calculateSerializedLength() = 0;
40
41
protected:
42
  ModuleDebugFragmentKind Kind;
43
};
44
45
} // namespace codeview
46
} // namespace llvm
47
48
#endif // LLVM_DEBUGINFO_CODEVIEW_MODULEDEBUGFRAGMENT_H