sun::lsp::NodeFinder

sun::lsp::NodeFinder

class · Source (opens in a new tab)

class sun::lsp::NodeFinder

Descends to the innermost node containing the offset, keeping its ancestors.

Public Functions

NodeFinder

public · function · Source (opens in a new tab)

sun::lsp::NodeFinder::NodeFinder(std::string documentPath, int offset)

Selects the document and byte offset to search in a syntax tree.

chain

public · function · Source (opens in a new tab)

const std::vector< const ExprAST * > & sun::lsp::NodeFinder::chain() const

Ancestors of the innermost node, outermost first.

Related: ExprAST

visit

public · function · Source (opens in a new tab)

bool sun::lsp::NodeFinder::visit(const ExprAST &node)

True when the subtree rooted at node covers the offset.

Related: ExprAST

Private Functions

isDocumentFile

private · function · Source (opens in a new tab)

bool sun::lsp::NodeFinder::isDocumentFile(const sun::support::Position &loc)

Reports whether a source position belongs to the requested editor document.

Related: sun::support::Position

Private Fields

chain_

private · variable · Source (opens in a new tab)

std::vector<const ExprAST*> sun::lsp::NodeFinder::chain_

No documentation comment.

Related: ExprAST

documentPath_

private · variable · Source (opens in a new tab)

std::string sun::lsp::NodeFinder::documentPath_

No documentation comment.

fileMatches_

private · variable · Source (opens in a new tab)

std::unordered_map<std::string, bool> sun::lsp::NodeFinder::fileMatches_

No documentation comment.

offset_

private · variable · Source (opens in a new tab)

int sun::lsp::NodeFinder::offset_

No documentation comment.