Commit Graph

173 Commits

Author SHA1 Message Date
ErikPelli c1b23af63a
feat: support automatic camel case field key
Add camel case encoding option
Add camel case key conversion
Add camel case test
2022-05-25 16:36:37 +02:00
Matthew Topol 865b215890 fix stream tokenizing respecting UseNumber 2022-05-05 12:12:27 -04:00
Nao Yonashiro c07df9add6 feat: improve performance on linkRecursiveCode
fix #331
2022-05-03 04:03:05 +09:00
Nao Yonashiro 42805aa953 fix: add escape sequence validation
fix #335
2022-04-29 17:16:25 +09:00
Nao Yonashiro 66f8b2629d chore: use reflect.Ptr 2022-04-28 20:30:06 +09:00
Nao Yonashiro 944f8be027 chore: remove IsExported 2022-04-28 20:24:46 +09:00
Nao Yonashiro af33c47846 fix: determining embedded structs was wrong
fix #362
2022-04-26 14:16:28 +09:00
Nao Yonashiro 6911114fb4 fix: to care surrogate-pair on stringDecoder
fix #364
2022-04-26 01:40:44 +09:00
Nao Yonashiro 6db1acfcb6 fix: to care about the case of OpInterfacePtr
fix #359
2022-04-22 00:38:20 +09:00
Nao Yonashiro 4311bab3dc style: go fmt 2022-04-11 20:43:58 +09:00
Nao Yonashiro d9df77a119 fix: add a fallback uint8 sliceDecoder to bytesDecoder
fix #360
2022-04-07 18:10:49 +09:00
Masaaki Goshima 3a4ad31980
Merge pull request #356 from orisano/feat/add-debug-with
feat: add DebugWith option
2022-03-26 00:57:17 +09:00
Masaaki Goshima 54362b465e
Merge pull request #355 from orisano/fix/add-filtering-on-slow-path
fix: add filtering on slow path
2022-03-26 00:54:23 +09:00
Nao Yonashiro 321fe31260 feat: add DebugWith option 2022-03-25 05:13:32 +09:00
Nao Yonashiro e43fb0f990 fix: add filtering on slow path 2022-03-25 03:03:25 +09:00
Nao Yonashiro 4235ca04c0 fix: an incompatible behavior on map key decoder
fix #342
The map key decoder has an incompatible behavior when the type kind is string and the type has UnmarshalJSON.
2022-03-24 09:35:14 +09:00
Nao Yonashiro 8c27bb4f29
Merge branch 'master' into fix/#348 2022-03-19 21:29:50 +09:00
Masaaki Goshima 47a26db8a2
Merge pull request #351 from orisano/fix/#350
fix: to safe when got unexpected typeptr
2022-03-19 21:27:34 +09:00
Nao Yonashiro 48f6412cd1 fix: to safe when got unexpected typeptr 2022-03-19 09:33:16 +09:00
Nao Yonashiro 6832682204 fix: mismatched between len(s.buf) and s.bufSize
close #348
2022-03-18 23:31:33 +09:00
Nao Yonashiro 6f811065b6 feat: improves escapeString's performance 2022-03-13 08:42:55 +09:00
Nao Yonashiro f714c3961d fix: to care ints minimum values
close #343
2022-03-12 23:43:03 +09:00
Masaaki Goshima f352b8732a
Merge pull request #334 from orisano/feat-improve-performance-escaped
feat: improve performance when a payload contains escape sequence
2022-03-04 20:53:41 +09:00
Masaaki Goshima 58b524e43e
Merge pull request #338 from orisano/fix/#337
fix: avoid reading the next character in buffer to nul consideration
2022-03-04 20:51:40 +09:00
Nao Yonashiro accf52d695 fix: incorrect handling on skipValue
close #340
2022-03-04 20:01:05 +09:00
Nao Yonashiro 81519c48d8 fix: avoid reading the next character in buffer to nul consideration
fix #337
2022-02-22 19:22:48 +09:00
Nao Yonashiro 4bd7d2399f feat: improve performance when a payload contains escape sequence 2022-02-12 17:25:52 +09:00
Nao Yonashiro c05e1e23ee fix: panic when decoding time.Time with context
close #327
2022-01-26 01:02:27 +09:00
Masaaki Goshima 0940ff3198
Fix the case where the embedded field is at the end 2022-01-20 23:23:51 +09:00
IncSW 4d0a50640b
fix omitempty string is nil for marshaler 2022-01-18 13:38:44 +03:00
Masaaki Goshima 50b494bc5f
Fix logic of removing struct field for decoder 2022-01-14 20:18:18 +09:00
Masaaki Goshima b5a50f75eb
Add invalid decoder to delay type error judgment at decode 2022-01-13 18:09:48 +09:00
Masaaki Goshima f810369f2d
Fix encoding of MarshalText operation with head offset 2022-01-11 15:11:17 +09:00
Masaaki Goshima acc66cf172
Fix MarshalIndent for interface type 2022-01-04 22:30:16 +09:00
Masaaki Goshima 6af83d9bdd
Refactor encoder 2022-01-03 22:42:04 +09:00
Masaaki Goshima 89bcc3be86
Supports dynamic filtering of struct fields 2022-01-03 12:33:51 +09:00
Masaaki Goshima 2a0ee24e6e
Add encoding option for performance 2021-12-30 11:54:29 +09:00
Masaaki Goshima 1bb8b16200
Optimize variables 2021-12-27 22:40:43 +09:00
Masaaki Goshima 2d022aa037
Remove unnecessary codes 2021-12-27 22:28:25 +09:00
Masaaki Goshima 0d18c6d7ce
Optimize encoding path for escaped string 2021-12-27 21:48:21 +09:00
Masaaki Goshima 5418c49bcf
Refactor opcode fields 2021-12-27 17:50:55 +09:00
Masaaki Goshima c220d90e4c
Use MapItem object in Mapslice directly 2021-12-27 12:18:30 +09:00
Masaaki Goshima 657973a17e
Ignore lint error for mapIter 2021-12-27 11:33:17 +09:00
Masaaki Goshima d8aa8348f4
Improve map encoding performance 2021-12-27 11:14:42 +09:00
Masaaki Goshima 918e816ae4
Fix conversion of operation for PtrHead to Head 2021-12-05 11:38:56 +09:00
Masaaki Goshima f6b4e43f6a
Refactor encoder's vm 2021-11-28 21:46:32 +09:00
Masaaki Goshima e4c458f34c
Remove StructAnonymousEnd operation 2021-11-28 12:53:18 +09:00
Masaaki Goshima be85245267
Enable StructEnd optimization for ptr type 2021-11-28 12:35:20 +09:00
Masaaki Goshima ea19d1161a
Fix error by linter 2021-11-28 02:48:01 +09:00
Masaaki Goshima b5e1478450
Refactor compiler for encoder
- Introduced a two phase compilation to calculate Opcode index accurately
- Fix display number of Opcode
- Improve memory footprint for Opcode
2021-11-28 02:14:57 +09:00