Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2026-05-10 08:43:39

0001 //===- FunctionId.h ---------------------------------------------*- C++ -*-===//
0002 //
0003 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
0004 // See https://llvm.org/LICENSE.txt for license information.
0005 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
0006 //
0007 //===----------------------------------------------------------------------===//
0008 
0009 #ifndef LLVM_DEBUGINFO_CODEVIEW_FUNCTIONID_H
0010 #define LLVM_DEBUGINFO_CODEVIEW_FUNCTIONID_H
0011 
0012 #include <cinttypes>
0013 
0014 namespace llvm {
0015 namespace codeview {
0016 
0017 class FunctionId {
0018 public:
0019   FunctionId() : Index(0) {}
0020 
0021   explicit FunctionId(uint32_t Index) : Index(Index) {}
0022 
0023   uint32_t getIndex() const { return Index; }
0024 
0025 private:
0026   uint32_t Index;
0027 };
0028 
0029 inline bool operator==(const FunctionId &A, const FunctionId &B) {
0030   return A.getIndex() == B.getIndex();
0031 }
0032 
0033 inline bool operator!=(const FunctionId &A, const FunctionId &B) {
0034   return A.getIndex() != B.getIndex();
0035 }
0036 
0037 inline bool operator<(const FunctionId &A, const FunctionId &B) {
0038   return A.getIndex() < B.getIndex();
0039 }
0040 
0041 inline bool operator<=(const FunctionId &A, const FunctionId &B) {
0042   return A.getIndex() <= B.getIndex();
0043 }
0044 
0045 inline bool operator>(const FunctionId &A, const FunctionId &B) {
0046   return A.getIndex() > B.getIndex();
0047 }
0048 
0049 inline bool operator>=(const FunctionId &A, const FunctionId &B) {
0050   return A.getIndex() >= B.getIndex();
0051 }
0052 }
0053 }
0054 
0055 #endif