Details
-
Improvement
-
Status: Resolved
-
Major
-
Resolution: Fixed
-
None
-
None
-
None
-
New
Description
We can now index 128-bit quantities, but still, making Fields for these is a bit of work: you have to do some numericutils sign-extension/sign-flipping magic for BigInteger quantities, deal with ipv4-mapped ipv6 addresses, etc.
We can just provide some simple field types that also have static factory methods for exact match/ranges.
The BigIntegerPoint is N-dimensional, so acts just like any other primitive, except its bigger (e.g. long long).
InetAddressPoint is 1-dimensional by nature: of course you can have multiple values per field, thats different. Since we prefix-compress values, we can just map IPv4 addresses to IPv6 space and it works for both types. This is consistent with what InetAddress does itself anyway.