Add support for encoding '+-infinity' #15
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Javascript (and therefore MongoDB) has a concept of +-Infinity. This works in other clients bson parsers (at least Haskells) but fails in Erlang (trace below)
Erlang can't process the float that is equivialant of Javascripts Infinity,
Number.(POSITIVE,NEGATIVE)_INFINITY, which is the max- andminimum floating point.
This patch allows the BSON parser to atleast return something somewhat appropriate.
Note on comparison
Since there is no concept of a minimum value both are atoms. This means
you can compare any number to '+infinity" and it will always be larger;
however '-infinity' will also be larger than any number... This means no
+infinity > 0 > -infinity.