Commit Graph

135 Commits

Author SHA1 Message Date
Despacito696969
ecfea027a0 Fixed marshal_to_writer not supporting i128
Previously json.marshal(i128(696969)) would print 0 as there was no `u = i128(i)` initialization.
2022-08-26 23:49:33 +02:00
Michael Kutowski
b739044e69 Update marshal.odin 2022-08-12 13:59:11 +02:00
Michael Kutowski
9e0107c9fc add new soa type, my bad wasnt on master 2022-08-12 13:50:19 +02:00
Michael Kutowski
107e016508 switch styling and opt.spaces max 2022-08-12 13:42:19 +02:00
gingerBill
57b20e634b Merge branch 'master' into pretty-json-2 2022-08-11 16:14:27 +01:00
Michael Kutowski
425dec8bb8 add uint as hex option 2022-08-08 18:28:28 +02:00
gingerBill
5e3cf45df3 Add #soa pointer type to aid with refactoring to #soa data types
a: #soa[16]Foo
p := &a[6]
#assert(type_of(p) == #soa^#soa[16]Foo)
p^.x = 123
p.x = 123
2022-08-08 15:07:00 +01:00
Michael Kutowski
53e0d182af ...bad paste 2022-08-05 18:56:14 +02:00
Michael Kutowski
a6fa41e290 marshal output options with pretty option and other config 2022-08-05 18:53:29 +02:00
cui fliter
dc8b7a0eb8 fix some typos
Signed-off-by: cui fliter <imcusg@gmail.com>
2022-08-05 20:10:20 +08:00
William Roe
d913155972 Fix bug unmarshalling JSON with assertions disabled
When asserts are disabled, code within the assert isn't run. Having
expect_token within an assert means that the state of the Parser is
mutated when asserts are run, but not when they aren't.

There's already a wrapper procedure for this pattern, which I have
reused here.
2022-07-28 13:56:14 +01:00
gingerBill
ae9d540c1c Correct naming in tests 2022-07-11 11:55:49 +01:00
gingerBill
c90b7c38f1 Rename strings.Builder procedures to be consistent with the rest of the core library 2022-07-11 11:50:08 +01:00
gingerBill
f2ecda8fec Rename to SJSON for the Simplified JSON notation variant 2022-06-16 15:49:08 +01:00
gingerBill
38ff2a3ed9 Minor fix 2022-06-11 15:57:56 +01:00
gingerBill
ba5f7c4e2a Deprecate a..b based ranges in favour of ..= 2022-06-01 11:08:19 +01:00
gingerBill
3ec70c5517 Merge functionality of #maybe with the standard 'union' functionality 2022-05-23 12:04:19 +01:00
Jeroen van Rijn
7bc21c6691 Allow CSV/TSV reader to read multi-line fields. 2022-05-13 14:19:04 +02:00
gingerBill
f27f595549 Add core:encoding/endian 2022-05-12 19:35:07 +01:00
gingerBill
3fdb3dd767 Minor style change in leb128.odin 2022-05-12 15:59:15 +01:00
gingerBill
d224679619 Minor name changes within core:encoding/xml for consistency 2022-05-12 15:57:03 +01:00
Jeroen van Rijn
3978e7e1ca [xml] Add parse_from_string overload.
`parse` now takes either a `[]u8` slice or a string.
`load_from_file` takes a path string.
2022-04-30 14:43:58 +02:00
Jeroen van Rijn
1289c96e2c [i18n] QT Linguist TS reader. 2022-04-29 00:29:55 +02:00
Jeroen van Rijn
80878264b6 [xml] Speedup. 2022-04-28 15:29:00 +02:00
Jeroen van Rijn
c4e0d1efa1 Merge branch 'master' into xml 2022-04-27 14:37:15 +02:00
Jeroen van Rijn
a30b9b17b3 [json/unmarshal] Fix quoted strings. 2022-04-19 20:32:22 +02:00
Jeroen van Rijn
29b2c04766 Revert "Fix unmarshal for escaped strings."
This reverts commit 581255bf23.
2022-04-19 20:11:02 +02:00
Jeroen van Rijn
581255bf23 Fix unmarshal for escaped strings. 2022-04-19 20:04:38 +02:00
Jeroen van Rijn
6d0ba8d189 [LEB128] Add byte-at-a-time ILEB decoder. 2022-04-16 18:14:01 +02:00
Jeroen van Rijn
a5773f1657 Merge pull request #1718 from Kelimion/varint_streamed
Add uleb128 byte-at-a-time decoder.
2022-04-16 02:20:07 +02:00
Jeroen van Rijn
44316401c9 Add uleb128 byte-at-a-time decoder. 2022-04-16 02:07:57 +02:00
Jeroen van Rijn
8310436350 [varint] Clear up doc.odin. 2022-04-13 00:03:36 +02:00
gingerBill
1baeb9406f Utilize union #shared_nil in more places 2022-03-24 12:11:31 +00:00
gitlost
4f5203e661 Fix some core:encoding/hxa stuff (error handling, header, max -> min)
Also add missing f16 case to core:reflect as_u64 & as_f64
Add tests for above & add previous tests missing from test/core/build.bat
2022-03-16 19:12:00 +00:00
Jeroen van Rijn
64705ddd1d [varint] Add doc.odin 2022-03-08 20:08:56 +01:00
Jeroen van Rijn
2a41814985 [varint] Tighten max input bounds. 2022-03-08 19:56:42 +01:00
Jeroen van Rijn
76b10b5f5d [varint] Add additional LEB128 tests. 2022-03-08 19:28:55 +01:00
Jeroen van Rijn
e76a5d8e12 [varint] Add signed LEB128 encoding. 2022-03-08 18:07:16 +01:00
Jeroen van Rijn
6d7217f37a [varint] Add LEB128 decoding + tests
Also make tests in general less spammy: Don't print [PASS] for each successful test, only report failures and progress.
2022-03-08 15:40:00 +01:00
gingerBill
c85ac955f7 Simplify docs to hide the copyright 2022-01-17 19:00:47 +00:00
gingerBill
f0529535e0 ODIN_ENDIAN changed to an enum constant; ODIN_ENUM_STRING is the new string version of the old constant 2022-01-15 17:53:18 +00:00
Jeroen van Rijn
6e61abc7d0 [xml] Initial optimization. 2021-12-06 12:04:59 +01:00
Phil H
a7138b22a5 Fix 'unmarsal' typo 2021-12-05 19:04:14 -08:00
Jeroen van Rijn
7ec88d2430 [xml] Add option. 2021-12-05 21:06:33 +01:00
Jeroen van Rijn
d65d6edb0e [xml] Improve XML tests, test core:encoding/entity. 2021-12-05 02:52:23 +01:00
Jeroen van Rijn
3d72e80ccf [xml] Implement optional unboxing of CDATA and decoding of tag values. 2021-12-05 02:52:23 +01:00
Jeroen van Rijn
2dd67dba89 [core:encoding/entity] Add new package to decode &<entity>; entities.
Includes generator to generate a lookup for named entitiess.
2021-12-05 02:52:23 +01:00
Jeroen van Rijn
5807214406 [xml] Improvements. 2021-12-05 02:52:23 +01:00
Jeroen van Rijn
23baf56c87 [xml] Improve CDATA + comment handling in tag body. 2021-12-05 02:52:23 +01:00
Jeroen van Rijn
beff90e1d1 [xml] Slight optimization.
About a 5% speed bump.

More rigorous optimization later.
2021-12-05 02:52:23 +01:00