View Source Changelog
All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
[v0.10.0] - 2023-04-19
added
Iptrie.minimize/1
as convenience wrapper forIptrie.minimize/2
.
fixed
- error handling for
Iptrie.minimize/2
, consistent with other functions
[v0.9.0] - 2023-04-16
added
Iptrie.minimize/2
to easily minimize an Iptrie.
fixed
- some documentation
[v0.8.0] - 2022-02-20
added
Iptrie.iana_special/2
which delegates toIptrie.Iana.lookup/2
changed
- updated Pfx to latest version, so IPv6 is formatted with shorthand notation
- tests were modified accordingly
[v0.7.0] - 2022-01-16
added
Iptrie.Iana
module to access IANA IPv4/6 Specical-Purpose Address Registries
changed
- updated dependency Pfx to v0.12.0
fixed
- typespec for
Iptrie.t/0
by adding optional integer -> Radix.t
[v0.6.0] - 2021-12-04
added
Iptrie.get_and_update/3
to do update a key,value-pair in one go.
changed
Iptrie.less/3
now can optionally exclude search key from results.Iptrie.more/3
now can optionally exclude search key from results.
fixed
- Readme examples write their files to assets/, not img/
v0.5.0 - 2021-07-25
added
Iptrie.prune/3
to prune an Iptrie, optionally doing so recursively
changed
- Pulled in
Radix
0.3.0, forRadix.prune/3
v0.4.0 - 2021-07-20
added
Iptrie.count/1
, return count of all entries in an IptrieIptrie.count/2
, return count of entries for giventype
Iptrie.drop/2
, drop some prefixes from the IptrieIptrie.empty?/1
, says if a given Iptrie is empty or notIptrie.empty?/2
, says if a particular radix tree oftype
is empty or notIptrie.get/3
, gets a prefix or returns default if prefix was not foundIptrie.has_prefix?/2
, says whether given prefix is present in an IptrieIptrie.has_type?/2
, says whether or not trie has a given typeIptrie.merge/2
, merges two Iptrie'sIptrie.merge/3
, merges two Iptrie's with conflict resolutionIptrie.pop/3
, returns popped pfx,val and new trieIptrie.radix/2
, get a radix tree by type from an Iptrie, or a new empty oneIptrie.split/3
, split one trie into two (optionally using lpm)Iptrie.take/3
, return new Iptrie contains just the given keysIptrie.types/1
, returns a list of available types or maxlen's in the trie
changed
- Merged #1 misc doc changes
- Pulled in
Pfx
0.5.0 - Pulled in
Radix
0.2.0 - Updated deps with new versions of
Pfx
andRadix
Iptrie.delete/2
only deletes a single prefix, nowIptrie.drop/2
is availableIptrie.filter/2
user callback now takes aPfx.t/0
instead of bitstring radix keyIptrie.get/2
no longer gets a list of prefixes, just 1 prefix at a timeIptrie.keys/2
returns keys for a single type onlyIptrie.reduce/3
user callback now takes aPfx.t/0
instead of bitstring radix keyIptrie.reduce/4
takes a single type only, not a list of typesIptrie.reduce/4
user callback now takes aPfx.t/0
instead of bitstring radix keyIptrie.to_list/2
returns prefix,value-pairs for a single type onlyIptrie.values/2
returns values for a single radix tree type only
v0.3.0 - 2021-07-06
added
v0.2.0 - 2021-07-05
added
v0.1.0 - 2021-07-05
- Initial public version