clang 20.0.0git
|
A node of the FileMatchTrie
.
More...
Public Member Functions | |
void | insert (StringRef NewPath, unsigned ConsumedLength=0) |
Inserts 'NewPath' into this trie. | |
StringRef | findEquivalent (const PathComparator &Comparator, StringRef FileName, bool &IsAmbiguous, unsigned ConsumedLength=0) const |
Tries to find the node under this FileMatchTrieNode that best matches 'FileName'. | |
A node of the FileMatchTrie
.
Each node has storage for up to one path and a map mapping a path segment to child nodes. The trie starts with an empty root node.
Definition at line 43 of file FileMatchTrie.cpp.
|
inline |
Tries to find the node under this FileMatchTrieNode
that best matches 'FileName'.
If multiple paths fit 'FileName' equally well, IsAmbiguous
is set to true
and an empty string is returned. If no path fits 'FileName', an empty string is returned. ConsumedLength
denotes the number of Filename's
trailing characters already consumed during recursion.
To find the best matching node for a given path 'p', the findEquivalent()
function is called recursively for each path segment (back to front) of 'p' until a node 'n' is reached that does not ..
Definition at line 104 of file FileMatchTrie.cpp.
References clang::tooling::PathComparator::equivalent(), clang::FileName, and clang::Result.
Referenced by clang::tooling::FileMatchTrie::findEquivalent().
|
inline |
Inserts 'NewPath' into this trie.
ConsumedLength
denotes the number of NewPath's
trailing characters already consumed during recursion.
An insert of a path 'p'starts at the root node and does the following:
An insert operation is linear in the number of a path's segments.
Definition at line 59 of file FileMatchTrie.cpp.
Referenced by clang::tooling::FileMatchTrie::insert().