clang-tools
20.0.0git
llvm-project
clang-tools-extra
clangd
index
SymbolOrigin.cpp
Go to the documentation of this file.
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
OS
llvm::raw_ostream & OS
Definition:
DirectiveTree.cpp:148
SymbolOrigin.h
clang::clangd::operator<<
llvm::raw_ostream & operator<<(llvm::raw_ostream &OS, const CodeCompletion &C)
Definition:
CodeComplete.cpp:2395
clang::clangd::SymbolOrigin
SymbolOrigin
Definition:
SymbolOrigin.h:21
clang::clangd::SymbolOrigin::Unknown
@ Unknown
clang
===– Representation.cpp - ClangDoc Representation --------—*- C++ -*-===//
Definition:
ApplyReplacements.h:27
Generated on Sat Dec 21 2024 14:59:13 for clang-tools by
1.9.6