implica 1.2.2__tar.gz → 1.3.2__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 (64) hide show
  1. {implica-1.2.2 → implica-1.3.2}/Cargo.lock +158 -46
  2. {implica-1.2.2 → implica-1.3.2}/Cargo.toml +3 -1
  3. {implica-1.2.2 → implica-1.3.2}/PKG-INFO +1 -1
  4. {implica-1.2.2 → implica-1.3.2}/README.md +6 -0
  5. {implica-1.2.2 → implica-1.3.2}/python/implica/__init__.pyi +4 -0
  6. {implica-1.2.2 → implica-1.3.2}/src/errors.rs +4 -0
  7. {implica-1.2.2 → implica-1.3.2}/src/graph/base.rs +121 -20
  8. {implica-1.2.2 → implica-1.3.2}/src/graph/create.rs +39 -8
  9. implica-1.3.2/src/graph/mask.rs +28 -0
  10. {implica-1.2.2 → implica-1.3.2}/src/graph/matches/edge.rs +13 -6
  11. {implica-1.2.2 → implica-1.3.2}/src/graph/matches/node.rs +52 -11
  12. {implica-1.2.2 → implica-1.3.2}/src/graph/matches/path.rs +10 -5
  13. {implica-1.2.2 → implica-1.3.2}/src/graph/matches/properties.rs +1 -1
  14. {implica-1.2.2 → implica-1.3.2}/src/graph/matches/term_schema.rs +7 -2
  15. {implica-1.2.2 → implica-1.3.2}/src/graph/matches/type_schema.rs +7 -2
  16. {implica-1.2.2 → implica-1.3.2}/src/graph/mod.rs +2 -0
  17. {implica-1.2.2 → implica-1.3.2}/src/lib.rs +4 -0
  18. {implica-1.2.2 → implica-1.3.2}/src/matches.rs +36 -11
  19. {implica-1.2.2 → implica-1.3.2}/src/properties.rs +8 -34
  20. {implica-1.2.2 → implica-1.3.2}/src/query/base.rs +51 -8
  21. {implica-1.2.2 → implica-1.3.2}/src/query/references/type.rs +24 -0
  22. implica-1.3.2/src/utils/creation_counter.rs +84 -0
  23. implica-1.3.2/src/utils/deadlock_watchdog.rs +27 -0
  24. {implica-1.2.2 → implica-1.3.2}/src/utils/mod.rs +4 -0
  25. {implica-1.2.2 → implica-1.3.2}/.githooks/README.md +0 -0
  26. {implica-1.2.2 → implica-1.3.2}/.githooks/pre-commit +0 -0
  27. {implica-1.2.2 → implica-1.3.2}/.github/workflows/CI.yml +0 -0
  28. {implica-1.2.2 → implica-1.3.2}/.github/workflows/test.yml +0 -0
  29. {implica-1.2.2 → implica-1.3.2}/.gitignore +0 -0
  30. {implica-1.2.2 → implica-1.3.2}/LICENSE +0 -0
  31. {implica-1.2.2 → implica-1.3.2}/pyproject.toml +0 -0
  32. {implica-1.2.2 → implica-1.3.2}/python/implica/__init__.py +0 -0
  33. {implica-1.2.2 → implica-1.3.2}/python/implica/py.typed +0 -0
  34. {implica-1.2.2 → implica-1.3.2}/setup-hooks.sh +0 -0
  35. {implica-1.2.2 → implica-1.3.2}/src/constants.rs +0 -0
  36. {implica-1.2.2 → implica-1.3.2}/src/macros/ctx.rs +0 -0
  37. {implica-1.2.2 → implica-1.3.2}/src/macros/mod.rs +0 -0
  38. {implica-1.2.2 → implica-1.3.2}/src/patterns/edge.rs +0 -0
  39. {implica-1.2.2 → implica-1.3.2}/src/patterns/mod.rs +0 -0
  40. {implica-1.2.2 → implica-1.3.2}/src/patterns/node.rs +0 -0
  41. {implica-1.2.2 → implica-1.3.2}/src/patterns/parsing.rs +0 -0
  42. {implica-1.2.2 → implica-1.3.2}/src/patterns/path.rs +0 -0
  43. {implica-1.2.2 → implica-1.3.2}/src/patterns/term_schema.rs +0 -0
  44. {implica-1.2.2 → implica-1.3.2}/src/patterns/type_schema.rs +0 -0
  45. {implica-1.2.2 → implica-1.3.2}/src/query/mod.rs +0 -0
  46. {implica-1.2.2 → implica-1.3.2}/src/query/references/base.rs +0 -0
  47. {implica-1.2.2 → implica-1.3.2}/src/query/references/edge.rs +0 -0
  48. {implica-1.2.2 → implica-1.3.2}/src/query/references/mod.rs +0 -0
  49. {implica-1.2.2 → implica-1.3.2}/src/query/references/node.rs +0 -0
  50. {implica-1.2.2 → implica-1.3.2}/src/query/references/term.rs +0 -0
  51. {implica-1.2.2 → implica-1.3.2}/src/typing/mod.rs +0 -0
  52. {implica-1.2.2 → implica-1.3.2}/src/typing/term.rs +0 -0
  53. {implica-1.2.2 → implica-1.3.2}/src/typing/types.rs +0 -0
  54. {implica-1.2.2 → implica-1.3.2}/src/utils/cmp.rs +0 -0
  55. {implica-1.2.2 → implica-1.3.2}/src/utils/data_queue.rs +0 -0
  56. {implica-1.2.2 → implica-1.3.2}/src/utils/eval.rs +0 -0
  57. {implica-1.2.2 → implica-1.3.2}/src/utils/hex_to_uid.rs +0 -0
  58. {implica-1.2.2 → implica-1.3.2}/src/utils/validation.rs +0 -0
  59. {implica-1.2.2 → implica-1.3.2}/tests/conftest.py +0 -0
  60. {implica-1.2.2 → implica-1.3.2}/tests/test_create.py +0 -0
  61. {implica-1.2.2 → implica-1.3.2}/tests/test_graph_set_properties.py +0 -0
  62. {implica-1.2.2 → implica-1.3.2}/tests/test_match.py +0 -0
  63. {implica-1.2.2 → implica-1.3.2}/tests/test_match_create.py +0 -0
  64. {implica-1.2.2 → implica-1.3.2}/tests/test_set.py +0 -0
