Commit Graph

87 Commits

Author SHA1 Message Date
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
Masaaki Goshima 86a671f3bb
Fix embedded field conflict behavior 2021-11-18 19:51:29 +09:00
Masaaki Goshima d7372a47cd
Fix conversion from pointer to uint64 2021-10-14 15:00:28 +09:00
Nao Yonashiro 0065357ebb fix: to avoid panic on untyped nil #290
fix #290
2021-09-27 10:55:37 +09:00
Masaaki Goshima 559d70d706 Fix encoding of empty struct interface type 2021-09-01 11:41:33 +09:00
Masaaki Goshima 97c3cf6c55 Fix test 2021-08-30 13:11:44 +09:00
Masaaki Goshima 92d8dcd13b Fix encoding of not empty interface type 2021-08-30 13:03:14 +09:00
Masaaki Goshima 104829e78f Fix encoding of embedded struct that isn't first field 2021-08-12 13:03:34 +09:00
peterlimg ad245e5323
Fix incorrect indent 2021-07-22 17:22:07 +10:00
peterlimg a95c5abe6c
Fix indent issue for embed struct with tag 2021-07-22 14:54:11 +10:00
peterlimg ac9a7dd8e3
Fix encode issue for embed struct with tag 2021-07-20 23:14:26 +10:00
Masaaki Goshima 902856929d Fix indirect layout 2021-07-05 20:30:35 +09:00
Masaaki Goshima 1400b498ab Fix encoding of pointer type in empty interface 2021-06-29 11:35:37 +09:00
Masaaki Goshima 66bf979e47 Improve encoding performance for empty interface type 2021-06-26 15:49:13 +09:00
Masaaki Goshima 12e4bdc2f2 Fix dump of opcode 2021-06-25 22:55:00 +09:00
Masaaki Goshima f93d82dee6 Fix storeIndent 2021-06-25 22:27:00 +09:00
Masaaki Goshima 994dc9ea9d Fix encoding of empty interface type 2021-06-25 20:17:12 +09:00
Masaaki Goshima 5c22860385
Merge pull request #248 from goccy/feature/context
Support context for MarshalJSON and UnmarshalJSON
2021-06-12 22:51:57 +09:00
Masaaki Goshima b972a9bab3 Fix indent num 2021-06-12 22:38:52 +09:00
Masaaki Goshima 56e5d7a457 Fix index number about length for recursive type 2021-06-12 22:02:03 +09:00
Masaaki Goshima 79ccab759f Fix indent num contains recursive type 2021-06-12 22:01:45 +09:00
Masaaki Goshima cd7fb7392f Support context for MarshalJSON and UnmarshalJSON 2021-06-12 17:06:26 +09:00
Masaaki Goshima edd09e7470 Fix encoding of using empty interface as map key 2021-06-06 20:39:49 +09:00
Masaaki Goshima 544e731166 Fix value of totalLength for encoding 2021-06-02 19:02:36 +09:00
Masaaki Goshima 7155d2e437 Fix error by linter 2021-06-01 15:19:09 +09:00
Masaaki Goshima d495f67045 Fix color format 2021-06-01 15:10:28 +09:00
Masaaki Goshima 4e2a9c06ef Manage option flags as bit variable 2021-06-01 13:40:15 +09:00
Masaaki Goshima 4c19a845d9 Support colored JSON 2021-06-01 03:09:47 +09:00
Masaaki Goshima c294f01ac5 Add Colorize option 2021-06-01 01:57:40 +09:00
Masaaki Goshima 69cca05981 Pass RuntimeContext to the first argument of all append functions 2021-06-01 01:36:30 +09:00
Masaaki Goshima 11437c8556 Refactor escape string 2021-06-01 01:25:05 +09:00
Masaaki Goshima a56c080959 Refactor encode option 2021-05-31 22:25:33 +09:00
Masaaki Goshima 7cf15fc56c Fix opcode layout
- Adjust memory layout of the opcode to 128 bytes in a 64-bit environment
2021-05-29 14:47:18 +09:00
Masaaki Goshima 70b93d8963 Generate VM source 2021-05-19 12:34:40 +09:00
Masaaki Goshima aee5d8a6fb Refactor Debug mode for encoding 2021-05-18 14:48:13 +09:00
Masaaki Goshima f65ffc0449 Fix error by linter 2021-05-18 14:03:14 +09:00
Masaaki Goshima f696453c1b Refactor vm sources for encoding ( use same source ) 2021-05-18 13:51:57 +09:00
Masaaki Goshima fc968c75ee Refactor encoding of marshaler and structEnd 2021-05-17 21:08:45 +09:00
Masaaki Goshima 6ae63e3e61 Refactor encoding of structHead and structKey 2021-05-17 18:58:59 +09:00
Shawn Wang 7e03a13225 Add type addrShift to enable bigger encoder/decoder cache
Change-Id: I630fa501f3b96702b69a40bc0b2f79f4db2a57eb
2021-05-10 13:39:37 +08:00
Masaaki Goshima a6c1f6442c Add test case for string type 2021-05-09 00:40:18 +09:00
Masaaki Goshima 87b93ad8a4 Fix lint error 2021-05-07 01:04:25 +09:00
Masaaki Goshima 4823e8bed3 Add omitempty and string operation for vm 2021-05-07 00:53:39 +09:00
Masaaki Goshima 7d7a5163c4 Add OmitEmpty and String operation for indent vm 2021-05-07 00:12:59 +09:00
Masaaki Goshima 56dabe2da4 Refactor StringTag operation 2021-05-06 20:54:22 +09:00
Masaaki Goshima 7ae14cd24c Optimize json.Compact and json.Indent 2021-04-20 20:12:32 +09:00
Masaaki Goshima e0b5ba8df4 Add test cases 2021-04-19 22:54:10 +09:00
Masaaki Goshima 34396640d5 Fix Indent ( validate the input buffer ) 2021-04-19 19:55:12 +09:00