1//===- IPDBLineNumber.h - base interface for PDB line no. 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_IPDBLINENUMBER_H
11#define LLVM_DEBUGINFO_PDB_IPDBLINENUMBER_H
12
13#include "PDBTypes.h"
14
15namespace llvm {
16namespace pdb {
17class IPDBLineNumber {
18public:
19  virtual ~IPDBLineNumber();
20
21  virtual uint32_t getLineNumber() const = 0;
22  virtual uint32_t getLineNumberEnd() const = 0;
23  virtual uint32_t getColumnNumber() const = 0;
24  virtual uint32_t getColumnNumberEnd() const = 0;
25  virtual uint32_t getAddressSection() const = 0;
26  virtual uint32_t getAddressOffset() const = 0;
27  virtual uint32_t getRelativeVirtualAddress() const = 0;
28  virtual uint64_t getVirtualAddress() const = 0;
29  virtual uint32_t getLength() const = 0;
30  virtual uint32_t getSourceFileId() const = 0;
31  virtual uint32_t getCompilandId() const = 0;
32  virtual bool isStatement() const = 0;
33};
34}
35}
36
37#endif
38