reference, declaration → definition definition → references, declarations, derived classes, virtual overrides reference to multiple definitions → definitions unreferenced |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 | //===--- SymbolLocation.cpp --------------------------------------*- 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 // //===----------------------------------------------------------------------===// #include "SymbolLocation.h" namespace clang { namespace clangd { constexpr uint32_t SymbolLocation::Position::MaxLine; constexpr uint32_t SymbolLocation::Position::MaxColumn; void SymbolLocation::Position::setLine(uint32_t L) { if (L > MaxLine) { Line = MaxLine; return; } Line = L; } void SymbolLocation::Position::setColumn(uint32_t Col) { if (Col > MaxColumn) { Column = MaxColumn; return; } Column = Col; } llvm::raw_ostream &operator<<(llvm::raw_ostream &OS, const SymbolLocation &L) { if (!L) return OS << "(none)"; return OS << L.FileURI << "[" << L.Start.line() << ":" << L.Start.column() << "-" << L.End.line() << ":" << L.End.column() << ")"; } } // namespace clangd } // namespace clang |