(ip []byte, cidr uint8)
| 86 | } |
| 87 | |
| 88 | func (node *trieEntry) nodePlacement(ip []byte, cidr uint8) (parent *trieEntry, exact bool) { |
| 89 | for node != nil && node.cidr <= cidr && commonBits(node.bits, ip) >= node.cidr { |
| 90 | parent = node |
| 91 | if parent.cidr == cidr { |
| 92 | exact = true |
| 93 | return |
| 94 | } |
| 95 | bit := node.choose(ip) |
| 96 | node = node.child[bit] |
| 97 | } |
| 98 | return |
| 99 | } |
| 100 | |
| 101 | func (trie parentIndirection) insert(ip []byte, cidr uint8, peer *Peer) { |
| 102 | if *trie.parentBit == nil { |
no test coverage detected