dnsjit.lib.trie.iter - Iterator of the trie.
local trie =
require("dnsjit.lib.trie").new("uint64_t")
local iter = trie:iter()
local node = iter:node()
while node ~= nil do
local key = node:key()
local value = tonumber(node:get())
print(key..": "..value)
iter:next()
node = iter:node()
end
Beware that iterator is only valid as long as the trie's key-set
remains unchanged.
- TrieIter.new(trie)
- Create a new iterator pointing to the first element (if any).
- TrieIter:log()
- Return the Log object to control logging of this instance or module.
- TrieIter:node()
- Return the node pointer to by the iterator. Returns nil when iterator has
gone past the last element.
- TrieIter:next()
- Advance the iterator to the next element.
Iteration is in ascending lexicographical order. Empty string
would be considered as the very first.
You may not use this function if the trie's key-set has been
modified during the lifetime of the iterator (modifying only values is
OK).
dnsjit.lib.trie(3),dnsjit.lib.trie.node(3)
Jerry Lundström (DNS-OARC), Tomáš
Křížek (CZ.NIC), Petr Špaček (ISC)
Maintained by DNS-OARC
https://www.dns-oarc.net/
For issues and feature requests please use:
https://github.com/DNS-OARC/dnsjit/issues
For question and help please use:
admin@dns-oarc.net