IPDBLineNumber.h 1.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. #pragma once
  2. #ifdef __GNUC__
  3. #pragma GCC diagnostic push
  4. #pragma GCC diagnostic ignored "-Wunused-parameter"
  5. #endif
  6. //===- IPDBLineNumber.h - base interface for PDB line no. info ---*- C++-*-===//
  7. //
  8. // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
  9. // See https://llvm.org/LICENSE.txt for license information.
  10. // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
  11. //
  12. //===----------------------------------------------------------------------===//
  13. #ifndef LLVM_DEBUGINFO_PDB_IPDBLINENUMBER_H
  14. #define LLVM_DEBUGINFO_PDB_IPDBLINENUMBER_H
  15. #include <cstdint>
  16. namespace llvm {
  17. namespace pdb {
  18. class IPDBLineNumber {
  19. public:
  20. virtual ~IPDBLineNumber();
  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. #endif
  37. #ifdef __GNUC__
  38. #pragma GCC diagnostic pop
  39. #endif