9 #ifndef LLVM_CLANG_TOOLS_EXTRA_CLANGD_INDEX_SYMBOLLOCATION_H
10 #define LLVM_CLANG_TOOLS_EXTRA_CLANGD_INDEX_SYMBOLLOCATION_H
12 #include "llvm/ADT/StringRef.h"
13 #include "llvm/Support/raw_ostream.h"
38 uint32_t
rep()
const {
return LineColumnPacked; }
49 uint32_t LineColumnPacked;
56 explicit operator bool()
const {
return !llvm::StringRef(
FileURI).empty(); }
69 return std::make_tuple(L.line(), L.column()) ==
74 return std::make_tuple(L.line(), L.column()) <
79 return !std::strcmp(L.FileURI, R.
FileURI) &&
80 std::tie(L.Start, L.End) == std::tie(R.
Start, R.
End);
84 int Cmp = std::strcmp(L.FileURI, R.
FileURI);
87 return std::tie(L.Start, L.End) < std::tie(R.
Start, R.
End);
90 llvm::raw_ostream &
operator<<(llvm::raw_ostream &,
const SymbolLocation &);
95 #endif // LLVM_CLANG_TOOLS_EXTRA_CLANGD_INDEX_SYMBOLLOCATION_H