Subversion Repositories QNX 8.QNX8 LLVM/Clang compiler suite

Rev

Blame | Last modification | View Log | Download | RSS feed

  1. //===- FunctionId.h ---------------------------------------------*- C++ -*-===//
  2. //
  3. // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
  4. // See https://llvm.org/LICENSE.txt for license information.
  5. // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
  6. //
  7. //===----------------------------------------------------------------------===//
  8.  
  9. #ifndef LLVM_DEBUGINFO_CODEVIEW_FUNCTIONID_H
  10. #define LLVM_DEBUGINFO_CODEVIEW_FUNCTIONID_H
  11.  
  12. #include <cinttypes>
  13.  
  14. namespace llvm {
  15. namespace codeview {
  16.  
  17. class FunctionId {
  18. public:
  19.   FunctionId() : Index(0) {}
  20.  
  21.   explicit FunctionId(uint32_t Index) : Index(Index) {}
  22.  
  23.   uint32_t getIndex() const { return Index; }
  24.  
  25. private:
  26.   uint32_t Index;
  27. };
  28.  
  29. inline bool operator==(const FunctionId &A, const FunctionId &B) {
  30.   return A.getIndex() == B.getIndex();
  31. }
  32.  
  33. inline bool operator!=(const FunctionId &A, const FunctionId &B) {
  34.   return A.getIndex() != B.getIndex();
  35. }
  36.  
  37. inline bool operator<(const FunctionId &A, const FunctionId &B) {
  38.   return A.getIndex() < B.getIndex();
  39. }
  40.  
  41. inline bool operator<=(const FunctionId &A, const FunctionId &B) {
  42.   return A.getIndex() <= B.getIndex();
  43. }
  44.  
  45. inline bool operator>(const FunctionId &A, const FunctionId &B) {
  46.   return A.getIndex() > B.getIndex();
  47. }
  48.  
  49. inline bool operator>=(const FunctionId &A, const FunctionId &B) {
  50.   return A.getIndex() >= B.getIndex();
  51. }
  52. }
  53. }
  54.  
  55. #endif
  56.