@@ -2,6 +2,21 @@
2
2
  # It is not intended for manual editing.
3
3
  version = 4
4
4
 
5
+ [[package]]
6
+ name = "addr2line"
7
+ version = "0.25.1"
8
+ source = "registry+https://github.com/rust-lang/crates.io-index"
9
+ checksum = "1b5d307320b3181d6d7954e663bd7c774a838b8220fe0593c86d9fb09f498b4b"
10
+ dependencies = [
11
+ "gimli",
12
+ ]
13
+
14
+ [[package]]
15
+ name = "adler2"
16
+ version = "2.0.1"
17
+ source = "registry+https://github.com/rust-lang/crates.io-index"
18
+ checksum = "320119579fcad9c21884f5c4861d16174d0e06250625266f50fe6898340abefa"
19
+
5
20
  [[package]]
6
21
  name = "ahash"
7
22
  version = "0.8.12"
@@ -27,9 +42,9 @@ dependencies = [
27
42
 
28
43
  [[package]]
29
44
  name = "anyhow"
30
- version = "1.0.100"
45
+ version = "1.0.102"
31
46
  source = "registry+https://github.com/rust-lang/crates.io-index"
32
- checksum = "a23eb6b1614318a8071c9b2521f36b424b2c83db5eb3a0fead4a6c0809af6e61"
47
+ checksum = "7f202df86484c868dbad7eaa557ef785d5c66295e41b460ef922eca0723b842c"
33
48
 
34
49
  [[package]]
35
50
  name = "autocfg"
@@ -37,6 +52,21 @@ version = "1.5.0"
37
52
  source = "registry+https://github.com/rust-lang/crates.io-index"
38
53
  checksum = "c08606f8c3cbf4ce6ec8e28fb0014a2c086708fe954eaa885384a6165172e7e8"
39
54
 
55
+ [[package]]
56
+ name = "backtrace"
57
+ version = "0.3.76"
58
+ source = "registry+https://github.com/rust-lang/crates.io-index"
59
+ checksum = "bb531853791a215d7c62a30daf0dde835f381ab5de4589cfe7c649d2cbe92bd6"
60
+ dependencies = [
61
+ "addr2line",
62
+ "cfg-if",
63
+ "libc",
64
+ "miniz_oxide",
65
+ "object",
66
+ "rustc-demangle",
67
+ "windows-link",
68
+ ]
69
+
40
70
  [[package]]
41
71
  name = "bit-set"
42
72
  version = "0.8.0"
@@ -54,9 +84,9 @@ checksum = "5e764a1d40d510daf35e07be9eb06e75770908c27d411ee6c92109c9840eaaf7"
54
84
 
55
85
  [[package]]
56
86
  name = "bitflags"
57
- version = "2.10.0"
87
+ version = "2.11.0"
58
88
  source = "registry+https://github.com/rust-lang/crates.io-index"
59
- checksum = "812e12b5285cc515a9c72a5c1d3b6d46a19dac5acfef5265968c166106e31dd3"
89
+ checksum = "843867be96c8daad0d758b57df9392b6d8d271134fce549de6ce169ff98a92af"
60
90
 
61
91
  [[package]]
62
92
  name = "block-buffer"
@@ -69,9 +99,9 @@ dependencies = [
69
99
 
70
100
  [[package]]
71
101
  name = "bumpalo"
72
- version = "3.19.1"
102
+ version = "3.20.2"
73
103
  source = "registry+https://github.com/rust-lang/crates.io-index"
74
- checksum = "5dd9dc738b7a8311c7ade152424974d8115f2cdad61e8dab8dac9f2362298510"
104
+ checksum = "5d20789868f4b01b2f2caec9f5c4e0213b41e3e5702a50157d699ae31ced2fcb"
75
105
 
76
106
  [[package]]
77
107
  name = "cfg-if"
@@ -157,7 +187,7 @@ checksum = "5041cc499144891f3790297212f32a74fb938e5136a14943f338ef9e0ae276cf"
157
187
  dependencies = [
158
188
  "cfg-if",
159
189
  "crossbeam-utils",
160
- "hashbrown",
190
+ "hashbrown 0.14.5",
161
191
  "lock_api",
162
192
  "once_cell",
163
193
  "parking_lot_core",
@@ -180,6 +210,12 @@ version = "1.15.0"
180
210
  source = "registry+https://github.com/rust-lang/crates.io-index"
181
211
  checksum = "48c757948c5ede0e46177b7add2e67155f70e33c07fea8284df6576da70b3719"
182
212
 
213
+ [[package]]
214
+ name = "equivalent"
215
+ version = "1.0.2"
216
+ source = "registry+https://github.com/rust-lang/crates.io-index"
217
+ checksum = "877a4ace8713b0bcf2a4e7eec82529c029f1d0619886d18145fea96c3ffe5c0f"
218
+
183
219
  [[package]]
184
220
  name = "error-stack"
185
221
  version = "0.6.0"
@@ -201,6 +237,12 @@ dependencies = [
201
237
  "regex-syntax",
202
238
  ]
203
239
 
240
+ [[package]]
241
+ name = "fixedbitset"
242
+ version = "0.4.2"
243
+ source = "registry+https://github.com/rust-lang/crates.io-index"
244
+ checksum = "0ce7134b9999ecaf8bcd65542e436736ef32ddca1b3e06094cb6ec5755203b80"
245
+
204
246
  [[package]]
205
247
  name = "generic-array"
206
248
  version = "0.14.7"
@@ -234,12 +276,24 @@ dependencies = [
234
276
  "wasip2",
235
277
  ]
236
278
 
279
+ [[package]]
280
+ name = "gimli"
281
+ version = "0.32.3"
282
+ source = "registry+https://github.com/rust-lang/crates.io-index"
283
+ checksum = "e629b9b98ef3dd8afe6ca2bd0f89306cec16d43d907889945bc5d6687f2f13c7"
284
+
237
285
  [[package]]
238
286
  name = "hashbrown"
239
287
  version = "0.14.5"
240
288
  source = "registry+https://github.com/rust-lang/crates.io-index"
241
289
  checksum = "e5274423e17b7c9fc20b6e7e208532f9b19825d82dfd615708b70edd83df41f1"
242
290
 
291
+ [[package]]
292
+ name = "hashbrown"
293
+ version = "0.16.1"
294
+ source = "registry+https://github.com/rust-lang/crates.io-index"
295
+ checksum = "841d1cc9bed7f9236f321df977030373f4a4163ae1a7dbfe1a51a2c1a51d9100"
296
+
243
297
  [[package]]
244
298
  name = "heck"
245
299
  version = "0.5.0"
@@ -254,12 +308,14 @@ checksum = "7f24254aa9a54b5c858eaee2f5bccdb46aaf0e486a595ed5fd8f86ba55232a70"
254
308
 
255
309
  [[package]]
256
310
  name = "implica"
257
- version = "1.2.2"
311
+ version = "1.3.2"
258
312
  dependencies = [
259
313
  "dashmap",
260
314
  "error-stack",
261
315
  "fancy-regex",
262
316
  "hex",
317
+ "once_cell",
318
+ "parking_lot",
263
319
  "pyo3",
264
320
  "rand",
265
321
  "rayon",
@@ -269,6 +325,16 @@ dependencies = [
269
325
  "thiserror",
270
326
  ]
271
327
 
328
+ [[package]]
329
+ name = "indexmap"
330
+ version = "2.13.0"
331
+ source = "registry+https://github.com/rust-lang/crates.io-index"
332
+ checksum = "7714e70437a7dc3ac8eb7e6f8df75fd8eb422675fc7678aff7364301092b1017"
333
+ dependencies = [
334
+ "equivalent",
335
+ "hashbrown 0.16.1",
336
+ ]
337
+
272
338
  [[package]]
273
339
  name = "indoc"
274
340
  version = "2.0.7"
@@ -280,15 +346,15 @@ dependencies = [
280
346
 
281
347
  [[package]]
282
348
  name = "itoa"
283
- version = "1.0.17"
349
+ version = "1.0.18"
284
350
  source = "registry+https://github.com/rust-lang/crates.io-index"
285
- checksum = "92ecc6618181def0457392ccd0ee51198e065e016d1d527a7ac1b6dc7c1f09d2"
351
+ checksum = "8f42a60cbdf9a97f5d2305f08a87dc4e09308d1276d28c869c684d7777685682"
286
352
 
287
353
  [[package]]
288
354
  name = "js-sys"
289
- version = "0.3.85"
355
+ version = "0.3.91"
290
356
  source = "registry+https://github.com/rust-lang/crates.io-index"
291
- checksum = "8c942ebf8e95485ca0d52d97da7c5a2c387d0e7f0ba4c35e93bfcaee045955b3"
357
+ checksum = "b49715b7073f385ba4bc528e5747d02e66cb39c6146efb66b781f131f0fb399c"
292
358
  dependencies = [
293
359
  "once_cell",
294
360
  "wasm-bindgen",
@@ -296,9 +362,9 @@ dependencies = [
296
362
 
297
363
  [[package]]
298
364
  name = "libc"
299
- version = "0.2.180"
365
+ version = "0.2.183"
300
366
  source = "registry+https://github.com/rust-lang/crates.io-index"
301
- checksum = "bcc35a38544a891a5f7c865aca548a982ccb3b8650a5b06d0fd33a10283c56fc"
367
+ checksum = "b5b646652bf6661599e1da8901b3b9522896f01e736bad5f723fe7a3a27f899d"
302
368
 
303
369
  [[package]]
304
370
  name = "lock_api"
@@ -311,9 +377,9 @@ dependencies = [
311
377
 
312
378
  [[package]]
313
379
  name = "memchr"
314
- version = "2.7.6"
380
+ version = "2.8.0"
315
381
  source = "registry+https://github.com/rust-lang/crates.io-index"
316
- checksum = "f52b00d39961fc5b2736ea853c9cc86238e165017a493d1d5c8eac6bdc4cc273"
382
+ checksum = "f8ca58f447f06ed17d5fc4043ce1b10dd205e060fb3ce5b979b8ed8e59ff3f79"
317
383
 
318
384
  [[package]]
319
385
  name = "memoffset"
@@ -324,6 +390,15 @@ dependencies = [
324
390
  "autocfg",
325
391
  ]
326
392
 
393
+ [[package]]
394
+ name = "miniz_oxide"
395
+ version = "0.8.9"
396
+ source = "registry+https://github.com/rust-lang/crates.io-index"
397
+ checksum = "1fa76a2c86f704bdb222d66965fb3d63269ce38518b83cb0575fca855ebb6316"
398
+ dependencies = [
399
+ "adler2",
400
+ ]
401
+
327
402
  [[package]]
328
403
  name = "no-std-compat"
329
404
  version = "0.4.1"
@@ -342,33 +417,64 @@ dependencies = [
342
417
  "autocfg",
343
418
  ]
344
419
 
420
+ [[package]]
421
+ name = "object"
422
+ version = "0.37.3"
423
+ source = "registry+https://github.com/rust-lang/crates.io-index"
424
+ checksum = "ff76201f031d8863c38aa7f905eca4f53abbfa15f609db4277d44cd8938f33fe"
425
+ dependencies = [
426
+ "memchr",
427
+ ]
428
+
345
429
  [[package]]
346
430
  name = "once_cell"
347
- version = "1.21.3"
431
+ version = "1.21.4"
348
432
  source = "registry+https://github.com/rust-lang/crates.io-index"
349
- checksum = "42f5e15c9953c5e4ccceeb2e7382a716482c34515315f7b03532b8b4e8393d2d"
433
+ checksum = "9f7c3e4beb33f85d45ae3e3a1792185706c8e16d043238c593331cc7cd313b50"
350
434
  dependencies = [
351
435
  "portable-atomic",
352
436
  ]
353
437
 
438
+ [[package]]
439
+ name = "parking_lot"
440
+ version = "0.12.5"
441
+ source = "registry+https://github.com/rust-lang/crates.io-index"
442
+ checksum = "93857453250e3077bd71ff98b6a65ea6621a19bb0f559a85248955ac12c45a1a"
443
+ dependencies = [
444
+ "lock_api",
445
+ "parking_lot_core",
446
+ ]
447
+
354
448
  [[package]]
355
449
  name = "parking_lot_core"
356
450
  version = "0.9.12"
357
451
  source = "registry+https://github.com/rust-lang/crates.io-index"
358
452
  checksum = "2621685985a2ebf1c516881c026032ac7deafcda1a2c9b7850dc81e3dfcb64c1"
359
453
  dependencies = [
454
+ "backtrace",
360
455
  "cfg-if",
361
456
  "libc",
457
+ "petgraph",
362
458
  "redox_syscall",
363
459
  "smallvec",
364
460
  "windows-link",
365
461
  ]
366
462
 
463
+ [[package]]
464
+ name = "petgraph"
465
+ version = "0.6.5"
466
+ source = "registry+https://github.com/rust-lang/crates.io-index"
467
+ checksum = "b4c5cc86750666a3ed20bdaf5ca2a0344f9c67674cae0515bec2da16fbaa47db"
468
+ dependencies = [
469
+ "fixedbitset",
470
+ "indexmap",
471
+ ]
472
+
367
473
  [[package]]
368
474
  name = "portable-atomic"
369
- version = "1.13.0"
475
+ version = "1.13.1"
370
476
  source = "registry+https://github.com/rust-lang/crates.io-index"
371
- checksum = "f89776e4d69bb58bc6993e99ffa1d11f228b839984854c7daeb5d37f87cbe950"
477
+ checksum = "c33a9471896f1c69cecef8d20cbe2f7accd12527ce60845ff44c153bb2a21b49"
372
478
 
373
479
  [[package]]
374
480
  name = "ppv-lite86"
@@ -451,9 +557,9 @@ dependencies = [
451
557
 
452
558
  [[package]]
453
559
  name = "quote"
454
- version = "1.0.44"
560
+ version = "1.0.45"
455
561
  source = "registry+https://github.com/rust-lang/crates.io-index"
456
- checksum = "21b2ebcf727b7760c461f091f9f0f539b77b8e87f2fd88131e7f1b433b3cece4"
562
+ checksum = "41f2619966050689382d2b44f664f4bc593e129785a36d6ee376ddf37259b924"
457
563
  dependencies = [
458
564
  "proc-macro2",
459
565
  ]
@@ -524,9 +630,9 @@ dependencies = [
524
630
 
525
631
  [[package]]
526
632
  name = "regex-automata"
527
- version = "0.4.13"
633
+ version = "0.4.14"
528
634
  source = "registry+https://github.com/rust-lang/crates.io-index"
529
- checksum = "5276caf25ac86c8d810222b3dbb938e512c55c6831a10f3e6ed1c93b84041f1c"
635
+ checksum = "6e1dd4122fc1595e8162618945476892eefca7b88c52820e74af6262213cae8f"
530
636
  dependencies = [
531
637
  "aho-corasick",
532
638
  "memchr",
@@ -535,9 +641,9 @@ dependencies = [
535
641
 
536
642
  [[package]]
537
643
  name = "regex-syntax"
538
- version = "0.8.8"
644
+ version = "0.8.10"
539
645
  source = "registry+https://github.com/rust-lang/crates.io-index"
540
- checksum = "7a2d987857b319362043e95f5353c0535c1f58eec5336fdfcf626430af7def58"
646
+ checksum = "dc897dd8d9e8bd1ed8cdad82b5966c3e0ecae09fb1907d58efaa013543185d0a"
541
647
 
542
648
  [[package]]
543
649
  name = "rhai"
@@ -568,6 +674,12 @@ dependencies = [
568
674
  "syn",
569
675
  ]
570
676
 
677
+ [[package]]
678
+ name = "rustc-demangle"
679
+ version = "0.1.27"
680
+ source = "registry+https://github.com/rust-lang/crates.io-index"
681
+ checksum = "b50b8869d9fc858ce7266cce0194bd74df58b9d0e3f6df3a9fc8eb470d95c09d"
682
+
571
683
  [[package]]
572
684
  name = "rustc_version"
573
685
  version = "0.4.1"
@@ -679,9 +791,9 @@ checksum = "a2eb9349b6444b326872e140eb1cf5e7c522154d69e7a0ffb0fb81c06b37543f"
679
791
 
680
792
  [[package]]
681
793
  name = "syn"
682
- version = "2.0.114"
794
+ version = "2.0.117"
683
795
  source = "registry+https://github.com/rust-lang/crates.io-index"
684
- checksum = "d4d107df263a3013ef9b1879b0df87d706ff80f65a86ea879bd9c31f9b307c2a"
796
+ checksum = "e665b8803e7b1d2a727f4023456bbbbe74da67099c585258af0ad9c5013b9b99"
685
797
  dependencies = [
686
798
  "proc-macro2",
687
799
  "quote",
@@ -690,9 +802,9 @@ dependencies = [
690
802
 
691
803
  [[package]]
692
804
  name = "target-lexicon"
693
- version = "0.13.4"
805
+ version = "0.13.5"
694
806
  source = "registry+https://github.com/rust-lang/crates.io-index"
695
- checksum = "b1dd07eb858a2067e2f3c7155d54e929265c264e6f37efe3ee7a8d1b5a1dd0ba"
807
+ checksum = "adb6935a6f5c20170eeceb1a3835a49e12e19d792f6dd344ccc76a985ca5a6ca"
696
808
 
697
809
  [[package]]
698
810
  name = "thin-vec"
@@ -737,9 +849,9 @@ checksum = "562d481066bde0658276a35467c4af00bdc6ee726305698a55b86e61d7ad82bb"
737
849
 
738
850
  [[package]]
739
851
  name = "unicode-ident"
740
- version = "1.0.22"
852
+ version = "1.0.24"
741
853
  source = "registry+https://github.com/rust-lang/crates.io-index"
742
- checksum = "9312f7c4f6ff9069b165498234ce8be658059c6728633667c526e27dc2cf1df5"
854
+ checksum = "e6e4313cd5fcd3dad5cafa179702e2b244f760991f45397d14d4ebf38247da75"
743
855
 
744
856
  [[package]]
745
857
  name = "unindent"
@@ -770,9 +882,9 @@ dependencies = [
770
882
 
771
883
  [[package]]
772
884
  name = "wasm-bindgen"
773
- version = "0.2.108"
885
+ version = "0.2.114"
774
886
  source = "registry+https://github.com/rust-lang/crates.io-index"
775
- checksum = "64024a30ec1e37399cf85a7ffefebdb72205ca1c972291c51512360d90bd8566"
887
+ checksum = "6532f9a5c1ece3798cb1c2cfdba640b9b3ba884f5db45973a6f442510a87d38e"
776
888
  dependencies = [
777
889
  "cfg-if",
778
890
  "once_cell",
@@ -783,9 +895,9 @@ dependencies = [
783
895
 
784
896
  [[package]]
785
897
  name = "wasm-bindgen-macro"
786
- version = "0.2.108"
898
+ version = "0.2.114"
787
899
  source = "registry+https://github.com/rust-lang/crates.io-index"
788
- checksum = "008b239d9c740232e71bd39e8ef6429d27097518b6b30bdf9086833bd5b6d608"
900
+ checksum = "18a2d50fcf105fb33bb15f00e7a77b772945a2ee45dcf454961fd843e74c18e6"
789
901
  dependencies = [
790
902
  "quote",
791
903
  "wasm-bindgen-macro-support",
@@ -793,9 +905,9 @@ dependencies = [
793
905
 
794
906
  [[package]]
795
907
  name = "wasm-bindgen-macro-support"
796
- version = "0.2.108"
908
+ version = "0.2.114"
797
909
  source = "registry+https://github.com/rust-lang/crates.io-index"
798
- checksum = "5256bae2d58f54820e6490f9839c49780dff84c65aeab9e772f15d5f0e913a55"
910
+ checksum = "03ce4caeaac547cdf713d280eda22a730824dd11e6b8c3ca9e42247b25c631e3"
799
911
  dependencies = [
800
912
  "bumpalo",
801
913
  "proc-macro2",
@@ -806,9 +918,9 @@ dependencies = [
806
918
 
807
919
  [[package]]
808
920
  name = "wasm-bindgen-shared"
809
- version = "0.2.108"
921
+ version = "0.2.114"
810
922
  source = "registry+https://github.com/rust-lang/crates.io-index"
811
- checksum = "1f01b580c9ac74c8d8f0c0e4afb04eeef2acf145458e52c03845ee9cd23e3d12"
923
+ checksum = "75a326b8c223ee17883a4251907455a2431acc2791c98c26279376490c378c16"
812
924
  dependencies = [
813
925
  "unicode-ident",
814
926
  ]
@@ -837,18 +949,18 @@ checksum = "d7249219f66ced02969388cf2bb044a09756a083d0fab1e566056b04d9fbcaa5"
837
949
 
838
950
  [[package]]
839
951
  name = "zerocopy"
840
- version = "0.8.36"
952
+ version = "0.8.47"
841
953
  source = "registry+https://github.com/rust-lang/crates.io-index"
842
- checksum = "dafd85c832c1b68bbb4ec0c72c7f6f4fc5179627d2bc7c26b30e4c0cc11e76cc"
954
+ checksum = "efbb2a062be311f2ba113ce66f697a4dc589f85e78a4aea276200804cea0ed87"
843
955
  dependencies = [
844
956
  "zerocopy-derive",
845
957
  ]
846
958
 
847
959
  [[package]]
848
960
  name = "zerocopy-derive"
849
- version = "0.8.36"
961
+ version = "0.8.47"
850
962
  source = "registry+https://github.com/rust-lang/crates.io-index"
851
- checksum = "7cb7e4e8436d9db52fbd6625dbf2f45243ab84994a72882ec8227b99e72b439a"
963
+ checksum = "0e8bc7269b54418e7aeeef514aa68f8690b8c0489a06b0136e5f57c4c5ccab89"
852
964
  dependencies = [
853
965
  "proc-macro2",
854
966
  "quote",
@@ -857,6 +969,6 @@ dependencies = [
857
969
 
858
970
  [[package]]
859
971
  name = "zmij"
860
- version = "1.0.17"
972
+ version = "1.0.21"
861
973
  source = "registry+https://github.com/rust-lang/crates.io-index"
862
- checksum = "02aae0f83f69aafc94776e879363e9771d7ecbffe2c7fbb6c14c5e00dfe88439"
974
+ checksum = "b8848ee67ecc8aedbaf3e4122217aff892639231befc6a1b58d29fff4c2cabaa"
@@ -1,6 +1,6 @@
1
1
  [package]
2
2
  name = "implica"
3
- version = "1.2.2"
3
+ version = "1.3.2"
4
4
  edition = "2021"
5
5
  readme = "README.md"
6
6
 
@@ -14,6 +14,8 @@ dashmap = { version="6.1.0", features = ["rayon"]}
14
14
  error-stack = "0.6.0"
15
15
  fancy-regex = "0.17.0"
16
16
  hex = "0.4.3"
17
+ once_cell = "1.21.4"
18
+ parking_lot = {version="0.12.5", features = ["deadlock_detection"]}
17
19
  pyo3 = { version = "0.27.1", features = ["extension-module", "abi3-py38"] }
18
20
  rand = "0.9.2"
19
21
  rayon = "1.11.0"
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: implica
3
- Version: 1.2.2
3
+ Version: 1.3.2
4
4
  Classifier: Programming Language :: Rust
5
5
  Classifier: Programming Language :: Python :: Implementation :: CPython
6
6
  Classifier: Programming Language :: Python :: Implementation :: PyPy
@@ -1,3 +1,9 @@
1
+ ---
2
+ noteId: "4ee5623025da11f19e8557ed8224f3ba"
3
+ tags: []
4
+
5
+ ---
6
+
1
7
  # Implica
2
8
 
3
9
  [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
@@ -4,6 +4,8 @@ class Type:
4
4
  def __str__(self) -> str: ...
5
5
  def __repr__(self) -> str: ...
6
6
  def uid(self) -> str: ...
7
+ def as_var(self) -> Optional[str]: ...
8
+ def as_arrow(self) -> Optional[Tuple[Type, Type]]: ...
7
9
 
8
10
  class Term:
9
11
  def __str__(self) -> str: ...
@@ -40,9 +42,11 @@ class Query:
40
42
  def create(self, pattern: str) -> "Query": ...
41
43
  def remove(self, *variables: str) -> "Query": ...
42
44
  def set(self, variable: str, properties: Dict[str, Any], overwrite: bool = True) -> "Query": ...
45
+ def limit(self, limit: int) -> "Query": ...
43
46
 
44
47
  class Graph:
45
48
  def __init__(self, constants: List[Constant] = []) -> None: ...
49
+ def subgraph(self, nodes: List[str]) -> Graph: ...
46
50
  def query(self) -> Query: ...
47
51
  def nodes(self) -> List[Node]: ...
48
52
  def edges(self) -> List[Edge]: ...
@@ -125,6 +125,9 @@ pub enum ImplicaError {
125
125
  reason: String,
126
126
  context: Option<String>,
127
127
  },
128
+
129
+ #[error("Creation Counter Not Found ({})", context.as_ref().map(|c| format!(" ({})", c)).unwrap_or_default())]
130
+ CreationCounterNotFound { context: Option<String> },
128
131
  }
129
132
 
130
133
  pub type ImplicaResult<T> = Result<T, Report<ImplicaError>>;
@@ -166,6 +169,7 @@ impl<T> IntoPyResult<T> for ImplicaResult<T> {
166
169
  }
167
170
  ImplicaError::PythonError { .. }
168
171
  | ImplicaError::RuntimeError { .. }
172
+ | ImplicaError::CreationCounterNotFound { .. }
169
173
  //| ImplicaError::EvaluationError { .. }
170
174
  | ImplicaError::LockError { .. } => {
171
175
  exceptions::PyRuntimeError::new_err(full_message)