clang-tools 19.0.0git
Classes | Namespaces | Functions
XRefs.h File Reference
#include "Protocol.h"
#include "SourceCode.h"
#include "index/Index.h"
#include "index/SymbolID.h"
#include "support/Path.h"
#include "clang/AST/ASTTypeTraits.h"
#include "llvm/ADT/StringRef.h"
#include "llvm/Support/raw_ostream.h"
#include <optional>
#include <vector>

Go to the source code of this file.

Classes

struct  clang::clangd::LocatedSymbol
 
struct  clang::clangd::ReferencesResult
 
struct  clang::clangd::ReferencesResult::Reference
 

Namespaces

namespace  clang
 ===– Representation.cpp - ClangDoc Representation --------—*- C++ -*-===//
 
namespace  clang::syntax
 
namespace  clang::clangd
 

Functions

llvm::raw_ostream & clang::clangd::operator<< (llvm::raw_ostream &OS, const LocatedSymbol &S)
 
std::vector< LocatedSymbol > clang::clangd::locateSymbolAt (ParsedAST &AST, Position Pos, const SymbolIndex *Index=nullptr)
 Get definition of symbol at a specified Pos.
 
std::vector< LocatedSymbol > clang::clangd::locateSymbolTextually (const SpelledWord &Word, ParsedAST &AST, const SymbolIndex *Index, llvm::StringRef MainFilePath, ASTNodeKind NodeKind)
 
const syntax::Token * clang::clangd::findNearbyIdentifier (const SpelledWord &Word, const syntax::TokenBuffer &TB)
 
std::vector< DocumentLink > clang::clangd::getDocumentLinks (ParsedAST &AST)
 Get all document links.
 
std::vector< DocumentHighlight > clang::clangd::findDocumentHighlights (ParsedAST &AST, Position Pos)
 Returns highlights for all usages of a symbol at Pos.
 
llvm::raw_ostream & clang::clangd::operator<< (llvm::raw_ostream &OS, const ReferencesResult::Reference &R)
 
std::vector< LocatedSymbol > clang::clangd::findImplementations (ParsedAST &AST, Position Pos, const SymbolIndex *Index)
 Returns implementations at a specified Pos:
 
std::vector< LocatedSymbol > clang::clangd::findType (ParsedAST &AST, Position Pos, const SymbolIndex *Index)
 Returns symbols for types referenced at Pos.
 
ReferencesResult clang::clangd::findReferences (ParsedAST &AST, Position Pos, uint32_t Limit, const SymbolIndex *Index=nullptr, bool AddContext=false)
 Returns references of the symbol at a specified Pos.
 
std::vector< SymbolDetails > clang::clangd::getSymbolInfo (ParsedAST &AST, Position Pos)
 Get info about symbols at Pos.
 
std::vector< const CXXRecordDecl * > clang::clangd::findRecordTypeAt (ParsedAST &AST, Position Pos)
 Find the record types referenced at Pos.
 
std::vector< const CXXRecordDecl * > clang::clangd::typeParents (const CXXRecordDecl *CXXRD)
 Given a record type declaration, find its base (parent) types.
 
std::vector< TypeHierarchyItem > clang::clangd::getTypeHierarchy (ParsedAST &AST, Position Pos, int Resolve, TypeHierarchyDirection Direction, const SymbolIndex *Index=nullptr, PathRef TUPath=PathRef{})
 Get type hierarchy information at Pos.
 
std::optional< std::vector< TypeHierarchyItem > > clang::clangd::superTypes (const TypeHierarchyItem &Item, const SymbolIndex *Index)
 Returns direct parents of a TypeHierarchyItem using SymbolIDs stored inside the item.
 
std::vector< TypeHierarchyItem > clang::clangd::subTypes (const TypeHierarchyItem &Item, const SymbolIndex *Index)
 Returns direct children of a TypeHierarchyItem.
 
void clang::clangd::resolveTypeHierarchy (TypeHierarchyItem &Item, int ResolveLevels, TypeHierarchyDirection Direction, const SymbolIndex *Index)
 
std::vector< CallHierarchyItem > clang::clangd::prepareCallHierarchy (ParsedAST &AST, Position Pos, PathRef TUPath)
 Get call hierarchy information at Pos.
 
std::vector< CallHierarchyIncomingCall > clang::clangd::incomingCalls (const CallHierarchyItem &Item, const SymbolIndex *Index)
 
llvm::DenseSet< const Decl * > clang::clangd::getNonLocalDeclRefs (ParsedAST &AST, const FunctionDecl *FD)
 Returns all decls that are referenced in the FD except local symbols.