swift
776a0889 - RequirementMachine: Parametrize Trie by value type and add support for longest-suffix match

Commit
4 years ago
RequirementMachine: Parametrize Trie by value type and add support for longest-suffix match The PropertyMap wants to use a try to map to PropertyBags, and it needs longest-suffix rather than shortest-prefix matching. Implement both by making Trie into a template class with two parameters; the ValueType, and the MatchKind. Note that while the MatchKind encodes the longest vs shortest match part, matching on the prefix vs suffix of a term is up to the caller, since the find() and insert() methods of Trie take a pair of iterators, so simply passing in begin()/end() vs rbegin()/rend() selects the direction.
Author
Committer
Parents
Loading