Commit Graph

54 Commits

Author SHA1 Message Date
Masaaki Goshima 781a0b3e85
Support JSON Path 2022-11-29 03:55:56 +09:00
Masaaki Goshima cd7fb7392f Support context for MarshalJSON and UnmarshalJSON 2021-06-12 17:06:26 +09:00
Masaaki Goshima 5c39787fbd Enable FirstWin option for stream decoder 2021-06-06 11:24:56 +09:00
Masaaki Goshima 34b7053412 Fix decoder option flag 2021-06-06 11:11:04 +09:00
Masaaki Goshima 5e281e340f Fix decoder 2021-06-05 16:00:17 +09:00
Masaaki Goshima b074c98070 Use RuntimeContext 2021-06-05 01:08:27 +09:00
Masaaki Goshima f0b4077914 Add DecodeOption 2021-06-05 00:27:02 +09:00
Masaaki Goshima 45780881a4 Remove unnecessary vars 2021-06-03 18:59:52 +09:00
Masaaki Goshima 5a024ca2f1 Fix package layout for decoder 2021-06-03 18:49:01 +09:00
Masaaki Goshima a4d8927b44 Fix lint error 2021-04-10 18:51:11 +09:00
Masaaki Goshima 2cb792ca28 Fix decoding of invalid top level value 2021-04-10 18:44:43 +09:00
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