Bump version to 0.2.1.
buf -> buffer
Skip buffer if data is already well-formed UTF-8.
Provides ~20% performance increase.
Prioritize closing object brace over array bracket.
It’s more common to have arrays of objects than nested arrays, so this
avoids extra String#=== comparison calls.
Prioritize quote comparison over closing brace.
In real documents, this avoids hundreds of extra String#=== comparison
Move finish method after append.
Negative array index is ~25% faster than Array#last.
Bump version to 0.2.0.
Test keywords with incorrect character order.
Document private methods.
Test partial object or array ending in a literal.
Test finishing partial string literal.
Test partial literal failure conditions for finish method.
Remove skips now that value tests pass.
Add finish method.
Allow any value as a complete document.
Restricted to object and array values in RFC 4627, and expanded to all
value types in RFC 7158.
Extract end_value method.
Extract notify_end_document method.
Exponents always result in Floats.
Matches json gem, yajl-ruby, and Ruby literal behavior.
Actually use parser if provided.
Explicitly test class of parsed exponents.
212 == 212.0 so we need the class test too.
Parse exponents as Floats to match json and yajl-ruby.
Test zero with exponent.
Consistent single quoted strings that don't need interpolation.
Add empty? method.
Use each_byte enumerator to avoid excess Array gc.
Ruby 1.9.2 returned an Enumerator from `bytes`. Ruby 2.0 changed this
to return an Array, which then needs to be garbage collected.
Improve case expression formatting.
b -> byte
One byte at a time.
Fix string interpolation.
Test was passing, but for the wrong reason.
Fix open ended rake dependency.
Add literal value document parse tests.
Add parser finish tests.
Fix expected events for literal value documents.