Hitalo Souza
0ac6ba9354
json2: encode sumtype ( #17041 )
2023-01-21 20:26:55 +02:00
Hitalo Souza
1d51f3109f
json2: improve the performance of encode ~2x ( #17050 )
2023-01-21 10:45:38 +02:00
Hitalo Souza
55787ff78f
json2: refactor, doc, perf, test, errors ( #16986 )
2023-01-15 22:52:48 +01:00
Hitalo Souza
28cbaf66b8
json2: refactoring and fixes ( #16893 )
2023-01-15 12:30:33 +02:00
Hitalo Souza
199db81b23
json2: refactor after #16951 ( #16976 )
2023-01-14 21:30:29 +02:00
Hitalo Souza
d1306ffcf5
checker,json2: relax checking of x.enum = integer at comptime; refactor json2 to clean it up ( #16926 )
2023-01-11 10:18:45 +02:00
Hitalo Souza
cf95d77584
json2: small refactor after #16896 ( #16911 )
2023-01-10 11:08:11 +02:00
Hitalo Souza
33a99fe833
json2: fix encoding of struct fields that are aliases ( #16925 )
2023-01-09 22:43:01 +02:00
JalonSolov
90941b3b1f
all: change optional to option ( #16914 )
2023-01-09 09:36:45 +03:00
Hitalo Souza
8f217c00e5
x.json2: refactor/fix json2.encode, add more tests ( #16790 )
2023-01-05 15:17:38 +02:00
Hitalo Souza
d7c244e5ec
x.json2: support time.Time values in encode ( #16643 )
...
* feat: json2 time.Time encode
* refactor: best var name
* fix: use 'RFC 3339' as pattern in json encode
* fix: unused var for unaliased_typ
* fix: improve test
* use the clearer test after V ad24c22
, that made format_rfc3339 more stable
Co-authored-by: Delyan Angelov <delian66@gmail.com>
2022-12-11 16:54:28 +02:00
Hitalo Souza
e8c0b098b0
x.json2: add encode_pretty/1 ( #16634 )
2022-12-10 20:44:23 +02:00
Hitalo Souza
b6c2aab092
json2: support encoding of optional struct fields ( #16521 )
2022-12-09 18:08:24 +02:00
Delyan Angelov
48a7de643e
all: support typeof[ T ]().idx and typeof[ T ]().name, where T can be any type, including ![]&string
( #16513 )
2022-12-07 11:26:27 +02:00
yuyi
ef5be22f81
all: replace generic <>
with []
- part 2 ( #16536 )
2022-11-26 18:23:26 +02:00
Hitalo Souza
45854882b9
builtin, cgen: support FieldData.unaliased_typ, use it for generalising x.json2
(able to encode type aliased struct fields) ( #16469 )
2022-11-20 11:18:14 +02:00
Delyan Angelov
6b0743bb07
x.json2: add support for i8, i16, u8, u16, u32 ( fix #16484 )
2022-11-19 12:03:04 +02:00
Hitalo Souza
74613bd636
x.json2: generic-based encoder (finish PR#15137) ( #16464 )
2022-11-18 11:09:24 +02:00
yuyi
f6844e9766
all: change optional to result of io ( #16075 )
2022-10-16 09:28:57 +03:00
Daniel Däschle
d679146a80
fmt: remove space in front of ? and ! ( #14366 )
2022-05-13 06:56:21 +03:00
Alexander Medvednikov
ae6a25f44e
websocket, utf: u8 fixes
2022-04-15 16:24:02 +03:00
Alexander Medvednikov
d4a0d6f73c
all: byte => u8
2022-04-15 14:58:56 +03:00
Ned
437fa02f27
x.json2: add customized JSON output capability via Encoder ( #13654 )
2022-03-04 14:39:23 +03:00
Benjamin Stigsen
ceb05b163a
strings: rename Builder.write_b() to Builder.write_byte(), add deprecation ( #13313 )
2022-01-28 20:34:44 +02:00
playX
c07ce3ff15
cgen,json2: improve -nofloat support ( #13117 )
2022-01-10 12:42:41 +02:00
Alexander Medvednikov
59ed4be49a
all: update copyright year
2022-01-04 12:21:12 +03:00
Larpon
1d41d9daf9
json2: improve readability, add tests utilizing fix #12667 ( #12836 )
2021-12-15 12:20:05 +02:00
Delyan Angelov
1913de0187
x.json2: fix compilation with -autofree
2021-11-28 18:32:04 +02:00
Don Park
ae54cd78f5
json2: encode ascii chars < 0x20 in json ( #12494 )
2021-11-18 08:34:00 +03:00
Delyan Angelov
58df35b453
x.json2: fix json_string
for utf8 codepoints, add regression test
2021-06-29 11:40:52 +03:00
pancake
1bf7d968f9
x.json2: add u64 ( #9457 )
2021-03-25 16:53:39 +01:00
Delyan Angelov
c76c69ec35
all: simplify return if ...
constructs to make more code compatible with -autofree
2021-03-22 16:45:29 +02:00
Ned Palacios
ee879f3e41
x.json2: proper string encoding + minor fixes ( #9026 )
2021-03-01 10:22:36 +01:00
Ned Palacios
8dff168e01
x.json2: create custom scanner for scanning JSON ( #8716 )
2021-02-26 08:36:02 +02:00
zakuro
f54c1a5cc2
all: add strings.Builder.write_string and use write_string instead of write ( #8892 )
2021-02-22 13:18:11 +02:00
Lukas Neubert
e4a67dea37
json2: wrap Builder.free() calls inside unsafe ( #8790 )
2021-02-17 02:19:26 +02:00
Lukas Neubert
ac2c3847af
all: update copyright to 2019-2021 ( #8029 )
2021-01-18 13:20:06 +01:00
Swastik Baranwal
a9ab79d301
checker: ban any_int/any_float outside buitlin ( #7675 )
2020-12-31 12:41:30 +01:00
Ned Palacios
6c634086b0
json2: decode fn returns ?T
; add new tests ( #6933 )
2020-11-29 14:54:45 +01:00
Daniel Däschle
7d6f97259f
all: refactor UnionSumType to SumType ( #6944 )
2020-11-25 13:09:40 +02:00
Daniel Däschle
aa6303f0b2
all: use the new types with old syntax ( #6922 )
2020-11-24 13:58:29 +01:00
Anton Zavodchikov
fe3d2a9aba
json2: unescape characters ( #6836 )
2020-11-15 14:58:17 +02:00
Ned Palacios
fc375a40f8
x.json2: add fast_raw_decode; support for i64 and f32 ( #6586 )
2020-10-09 16:11:55 +02:00
Ned Palacios
368c2a6bf0
vlib: add x/json2 ( #6336 )
2020-09-10 12:05:40 +02:00