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 = 0;
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);
90llvm::raw_ostream &
operator<<(llvm::raw_ostream &,
const SymbolLocation &);
bool operator==(const Inclusion &LHS, const Inclusion &RHS)
llvm::raw_ostream & operator<<(llvm::raw_ostream &OS, const CodeCompletion &C)
bool operator<(const Ref &L, const Ref &R)
===– Representation.cpp - ClangDoc Representation --------—*- C++ -*-===//
static constexpr uint32_t MaxLine
static constexpr unsigned ColumnBits
void setColumn(uint32_t Column)
static constexpr uint32_t MaxColumn
void setLine(uint32_t Line)
Position Start
The symbol range, using half-open range [Start, End).