usfm3 0.1.3__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (30) hide show
  1. usfm3-0.1.3/Cargo.lock +496 -0
  2. usfm3-0.1.3/Cargo.toml +10 -0
  3. usfm3-0.1.3/PKG-INFO +5 -0
  4. usfm3-0.1.3/crates/usfm3/Cargo.toml +15 -0
  5. usfm3-0.1.3/crates/usfm3/src/ast.rs +808 -0
  6. usfm3-0.1.3/crates/usfm3/src/builder.rs +2114 -0
  7. usfm3-0.1.3/crates/usfm3/src/diagnostics.rs +776 -0
  8. usfm3-0.1.3/crates/usfm3/src/lexer.rs +418 -0
  9. usfm3-0.1.3/crates/usfm3/src/lib.rs +10 -0
  10. usfm3-0.1.3/crates/usfm3/src/markers.rs +641 -0
  11. usfm3-0.1.3/crates/usfm3/src/usfm.rs +782 -0
  12. usfm3-0.1.3/crates/usfm3/src/usj.rs +198 -0
  13. usfm3-0.1.3/crates/usfm3/src/usx.rs +621 -0
  14. usfm3-0.1.3/crates/usfm3/src/validation.rs +1472 -0
  15. usfm3-0.1.3/crates/usfm3/src/vref.rs +521 -0
  16. usfm3-0.1.3/crates/usfm3/tests/bridgeconn.rs +548 -0
  17. usfm3-0.1.3/crates/usfm3/tests/bridgeconn_expected_failures.txt +27 -0
  18. usfm3-0.1.3/crates/usfm3/tests/fixtures/ef_extended_footnote.usfm +6 -0
  19. usfm3-0.1.3/crates/usfm3/tests/fixtures/extended_table.usfm +8 -0
  20. usfm3-0.1.3/crates/usfm3/tests/fixtures/ib_iq_intro.usfm +11 -0
  21. usfm3-0.1.3/crates/usfm3/tests/fixtures/note_implicit_close.usfm +6 -0
  22. usfm3-0.1.3/crates/usfm3/tests/fixtures/note_multi_implicit_close.usfm +6 -0
  23. usfm3-0.1.3/crates/usfm3/tests/fixtures/pb_page_break.usfm +7 -0
  24. usfm3-0.1.3/crates/usfm3/tests/fixtures/qs_selah.usfm +9 -0
  25. usfm3-0.1.3/crates/usfm3/tests/fixtures/s5_section.usfm +9 -0
  26. usfm3-0.1.3/crates/usfm3/tests/fixtures/xref_implicit_close.usfm +6 -0
  27. usfm3-0.1.3/crates/usfm3/tests/fixtures/z_custom_marker.usfm +5 -0
  28. usfm3-0.1.3/crates/usfm3-python/Cargo.toml +14 -0
  29. usfm3-0.1.3/crates/usfm3-python/src/lib.rs +126 -0
  30. usfm3-0.1.3/pyproject.toml +13 -0
