Based on Phil Eaton's tutorial.
Parsing:
- nulls
- booleans
- numbers
- integers
- floats
- exponents (e.g. 2.4e5)
- NaN (not in the JSON spec, but supported by Python)
- +/- Infinity (not in the JSON spec, but supported by Python)
- strings
- escape characters
- hex characters (e.g. "\u00ff")
- objects
- lists Validation:
- oj.loads raises an exception for an input x iff json.loads does
- line and column for exceptions