llvm-project

Форк
0
25 строк · 797.0 Байт
1
//===--- SymbolOrigin.cpp ----------------------------------------*- 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
#include "SymbolOrigin.h"
10

11
namespace clang {
12
namespace clangd {
13

14
llvm::raw_ostream &operator<<(llvm::raw_ostream &OS, SymbolOrigin O) {
15
  if (O == SymbolOrigin::Unknown)
16
    return OS << "unknown";
17
  constexpr static char Sigils[] = "AOSMIRP7BL012345";
18
  for (unsigned I = 0; I < sizeof(Sigils); ++I)
19
    if (static_cast<uint16_t>(O) & 1u << I)
20
      OS << Sigils[I];
21
  return OS;
22
}
23

24
} // namespace clangd
25
} // namespace clang
26

Использование cookies

Мы используем файлы cookie в соответствии с Политикой конфиденциальности и Политикой использования cookies.

Нажимая кнопку «Принимаю», Вы даете АО «СберТех» согласие на обработку Ваших персональных данных в целях совершенствования нашего веб-сайта и Сервиса GitVerse, а также повышения удобства их использования.

Запретить использование cookies Вы можете самостоятельно в настройках Вашего браузера.