diff options
Diffstat (limited to 'extractor/matchings_trie.cc')
-rw-r--r-- | extractor/matchings_trie.cc | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/extractor/matchings_trie.cc b/extractor/matchings_trie.cc new file mode 100644 index 00000000..921ec582 --- /dev/null +++ b/extractor/matchings_trie.cc @@ -0,0 +1,19 @@ +#include "matchings_trie.h" + +void MatchingsTrie::Reset() { + ResetTree(root); + root = make_shared<TrieNode>(); +} + +shared_ptr<TrieNode> MatchingsTrie::GetRoot() const { + return root; +} + +void MatchingsTrie::ResetTree(shared_ptr<TrieNode> root) { + if (root != NULL) { + for (auto child: root->children) { + ResetTree(child.second); + } + root.reset(); + } +} |