예제 #1
0
 def suffixes(self, prefix):
     state = State(self)
     state.walk(prefix)
     it = Iterator(state)
     while it.next():
         key = it.key()
         if key:
             yield key
예제 #2
0
    def leafs(self, prefix):
        for suffix in self.suffixes(prefix):
            key = prefix + suffix

            state = State(self)
            state.walk(key)
            # after deletion state not changed
            # if state.is_single():
            #     yield key
            # so we are testing leaf with other method
            if not any(self.suffixes(key)):
                yield key