diff options
| author | robot-piglet <[email protected]> | 2025-03-05 13:38:11 +0300 |
|---|---|---|
| committer | robot-piglet <[email protected]> | 2025-03-05 13:49:53 +0300 |
| commit | 9eed360f02de773a5ed2de5d2a3e81fc7f06acfa (patch) | |
| tree | 744a4054e64eb443073c7c6ad36b29cedcf9c2e6 /contrib/libs/llvm14/include/llvm/Support/FileSystem | |
| parent | c141a5c40bda2eed1a68b0626ffdae5fd19359a6 (diff) | |
Intermediate changes
commit_hash:2ec2671384dd8e604d41bc5c52c2f7858e4afea6
Diffstat (limited to 'contrib/libs/llvm14/include/llvm/Support/FileSystem')
| -rw-r--r-- | contrib/libs/llvm14/include/llvm/Support/FileSystem/UniqueID.h | 90 |
1 files changed, 0 insertions, 90 deletions
diff --git a/contrib/libs/llvm14/include/llvm/Support/FileSystem/UniqueID.h b/contrib/libs/llvm14/include/llvm/Support/FileSystem/UniqueID.h deleted file mode 100644 index ef2458284e4..00000000000 --- a/contrib/libs/llvm14/include/llvm/Support/FileSystem/UniqueID.h +++ /dev/null @@ -1,90 +0,0 @@ -#pragma once - -#ifdef __GNUC__ -#pragma GCC diagnostic push -#pragma GCC diagnostic ignored "-Wunused-parameter" -#endif - -//===- llvm/Support/FileSystem/UniqueID.h - UniqueID for files --*- C++ -*-===// -// -// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. -// See https://llvm.org/LICENSE.txt for license information. -// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception -// -//===----------------------------------------------------------------------===// -// -// This file is cut out of llvm/Support/FileSystem.h to allow UniqueID to be -// reused without bloating the includes. -// -//===----------------------------------------------------------------------===// - -#ifndef LLVM_SUPPORT_FILESYSTEM_UNIQUEID_H -#define LLVM_SUPPORT_FILESYSTEM_UNIQUEID_H - -#include "llvm/ADT/DenseMapInfo.h" -#include "llvm/ADT/Hashing.h" -#include <cstdint> -#include <utility> - -namespace llvm { -namespace sys { -namespace fs { - -class UniqueID { - uint64_t Device; - uint64_t File; - -public: - UniqueID() = default; - UniqueID(uint64_t Device, uint64_t File) : Device(Device), File(File) {} - - bool operator==(const UniqueID &Other) const { - return Device == Other.Device && File == Other.File; - } - bool operator!=(const UniqueID &Other) const { return !(*this == Other); } - bool operator<(const UniqueID &Other) const { - /// Don't use std::tie since it bloats the compile time of this header. - if (Device < Other.Device) - return true; - if (Other.Device < Device) - return false; - return File < Other.File; - } - - uint64_t getDevice() const { return Device; } - uint64_t getFile() const { return File; } -}; - -} // end namespace fs -} // end namespace sys - -// Support UniqueIDs as DenseMap keys. -template <> struct DenseMapInfo<llvm::sys::fs::UniqueID> { - static inline llvm::sys::fs::UniqueID getEmptyKey() { - auto EmptyKey = DenseMapInfo<std::pair<uint64_t, uint64_t>>::getEmptyKey(); - return {EmptyKey.first, EmptyKey.second}; - } - - static inline llvm::sys::fs::UniqueID getTombstoneKey() { - auto TombstoneKey = - DenseMapInfo<std::pair<uint64_t, uint64_t>>::getTombstoneKey(); - return {TombstoneKey.first, TombstoneKey.second}; - } - - static hash_code getHashValue(const llvm::sys::fs::UniqueID &Tag) { - return hash_value(std::make_pair(Tag.getDevice(), Tag.getFile())); - } - - static bool isEqual(const llvm::sys::fs::UniqueID &LHS, - const llvm::sys::fs::UniqueID &RHS) { - return LHS == RHS; - } -}; - -} // end namespace llvm - -#endif // LLVM_SUPPORT_FILESYSTEM_UNIQUEID_H - -#ifdef __GNUC__ -#pragma GCC diagnostic pop -#endif |
