This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Failed to load latest commit information.
============= CharTrie ============= This is pure-C version of Trie data structure: http://en.wikipedia.org/wiki/Trie , also called "prefix tree", optimized for string keys and int values. The current interface is the following:: class CharTrie: def __len__(self) def __getitem__(self, key) def __setitem__(self, key, value) def dumps(self) def debug_print(self) def find(self, key) class FrozenCharTrie: def __len__(self) def __getitem__(self, key) def loads(self, stream) def debug_print(self) def find(self, key) # -> value or None def find_prefixes(trie, key) # -> [(position1, value1), (position2, value2), ...] def find_splits(self, FrozenCharTrie suffixes, key) # -> [(position1, prefix1, suffix1), (position2, prefix2, suffix2), ...] Please note, that len(x) returns the number of chars in the trie, not the number of nodes with values. Also, only values >= 0 are supported (until version 0.2) ------------ Licence: BSD ------------