usfm3-0.1.3/Cargo.lock ADDED
@@ -0,0 +1,496 @@
1
+ # This file is automatically @generated by Cargo.
2
+ # It is not intended for manual editing.
3
+ version = 4
4
+
5
+ [[package]]
6
+ name = "autocfg"
7
+ version = "1.5.0"
8
+ source = "registry+https://github.com/rust-lang/crates.io-index"
9
+ checksum = "c08606f8c3cbf4ce6ec8e28fb0014a2c086708fe954eaa885384a6165172e7e8"
10
+
11
+ [[package]]
12
+ name = "beef"
13
+ version = "0.5.2"
14
+ source = "registry+https://github.com/rust-lang/crates.io-index"
15
+ checksum = "3a8241f3ebb85c056b509d4327ad0358fbbba6ffb340bf388f26350aeda225b1"
16
+
17
+ [[package]]
18
+ name = "bumpalo"
19
+ version = "3.19.1"
20
+ source = "registry+https://github.com/rust-lang/crates.io-index"
21
+ checksum = "5dd9dc738b7a8311c7ade152424974d8115f2cdad61e8dab8dac9f2362298510"
22
+
23
+ [[package]]
24
+ name = "cfg-if"
25
+ version = "1.0.4"
26
+ source = "registry+https://github.com/rust-lang/crates.io-index"
27
+ checksum = "9330f8b2ff13f34540b44e946ef35111825727b38d33286ef986142615121801"
28
+
29
+ [[package]]
30
+ name = "equivalent"
31
+ version = "1.0.2"
32
+ source = "registry+https://github.com/rust-lang/crates.io-index"
33
+ checksum = "877a4ace8713b0bcf2a4e7eec82529c029f1d0619886d18145fea96c3ffe5c0f"
34
+
35
+ [[package]]
36
+ name = "fnv"
37
+ version = "1.0.7"
38
+ source = "registry+https://github.com/rust-lang/crates.io-index"
39
+ checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1"
40
+
41
+ [[package]]
42
+ name = "hashbrown"
43
+ version = "0.16.1"
44
+ source = "registry+https://github.com/rust-lang/crates.io-index"
45
+ checksum = "841d1cc9bed7f9236f321df977030373f4a4163ae1a7dbfe1a51a2c1a51d9100"
46
+
47
+ [[package]]
48
+ name = "heck"
49
+ version = "0.5.0"
50
+ source = "registry+https://github.com/rust-lang/crates.io-index"
51
+ checksum = "2304e00983f87ffb38b55b444b5e3b60a884b5d30c0fca7d82fe33449bbe55ea"
52
+
53
+ [[package]]
54
+ name = "indexmap"
55
+ version = "2.13.0"
56
+ source = "registry+https://github.com/rust-lang/crates.io-index"
57
+ checksum = "7714e70437a7dc3ac8eb7e6f8df75fd8eb422675fc7678aff7364301092b1017"
58
+ dependencies = [
59
+ "equivalent",
60
+ "hashbrown",
61
+ ]
62
+
63
+ [[package]]
64
+ name = "indoc"
65
+ version = "2.0.7"
66
+ source = "registry+https://github.com/rust-lang/crates.io-index"
67
+ checksum = "79cf5c93f93228cf8efb3ba362535fb11199ac548a09ce117c9b1adc3030d706"
68
+ dependencies = [
69
+ "rustversion",
70
+ ]
71
+
72
+ [[package]]
73
+ name = "itoa"
74
+ version = "1.0.17"
75
+ source = "registry+https://github.com/rust-lang/crates.io-index"
76
+ checksum = "92ecc6618181def0457392ccd0ee51198e065e016d1d527a7ac1b6dc7c1f09d2"
77
+
78
+ [[package]]
79
+ name = "js-sys"
80
+ version = "0.3.85"
81
+ source = "registry+https://github.com/rust-lang/crates.io-index"
82
+ checksum = "8c942ebf8e95485ca0d52d97da7c5a2c387d0e7f0ba4c35e93bfcaee045955b3"
83
+ dependencies = [
84
+ "once_cell",
85
+ "wasm-bindgen",
86
+ ]
87
+
88
+ [[package]]
89
+ name = "lazy_static"
90
+ version = "1.5.0"
91
+ source = "registry+https://github.com/rust-lang/crates.io-index"
92
+ checksum = "bbd2bcb4c963f2ddae06a2efc7e9f3591312473c50c6685e1f298068316e66fe"
93
+
94
+ [[package]]
95
+ name = "libc"
96
+ version = "0.2.181"
97
+ source = "registry+https://github.com/rust-lang/crates.io-index"
98
+ checksum = "459427e2af2b9c839b132acb702a1c654d95e10f8c326bfc2ad11310e458b1c5"
99
+
100
+ [[package]]
101
+ name = "logos"
102
+ version = "0.15.1"
103
+ source = "registry+https://github.com/rust-lang/crates.io-index"
104
+ checksum = "ff472f899b4ec2d99161c51f60ff7075eeb3097069a36050d8037a6325eb8154"
105
+ dependencies = [
106
+ "logos-derive",
107
+ ]
108
+
109
+ [[package]]
110
+ name = "logos-codegen"
111
+ version = "0.15.1"
112
+ source = "registry+https://github.com/rust-lang/crates.io-index"
113
+ checksum = "192a3a2b90b0c05b27a0b2c43eecdb7c415e29243acc3f89cc8247a5b693045c"
114
+ dependencies = [
115
+ "beef",
116
+ "fnv",
117
+ "lazy_static",
118
+ "proc-macro2",
119
+ "quote",
120
+ "regex-syntax",
121
+ "rustc_version",
122
+ "syn",
123
+ ]
124
+
125
+ [[package]]
126
+ name = "logos-derive"
127
+ version = "0.15.1"
128
+ source = "registry+https://github.com/rust-lang/crates.io-index"
129
+ checksum = "605d9697bcd5ef3a42d38efc51541aa3d6a4a25f7ab6d1ed0da5ac632a26b470"
130
+ dependencies = [
131
+ "logos-codegen",
132
+ ]
133
+
134
+ [[package]]
135
+ name = "memchr"
136
+ version = "2.8.0"
137
+ source = "registry+https://github.com/rust-lang/crates.io-index"
138
+ checksum = "f8ca58f447f06ed17d5fc4043ce1b10dd205e060fb3ce5b979b8ed8e59ff3f79"
139
+
140
+ [[package]]
141
+ name = "memoffset"
142
+ version = "0.9.1"
143
+ source = "registry+https://github.com/rust-lang/crates.io-index"
144
+ checksum = "488016bfae457b036d996092f6cb448677611ce4449e970ceaf42695203f218a"
145
+ dependencies = [
146
+ "autocfg",
147
+ ]
148
+
149
+ [[package]]
150
+ name = "once_cell"
151
+ version = "1.21.3"
152
+ source = "registry+https://github.com/rust-lang/crates.io-index"
153
+ checksum = "42f5e15c9953c5e4ccceeb2e7382a716482c34515315f7b03532b8b4e8393d2d"
154
+
155
+ [[package]]
156
+ name = "portable-atomic"
157
+ version = "1.13.1"
158
+ source = "registry+https://github.com/rust-lang/crates.io-index"
159
+ checksum = "c33a9471896f1c69cecef8d20cbe2f7accd12527ce60845ff44c153bb2a21b49"
160
+
161
+ [[package]]
162
+ name = "proc-macro2"
163
+ version = "1.0.106"
164
+ source = "registry+https://github.com/rust-lang/crates.io-index"
165
+ checksum = "8fd00f0bb2e90d81d1044c2b32617f68fcb9fa3bb7640c23e9c748e53fb30934"
166
+ dependencies = [
167
+ "unicode-ident",
168
+ ]
169
+
170
+ [[package]]
171
+ name = "pyo3"
172
+ version = "0.23.5"
173
+ source = "registry+https://github.com/rust-lang/crates.io-index"
174
+ checksum = "7778bffd85cf38175ac1f545509665d0b9b92a198ca7941f131f85f7a4f9a872"
175
+ dependencies = [
176
+ "cfg-if",
177
+ "indoc",
178
+ "libc",
179
+ "memoffset",
180
+ "once_cell",
181
+ "portable-atomic",
182
+ "pyo3-build-config",
183
+ "pyo3-ffi",
184
+ "pyo3-macros",
185
+ "unindent",
186
+ ]
187
+
188
+ [[package]]
189
+ name = "pyo3-build-config"
190
+ version = "0.23.5"
191
+ source = "registry+https://github.com/rust-lang/crates.io-index"
192
+ checksum = "94f6cbe86ef3bf18998d9df6e0f3fc1050a8c5efa409bf712e661a4366e010fb"
193
+ dependencies = [
194
+ "once_cell",
195
+ "target-lexicon",
196
+ ]
197
+
198
+ [[package]]
199
+ name = "pyo3-ffi"
200
+ version = "0.23.5"
201
+ source = "registry+https://github.com/rust-lang/crates.io-index"
202
+ checksum = "e9f1b4c431c0bb1c8fb0a338709859eed0d030ff6daa34368d3b152a63dfdd8d"
203
+ dependencies = [
204
+ "libc",
205
+ "pyo3-build-config",
206
+ ]
207
+
208
+ [[package]]
209
+ name = "pyo3-macros"
210
+ version = "0.23.5"
211
+ source = "registry+https://github.com/rust-lang/crates.io-index"
212
+ checksum = "fbc2201328f63c4710f68abdf653c89d8dbc2858b88c5d88b0ff38a75288a9da"
213
+ dependencies = [
214
+ "proc-macro2",
215
+ "pyo3-macros-backend",
216
+ "quote",
217
+ "syn",
218
+ ]
219
+
220
+ [[package]]
221
+ name = "pyo3-macros-backend"
222
+ version = "0.23.5"
223
+ source = "registry+https://github.com/rust-lang/crates.io-index"
224
+ checksum = "fca6726ad0f3da9c9de093d6f116a93c1a38e417ed73bf138472cf4064f72028"
225
+ dependencies = [
226
+ "heck",
227
+ "proc-macro2",
228
+ "pyo3-build-config",
229
+ "quote",
230
+ "syn",
231
+ ]
232
+
233
+ [[package]]
234
+ name = "pythonize"
235
+ version = "0.23.0"
236
+ source = "registry+https://github.com/rust-lang/crates.io-index"
237
+ checksum = "91a6ee7a084f913f98d70cdc3ebec07e852b735ae3059a1500db2661265da9ff"
238
+ dependencies = [
239
+ "pyo3",
240
+ "serde",
241
+ ]
242
+
243
+ [[package]]
244
+ name = "quick-xml"
245
+ version = "0.37.5"
246
+ source = "registry+https://github.com/rust-lang/crates.io-index"
247
+ checksum = "331e97a1af0bf59823e6eadffe373d7b27f485be8748f71471c662c1f269b7fb"
248
+ dependencies = [
249
+ "memchr",
250
+ "serde",
251
+ ]
252
+
253
+ [[package]]
254
+ name = "quote"
255
+ version = "1.0.44"
256
+ source = "registry+https://github.com/rust-lang/crates.io-index"
257
+ checksum = "21b2ebcf727b7760c461f091f9f0f539b77b8e87f2fd88131e7f1b433b3cece4"
258
+ dependencies = [
259
+ "proc-macro2",
260
+ ]
261
+
262
+ [[package]]
263
+ name = "regex-syntax"
264
+ version = "0.8.9"
265
+ source = "registry+https://github.com/rust-lang/crates.io-index"
266
+ checksum = "a96887878f22d7bad8a3b6dc5b7440e0ada9a245242924394987b21cf2210a4c"
267
+
268
+ [[package]]
269
+ name = "rustc_version"
270
+ version = "0.4.1"
271
+ source = "registry+https://github.com/rust-lang/crates.io-index"
272
+ checksum = "cfcb3a22ef46e85b45de6ee7e79d063319ebb6594faafcf1c225ea92ab6e9b92"
273
+ dependencies = [
274
+ "semver",
275
+ ]
276
+
277
+ [[package]]
278
+ name = "rustversion"
279
+ version = "1.0.22"
280
+ source = "registry+https://github.com/rust-lang/crates.io-index"
281
+ checksum = "b39cdef0fa800fc44525c84ccb54a029961a8215f9619753635a9c0d2538d46d"
282
+
283
+ [[package]]
284
+ name = "semver"
285
+ version = "1.0.27"
286
+ source = "registry+https://github.com/rust-lang/crates.io-index"
287
+ checksum = "d767eb0aabc880b29956c35734170f26ed551a859dbd361d140cdbeca61ab1e2"
288
+
289
+ [[package]]
290
+ name = "serde"
291
+ version = "1.0.228"
292
+ source = "registry+https://github.com/rust-lang/crates.io-index"
293
+ checksum = "9a8e94ea7f378bd32cbbd37198a4a91436180c5bb472411e48b5ec2e2124ae9e"
294
+ dependencies = [
295
+ "serde_core",
296
+ "serde_derive",
297
+ ]
298
+
299
+ [[package]]
300
+ name = "serde-wasm-bindgen"
301
+ version = "0.6.5"
302
+ source = "registry+https://github.com/rust-lang/crates.io-index"
303
+ checksum = "8302e169f0eddcc139c70f139d19d6467353af16f9fce27e8c30158036a1e16b"
304
+ dependencies = [
305
+ "js-sys",
306
+ "serde",
307
+ "wasm-bindgen",
308
+ ]
309
+
310
+ [[package]]
311
+ name = "serde_core"
312
+ version = "1.0.228"
313
+ source = "registry+https://github.com/rust-lang/crates.io-index"
314
+ checksum = "41d385c7d4ca58e59fc732af25c3983b67ac852c1a25000afe1175de458b67ad"
315
+ dependencies = [
316
+ "serde_derive",
317
+ ]
318
+
319
+ [[package]]
320
+ name = "serde_derive"
321
+ version = "1.0.228"
322
+ source = "registry+https://github.com/rust-lang/crates.io-index"
323
+ checksum = "d540f220d3187173da220f885ab66608367b6574e925011a9353e4badda91d79"
324
+ dependencies = [
325
+ "proc-macro2",
326
+ "quote",
327
+ "syn",
328
+ ]
329
+
330
+ [[package]]
331
+ name = "serde_derive_internals"
332
+ version = "0.29.1"
333
+ source = "registry+https://github.com/rust-lang/crates.io-index"
334
+ checksum = "18d26a20a969b9e3fdf2fc2d9f21eda6c40e2de84c9408bb5d3b05d499aae711"
335
+ dependencies = [
336
+ "proc-macro2",
337
+ "quote",
338
+ "syn",
339
+ ]
340
+
341
+ [[package]]
342
+ name = "serde_json"
343
+ version = "1.0.149"
344
+ source = "registry+https://github.com/rust-lang/crates.io-index"
345
+ checksum = "83fc039473c5595ace860d8c4fafa220ff474b3fc6bfdb4293327f1a37e94d86"
346
+ dependencies = [
347
+ "indexmap",
348
+ "itoa",
349
+ "memchr",
350
+ "serde",
351
+ "serde_core",
352
+ "zmij",
353
+ ]
354
+
355
+ [[package]]
356
+ name = "syn"
357
+ version = "2.0.114"
358
+ source = "registry+https://github.com/rust-lang/crates.io-index"
359
+ checksum = "d4d107df263a3013ef9b1879b0df87d706ff80f65a86ea879bd9c31f9b307c2a"
360
+ dependencies = [
361
+ "proc-macro2",
362
+ "quote",
363
+ "unicode-ident",
364
+ ]
365
+
366
+ [[package]]
367
+ name = "target-lexicon"
368
+ version = "0.12.16"
369
+ source = "registry+https://github.com/rust-lang/crates.io-index"
370
+ checksum = "61c41af27dd6d1e27b1b16b489db798443478cef1f06a660c96db617ba5de3b1"
371
+
372
+ [[package]]
373
+ name = "tsify-next"
374
+ version = "0.5.6"
375
+ source = "registry+https://github.com/rust-lang/crates.io-index"
376
+ checksum = "7d0f2208feeb5f7a6edb15a2389c14cd42480ef6417318316bb866da5806a61d"
377
+ dependencies = [
378
+ "serde",
379
+ "serde-wasm-bindgen",
380
+ "tsify-next-macros",
381
+ "wasm-bindgen",
382
+ ]
383
+
384
+ [[package]]
385
+ name = "tsify-next-macros"
386
+ version = "0.5.6"
387
+ source = "registry+https://github.com/rust-lang/crates.io-index"
388
+ checksum = "f81253930d0d388a3ab8fa4ae56da9973ab171ef833d1be2e9080fc3ce502bd6"
389
+ dependencies = [
390
+ "proc-macro2",
391
+ "quote",
392
+ "serde_derive_internals",
393
+ "syn",
394
+ ]
395
+
396
+ [[package]]
397
+ name = "unicode-ident"
398
+ version = "1.0.23"
399
+ source = "registry+https://github.com/rust-lang/crates.io-index"
400
+ checksum = "537dd038a89878be9b64dd4bd1b260315c1bb94f4d784956b81e27a088d9a09e"
401
+
402
+ [[package]]
403
+ name = "unindent"
404
+ version = "0.2.4"
405
+ source = "registry+https://github.com/rust-lang/crates.io-index"
406
+ checksum = "7264e107f553ccae879d21fbea1d6724ac785e8c3bfc762137959b5802826ef3"
407
+
408
+ [[package]]
409
+ name = "usfm3"
410
+ version = "0.1.3"
411
+ dependencies = [
412
+ "logos",
413
+ "quick-xml",
414
+ "serde",
415
+ "serde_json",
416
+ ]
417
+
418
+ [[package]]
419
+ name = "usfm3-cli"
420
+ version = "0.1.0"
421
+ dependencies = [
422
+ "usfm3",
423
+ ]
424
+
425
+ [[package]]
426
+ name = "usfm3-python"
427
+ version = "0.1.3"
428
+ dependencies = [
429
+ "pyo3",
430
+ "pythonize",
431
+ "serde_json",
432
+ "usfm3",
433
+ ]
434
+
435
+ [[package]]
436
+ name = "usfm3-wasm"
437
+ version = "0.1.3"
438
+ dependencies = [
439
+ "serde",
440
+ "serde-wasm-bindgen",
441
+ "serde_json",
442
+ "tsify-next",
443
+ "usfm3",
444
+ "wasm-bindgen",
445
+ ]
446
+
447
+ [[package]]
448
+ name = "wasm-bindgen"
449
+ version = "0.2.108"
450
+ source = "registry+https://github.com/rust-lang/crates.io-index"
451
+ checksum = "64024a30ec1e37399cf85a7ffefebdb72205ca1c972291c51512360d90bd8566"
452
+ dependencies = [
453
+ "cfg-if",
454
+ "once_cell",
455
+ "rustversion",
456
+ "wasm-bindgen-macro",
457
+ "wasm-bindgen-shared",
458
+ ]
459
+
460
+ [[package]]
461
+ name = "wasm-bindgen-macro"
462
+ version = "0.2.108"
463
+ source = "registry+https://github.com/rust-lang/crates.io-index"
464
+ checksum = "008b239d9c740232e71bd39e8ef6429d27097518b6b30bdf9086833bd5b6d608"
465
+ dependencies = [
466
+ "quote",
467
+ "wasm-bindgen-macro-support",
468
+ ]
469
+
470
+ [[package]]
471
+ name = "wasm-bindgen-macro-support"
472
+ version = "0.2.108"
473
+ source = "registry+https://github.com/rust-lang/crates.io-index"
474
+ checksum = "5256bae2d58f54820e6490f9839c49780dff84c65aeab9e772f15d5f0e913a55"
475
+ dependencies = [
476
+ "bumpalo",
477
+ "proc-macro2",
478
+ "quote",
479
+ "syn",
480
+ "wasm-bindgen-shared",
481
+ ]
482
+
483
+ [[package]]
484
+ name = "wasm-bindgen-shared"
485
+ version = "0.2.108"
486
+ source = "registry+https://github.com/rust-lang/crates.io-index"
487
+ checksum = "1f01b580c9ac74c8d8f0c0e4afb04eeef2acf145458e52c03845ee9cd23e3d12"
488
+ dependencies = [
489
+ "unicode-ident",
490
+ ]
491
+
492
+ [[package]]
493
+ name = "zmij"
494
+ version = "1.0.20"
495
+ source = "registry+https://github.com/rust-lang/crates.io-index"
496
+ checksum = "4de98dfa5d5b7fef4ee834d0073d560c9ca7b6c46a71d058c48db7960f8cfaf7"
usfm3-0.1.3/Cargo.toml ADDED
@@ -0,0 +1,10 @@
1
+ [workspace]
2
+ members = ["crates/usfm3-python"]
3
+ resolver = "3"
4
+
5
+ [workspace.dependencies]
6
+ usfm3 = { path = "crates/usfm3" }
7
+ logos = "0.15"
8
+ serde = { version = "1", features = ["derive"] }
9
+ serde_json = { version = "1", features = ["preserve_order"] }
10
+ quick-xml = { version = "0.37", features = ["serialize"] }
usfm3-0.1.3/PKG-INFO ADDED
@@ -0,0 +1,5 @@
1
+ Metadata-Version: 2.4
2
+ Name: usfm3
3
+ Version: 0.1.3
4
+ Summary: Error-tolerant USFM 3.x parser
5
+ Requires-Python: >=3.9
@@ -0,0 +1,15 @@
1
+ [package]
2
+ name = "usfm3"
3
+ version = "0.1.3"
4
+ edition = "2024"
5
+ license = "MIT"
6
+ description = "Error-tolerant USFM 3.x parser with USJ, USX, and USFM output"
7
+ repository = "https://github.com/jcuenod/rsusfm3"
8
+ keywords = ["usfm", "usj", "usx", "bible", "parser"]
9
+ categories = ["parser-implementations", "text-processing"]
10
+
11
+ [dependencies]
12
+ logos = { workspace = true }
13
+ serde = { workspace = true }
14
+ serde_json = { workspace = true }
15
+ quick-xml = { workspace = true }