Commit Graph

48 Commits

Author SHA1 Message Date
Masaaki Goshima 4167aefe08 Fix any bugs of encoder
- fix some issues ( #104 #118 #144 #147 )
- fix recursive call operation
- use json.Number of encoding/json
- fix encoding of MarshalJSON and MarshalText
- fix pointer operation
- remove 'anonymous' and 'only' operation
- add test cases for array/slice/map/marshaler
2021-03-11 19:29:35 +09:00
Masaaki Goshima e60eabf9da Fix error by linter 2021-02-19 15:34:56 +09:00
Masaaki Goshima f7b1319735 Integrate int/int8/int16/int32/int64 and uint/uint8/uint16/uint32/uint64 operation to reduce memory usage at compile 2021-02-19 15:12:30 +09:00
Masaaki Goshima 2a0d4603ea Fix error output by golangci-lint 2021-02-01 22:32:45 +09:00
Masaaki Goshima 61e533dca2 Refactor encoder 2021-01-31 22:45:59 +09:00
Masaaki Goshima 75f34df1c6 Fix interface operation 2021-01-24 23:27:23 +09:00
Masaaki Goshima 9c5f6ec0e6 Remove escaped optype 2021-01-11 19:21:30 +09:00
Masaaki Goshima 4cfb919183 Remove indent optype 2021-01-11 19:05:06 +09:00
Masaaki Goshima e98d4ea652 Add StructEnd to code type 2020-12-30 00:13:45 +09:00
Masaaki Goshima b8f43ca445 Optimize HTML escape operation 2020-12-25 22:26:59 +09:00
Masaaki Goshima 5741c733a6 Refactor indent code 2020-12-25 17:03:56 +09:00
Masaaki Goshima 6c3382dc4e Support multiple pointer 2020-12-23 13:13:34 +09:00
Koichi Shiraishi cdac126d80
Change uintptrSize to constant 2020-12-09 19:20:51 +09:00
Masaaki Goshima 3e1a1ac1ad Fix recursive anonymous field 2020-11-16 21:28:33 +09:00
Masaaki Goshima 4994bc5d04 Fix handling of comma as delimiter
Conflicts:
	encode_vm.go
2020-11-16 19:16:45 +09:00
Masaaki Goshima d76012422a Fix stream encoding 2020-09-17 01:26:39 +09:00
Masaaki Goshima e1240f02fb Remove unused variable ( headPos ) 2020-09-16 18:17:17 +09:00
Masaaki Goshima aaea586778 Enable switch map processing at runtime 2020-09-16 18:15:47 +09:00
Masaaki Goshima 898d58b8b8 Supported sorted map 2020-09-16 14:51:37 +09:00
Masaaki Goshima 2e7a990bbb Copy original opcode before caching 2020-09-15 20:47:41 +09:00
Masaaki Goshima 3a3122c286 Add opStructFieldRecursiveEnd 2020-09-04 13:48:21 +09:00
Masaaki Goshima 34b662b98e Add InterfaceEnd operation 2020-09-03 15:36:11 +09:00
Masaaki Goshima 4f4060f808 Fix index number 2020-09-01 23:23:07 +09:00
Masaaki Goshima 3aa921e884 Fix encoding engine 2020-09-01 22:26:26 +09:00
Masaaki Goshima 72bc598dd4 Remove state variables from opcode 2020-08-31 21:59:22 +09:00
Masaaki Goshima a6276c4d8e Optimize opcode.idx and seenPtr 2020-08-31 03:14:37 +09:00
Masaaki Goshima 70f8f01ef3 Use encodeRuntimeContext.ptrs instead of opcode.ptr 2020-08-30 23:58:58 +09:00
Masaaki Goshima cb194687a0 Add encodeRuntimeContext 2020-08-30 17:52:59 +09:00
Masaaki Goshima a9e2386e42 Add opcodeIndex to opcode 2020-08-30 17:32:26 +09:00
Masaaki Goshima e508ad41ba Refactor indent parameter 2020-08-29 15:35:03 +09:00
Masaaki Goshima a969fe7aff Fix dump format 2020-08-22 18:13:44 +09:00
Masaaki Goshima 7ada1b2467 Fix conflicted anonymous fields 2020-08-22 15:40:18 +09:00
Masaaki Goshima a718a9a1ef Fix anonymous fields 2020-08-22 12:58:34 +09:00
Masaaki Goshima d7518e3151 Fix seenPtr 2020-08-21 01:01:24 +09:00
Masaaki Goshima 876de765e4 Remove unused field 2020-08-15 18:38:26 +09:00
Masaaki Goshima 025ac2a53b Support embedded struct 2020-08-15 17:41:38 +09:00
Masaaki Goshima 2a99704531 Fix recursive definition of struct 2020-08-13 15:26:35 +09:00
Masaaki Goshima b71f7da8bc Fix recursive type definition 2020-08-12 18:42:29 +09:00
Masaaki Goshima ee13701278 Add Compact/Indent/HTMLEscape/Valid 2020-08-12 16:54:15 +09:00
Masaaki Goshima b9bb609c1d Fix parallel encoding 2020-08-09 17:55:49 +09:00
Masaaki Goshima 7eafd08a56 Fix encoding of struct field after omitempty field 2020-08-08 18:53:01 +09:00
Masaaki Goshima 33dcd50a5d Support MarshalJSON/MarshalText 2020-05-04 18:39:17 +09:00
Masaaki Goshima 3d7267abc8 Add MarshalIndent 2020-05-02 23:35:41 +09:00
Masaaki Goshima 03a21193fc Support omitempty 2020-05-01 13:12:01 +09:00
Masaaki Goshima 090887bf7e Support Map and Interfacfe{} type for encoding of vm based 2020-04-30 13:39:47 +09:00
Masaaki Goshima 95b2194742 Add optimized code 2020-04-30 11:56:56 +09:00
Masaaki Goshima 40544f1ea2 Optimize opcode 2020-04-30 01:44:48 +09:00
Masaaki Goshima 4f3b1262b2 Add VirtualMachine for Encoder 2020-04-30 00:31:50 +09:00