Age | Commit message (Collapse) | Author |
|
- decode_scan: Don't have .Reset() re-play an erroring rune
- decode_Scan: Have RuneTypeEOF always be zero-width
- jsonparse: Don't replace syntax errors with RuneTypeEOF if there's no barrier
|
|
|
|
These shouldn't happen, but if they do, then let's make it easier to
debug.
|
|
|
|
|
|
|
|
|
|
This doesn't help much now, but it will help next commit when I add a
*DecodeError return value from .peekRuneType().
|
|
|
|
|
|
|
|
|
|
|
|
|
|
It may be useful to hit "ignore space change" when viewing this patch.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
The CPU profiler tells me that the encoder is spending a lot of time on
type switches.
|
|
|
|
|
|
This should make the next commit less noisy.
|
|
|
|
|
|
All formatting changes are made by
./tools/bin/golangci-lint run --fix ./...
|
|
|
|
|
|
|
|
|
|
|
|
|
|
So that it's easier to compose your own .DecodeJSON methods, since
.DecodeJSON takes an io.RuneScanner.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
- Handle UTF-16 surrogate pairs
- Handle cycles in values
- Handle cycles in types
- Better errors
- Handle case-folding of struct field names
- Allow []byteTypeWithMethods
- Fix struct field-order
- Fix handling of interfaces storing pointers
- Enforce a maximum decode depth
- Validate struct tags
|