(
self,
parent: "RadixTrie.Node",
child: "RadixTrie.Node",
prefix_len: int,
)
| 831 | return match_len |
| 832 | |
| 833 | def _split_child( |
| 834 | self, |
| 835 | parent: "RadixTrie.Node", |
| 836 | child: "RadixTrie.Node", |
| 837 | prefix_len: int, |
| 838 | ) -> "RadixTrie.Node": |
| 839 | assert 0 < prefix_len < len(child.label) |
| 840 | prefix = child.label[:prefix_len] |
| 841 | suffix = child.label[prefix_len:] |
| 842 | middle = RadixTrie.Node( |
| 843 | label=prefix, |
| 844 | parent=parent, |
| 845 | sequences=set(child.sequences), |
| 846 | ) |
| 847 | parent.children[prefix[0]] = middle |
| 848 | child.label = suffix |
| 849 | child.parent = middle |
| 850 | middle.children[suffix[0]] = child |
| 851 | return middle |
| 852 | |
| 853 | def _locate_prefix_node( |
| 854 | self, |
no outgoing calls
no test coverage detected