Masaaki Goshima
9adc632469
Use type alias for Delim/Token/RawMessage type
2021-03-20 20:41:01 +09:00
Masaaki Goshima
2385cfcdbf
Move rtype to internal/runtime package
2021-03-15 13:53:24 +09:00
Masaaki Goshima
f8fd59516b
Fix decoding of deep recursive structure
2021-02-18 19:05:06 +09:00
Masaaki Goshima
0288026fde
Fix decoding of invalid value
2021-02-18 16:42:38 +09:00
Masaaki Goshima
1f75cdd023
Initialize buffer size each streaming decoding
2021-02-15 18:46:34 +09:00
Masaaki Goshima
03be923662
Fix error by linter
2021-02-11 01:21:35 +09:00
Masaaki Goshima
20d1a5ada2
Enable noescape trick for decoder
2021-02-11 01:15:31 +09:00
Masaaki Goshima
3f90e88a94
Refactor Unmarshal/UnmarshalNoEscape
2021-02-11 00:45:38 +09:00
Masaaki Goshima
3b7d5a6996
Remove unnecessary dependency on decoder
2021-02-11 00:33:54 +09:00
Masaaki Goshima
3304ee45bf
Optimize getting of cached decoder
2021-02-04 18:00:08 +09:00
Masaaki Goshima
2a0d4603ea
Fix error output by golangci-lint
2021-02-01 22:32:45 +09:00
Masaaki Goshima
699ab766f5
Fix read timing and test case
2020-12-07 11:40:03 +09:00
Masaaki Goshima
4332d1353e
Fix stream decoding
2020-12-05 22:27:33 +09:00
Masaaki Goshima
fd7a72c0b8
Pass unsafe.Pointer instead of uintptr
2020-11-19 12:47:42 +09:00
Cuong Manh Le
6b1d701387
Fix all invalid usages of unsafe.Pointer
...
Most of the invalid usages due to the conversion from uintptr to
unsafe.Pointer. In general, unsafe.Pointer(p) where p of type uintptr is
considered unsafe.
To fix that, use &p instead of p, then introduce another dereference.
Example, the invalid usage:
*(*int)(unsafe.Pointer(p)) = int(v)
wil become:
**(**int)(unsafe.Pointer(&p)) = int(v)
Closes #53
2020-11-16 20:37:12 +07:00
Masaaki Goshima
99a5b20e5e
Fix decoding of recursive type
2020-08-25 17:18:37 +09:00
Masaaki Goshima
27f6c70ab3
Fix DisallowUnknownFields
2020-08-14 17:59:49 +09:00
Masaaki Goshima
e112aa753e
Support DisallowUnknownFields
2020-08-11 19:05:20 +09:00
Masaaki Goshima
f9ffbb1940
Support json.Number
2020-08-11 18:04:32 +09:00
Masaaki Goshima
66b0490583
Support InputOffset
2020-07-31 20:31:14 +09:00
Masaaki Goshima
80acd42b80
Optimize streaming decoder
2020-07-31 17:10:03 +09:00
Masaaki Goshima
961b6a202e
Add benchmark for stream decoding
2020-07-31 12:22:00 +09:00
Masaaki Goshima
20b67ad48d
Support Decoder.Token
2020-07-30 22:41:53 +09:00
Masaaki Goshima
b4b79620aa
Add stream decoder
2020-05-24 21:31:10 +09:00
Masaaki Goshima
4acc22e0fe
Support SyntaxError
2020-05-23 12:51:09 +09:00
Masaaki Goshima
e562358cdf
Removed dependency on xerrors
2020-05-09 01:49:37 +09:00
Masaaki Goshima
d8d711ecf9
Add error type compatible with encoding/json
2020-05-09 01:07:33 +09:00
Masaaki Goshima
a979b83d27
Add noescape trick for decoding
2020-05-09 00:00:08 +09:00
Masaaki Goshima
bb169a5cf6
Support UnmarshalText for decoding
2020-05-08 20:25:49 +09:00
Masaaki Goshima
c23e5f43a7
Support UnmarshalJSON
2020-05-08 20:22:57 +09:00
Masaaki Goshima
9fe0063679
Support interface{} type for decoding
2020-05-08 15:13:30 +09:00
Masaaki Goshima
f198ef6517
Remove context for decoding
2020-05-07 02:37:29 +09:00
Masaaki Goshima
82e8cc766f
Fix decoderMap interface
2020-05-06 22:22:13 +09:00
Masaaki Goshima
3b27b5f267
Use sync.Map for caching of decoder
2020-04-28 18:35:08 +09:00
Masaaki Goshima
f36e24c8ae
Add decoder for map type
2020-04-25 22:48:16 +09:00
Masaaki Goshima
71d6f845e5
Add decoder for Array or Slice type
2020-04-25 19:55:05 +09:00
Masaaki Goshima
24447ce7e9
Add UnmarshalNoEscape
2020-04-24 21:57:11 +09:00
Masaaki Goshima
015eb040ee
Add reflect.rtype trick
2020-04-24 20:23:26 +09:00
Masaaki Goshima
cfde002d29
Add decoder of float
2020-04-24 16:46:12 +09:00
Masaaki Goshima
508e4e4dcc
Refactor decoder
2020-04-24 01:39:20 +09:00
Masaaki Goshima
416d1cf552
Support decoding for bool type
2020-04-22 18:51:42 +09:00
Masaaki Goshima
0c42c47179
Refactor decoder
2020-04-22 17:59:01 +09:00
Masaaki Goshima
2c11838fe3
Add decoder
2020-04-22 13:06:52 +09:00