omlish 0.0.0.dev493__py3-none-any.whl → 0.0.0.dev506__py3-none-any.whl

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.

Potentially problematic release.


This version of omlish might be problematic. Click here for more details.

Files changed (55) hide show
  1. omlish/CODESTYLE.md +345 -0
  2. omlish/README.md +2 -2
  3. omlish/__about__.py +6 -4
  4. omlish/_check.cc +209 -0
  5. omlish/check.py +11 -0
  6. omlish/dataclasses/__init__.py +4 -0
  7. omlish/dataclasses/impl/concerns/frozen.py +4 -1
  8. omlish/dataclasses/tools/replace.py +27 -0
  9. omlish/dispatch/functions.py +1 -1
  10. omlish/formats/json/stream/lexing.py +13 -5
  11. omlish/formats/json/stream/parsing.py +1 -1
  12. omlish/inject/README.md +430 -0
  13. omlish/inject/__init__.py +1 -0
  14. omlish/inject/_dataclasses.py +64 -64
  15. omlish/inject/eagers.py +0 -4
  16. omlish/inject/elements.py +4 -0
  17. omlish/inject/helpers/late.py +1 -1
  18. omlish/inject/helpers/managed.py +27 -24
  19. omlish/inject/impl/injector.py +7 -22
  20. omlish/inject/impl/inspect.py +0 -8
  21. omlish/inject/impl/origins.py +1 -0
  22. omlish/inject/impl/privates.py +2 -6
  23. omlish/inject/impl/providers.py +0 -4
  24. omlish/inject/impl/scopes.py +14 -18
  25. omlish/inject/inspect.py +9 -0
  26. omlish/inject/multis.py +0 -3
  27. omlish/inject/scopes.py +7 -5
  28. omlish/io/buffers.py +35 -8
  29. omlish/lang/__init__.py +8 -0
  30. omlish/lang/classes/simple.py +2 -1
  31. omlish/lang/iterables.py +6 -0
  32. omlish/lang/objects.py +13 -0
  33. omlish/lang/outcomes.py +1 -1
  34. omlish/lang/recursion.py +1 -1
  35. omlish/lang/sequences.py +33 -0
  36. omlish/lifecycles/_dataclasses.py +18 -18
  37. omlish/lifecycles/injection.py +4 -4
  38. omlish/lite/maybes.py +7 -0
  39. omlish/lite/typing.py +15 -0
  40. omlish/logs/all.py +11 -0
  41. omlish/logs/base.py +3 -3
  42. omlish/logs/bisync.py +99 -0
  43. omlish/marshal/_dataclasses.py +32 -32
  44. omlish/specs/jmespath/_dataclasses.py +38 -38
  45. omlish/specs/jsonschema/keywords/_dataclasses.py +24 -24
  46. omlish/typedvalues/_collection.cc +500 -0
  47. omlish/typedvalues/collection.py +159 -62
  48. omlish/typedvalues/generic.py +5 -4
  49. omlish/typedvalues/values.py +6 -0
  50. {omlish-0.0.0.dev493.dist-info → omlish-0.0.0.dev506.dist-info}/METADATA +9 -7
  51. {omlish-0.0.0.dev493.dist-info → omlish-0.0.0.dev506.dist-info}/RECORD +55 -50
  52. {omlish-0.0.0.dev493.dist-info → omlish-0.0.0.dev506.dist-info}/WHEEL +0 -0
  53. {omlish-0.0.0.dev493.dist-info → omlish-0.0.0.dev506.dist-info}/entry_points.txt +0 -0
  54. {omlish-0.0.0.dev493.dist-info → omlish-0.0.0.dev506.dist-info}/licenses/LICENSE +0 -0
  55. {omlish-0.0.0.dev493.dist-info → omlish-0.0.0.dev506.dist-info}/top_level.txt +0 -0
@@ -96,7 +96,7 @@ def _process_dataclass__465d8361a14bec38d3a20f2ef3aaeaed5cd23067():
96
96
  def __setattr__(self, name, value):
97
97
  if (
98
98
  type(self) is __dataclass__cls
99
- or name in __dataclass___setattr_frozen_fields
99
+ or name in __dataclass___setattr_frozen_fields
100
100
  ):
101
101
  raise __dataclass__FrozenInstanceError(f"cannot assign to field {name!r}")
102
102
  super(__dataclass__cls, self).__setattr__(name, value)
@@ -113,7 +113,7 @@ def _process_dataclass__465d8361a14bec38d3a20f2ef3aaeaed5cd23067():
113
113
  def __delattr__(self, name):
114
114
  if (
115
115
  type(self) is __dataclass__cls
116
- or name in __dataclass___delattr_frozen_fields
116
+ or name in __dataclass___delattr_frozen_fields
117
117
  ):
118
118
  raise __dataclass__FrozenInstanceError(f"cannot delete field {name!r}")
119
119
  super(__dataclass__cls, self).__delattr__(name)
@@ -271,7 +271,7 @@ def _process_dataclass__46c59d586838c9ad0bfaea00944f56523114cba1():
271
271
  def __setattr__(self, name, value):
272
272
  if (
273
273
  type(self) is __dataclass__cls
274
- or name in __dataclass___setattr_frozen_fields
274
+ or name in __dataclass___setattr_frozen_fields
275
275
  ):
276
276
  raise __dataclass__FrozenInstanceError(f"cannot assign to field {name!r}")
277
277
  super(__dataclass__cls, self).__setattr__(name, value)
@@ -290,7 +290,7 @@ def _process_dataclass__46c59d586838c9ad0bfaea00944f56523114cba1():
290
290
  def __delattr__(self, name):
291
291
  if (
292
292
  type(self) is __dataclass__cls
293
- or name in __dataclass___delattr_frozen_fields
293
+ or name in __dataclass___delattr_frozen_fields
294
294
  ):
295
295
  raise __dataclass__FrozenInstanceError(f"cannot delete field {name!r}")
296
296
  super(__dataclass__cls, self).__delattr__(name)
@@ -427,7 +427,7 @@ def _process_dataclass__454972cdb0715dc22365cb0a504288ac36355c45():
427
427
  def __setattr__(self, name, value):
428
428
  if (
429
429
  type(self) is __dataclass__cls
430
- or name in __dataclass___setattr_frozen_fields
430
+ or name in __dataclass___setattr_frozen_fields
431
431
  ):
432
432
  raise __dataclass__FrozenInstanceError(f"cannot assign to field {name!r}")
433
433
  super(__dataclass__cls, self).__setattr__(name, value)
@@ -444,7 +444,7 @@ def _process_dataclass__454972cdb0715dc22365cb0a504288ac36355c45():
444
444
  def __delattr__(self, name):
445
445
  if (
446
446
  type(self) is __dataclass__cls
447
- or name in __dataclass___delattr_frozen_fields
447
+ or name in __dataclass___delattr_frozen_fields
448
448
  ):
449
449
  raise __dataclass__FrozenInstanceError(f"cannot delete field {name!r}")
450
450
  super(__dataclass__cls, self).__delattr__(name)
@@ -572,7 +572,7 @@ def _process_dataclass__d152f7efec7ea241cf364f9c170bbe40950b82d9():
572
572
  def __setattr__(self, name, value):
573
573
  if (
574
574
  type(self) is __dataclass__cls
575
- or name in __dataclass___setattr_frozen_fields
575
+ or name in __dataclass___setattr_frozen_fields
576
576
  ):
577
577
  raise __dataclass__FrozenInstanceError(f"cannot assign to field {name!r}")
578
578
  super(__dataclass__cls, self).__setattr__(name, value)
@@ -589,7 +589,7 @@ def _process_dataclass__d152f7efec7ea241cf364f9c170bbe40950b82d9():
589
589
  def __delattr__(self, name):
590
590
  if (
591
591
  type(self) is __dataclass__cls
592
- or name in __dataclass___delattr_frozen_fields
592
+ or name in __dataclass___delattr_frozen_fields
593
593
  ):
594
594
  raise __dataclass__FrozenInstanceError(f"cannot delete field {name!r}")
595
595
  super(__dataclass__cls, self).__delattr__(name)
@@ -728,7 +728,7 @@ def _process_dataclass__c45a09634b0e2a6fa1c4c76e2f691964112b0ddd():
728
728
  def __setattr__(self, name, value):
729
729
  if (
730
730
  type(self) is __dataclass__cls
731
- or name in __dataclass___setattr_frozen_fields
731
+ or name in __dataclass___setattr_frozen_fields
732
732
  ):
733
733
  raise __dataclass__FrozenInstanceError(f"cannot assign to field {name!r}")
734
734
  super(__dataclass__cls, self).__setattr__(name, value)
@@ -746,7 +746,7 @@ def _process_dataclass__c45a09634b0e2a6fa1c4c76e2f691964112b0ddd():
746
746
  def __delattr__(self, name):
747
747
  if (
748
748
  type(self) is __dataclass__cls
749
- or name in __dataclass___delattr_frozen_fields
749
+ or name in __dataclass___delattr_frozen_fields
750
750
  ):
751
751
  raise __dataclass__FrozenInstanceError(f"cannot delete field {name!r}")
752
752
  super(__dataclass__cls, self).__delattr__(name)
@@ -891,7 +891,7 @@ def _process_dataclass__20c0436b77a328557ecfbe556539d09e7a50f7bd():
891
891
  def __setattr__(self, name, value):
892
892
  if (
893
893
  type(self) is __dataclass__cls
894
- or name in __dataclass___setattr_frozen_fields
894
+ or name in __dataclass___setattr_frozen_fields
895
895
  ):
896
896
  raise __dataclass__FrozenInstanceError(f"cannot assign to field {name!r}")
897
897
  super(__dataclass__cls, self).__setattr__(name, value)
@@ -909,7 +909,7 @@ def _process_dataclass__20c0436b77a328557ecfbe556539d09e7a50f7bd():
909
909
  def __delattr__(self, name):
910
910
  if (
911
911
  type(self) is __dataclass__cls
912
- or name in __dataclass___delattr_frozen_fields
912
+ or name in __dataclass___delattr_frozen_fields
913
913
  ):
914
914
  raise __dataclass__FrozenInstanceError(f"cannot delete field {name!r}")
915
915
  super(__dataclass__cls, self).__delattr__(name)
@@ -1032,7 +1032,7 @@ def _process_dataclass__95e8d2726657f6c6d0abe6bace53f80710e3d314():
1032
1032
  def __setattr__(self, name, value):
1033
1033
  if (
1034
1034
  type(self) is __dataclass__cls
1035
- or name in __dataclass___setattr_frozen_fields
1035
+ or name in __dataclass___setattr_frozen_fields
1036
1036
  ):
1037
1037
  raise __dataclass__FrozenInstanceError(f"cannot assign to field {name!r}")
1038
1038
  super(__dataclass__cls, self).__setattr__(name, value)
@@ -1049,7 +1049,7 @@ def _process_dataclass__95e8d2726657f6c6d0abe6bace53f80710e3d314():
1049
1049
  def __delattr__(self, name):
1050
1050
  if (
1051
1051
  type(self) is __dataclass__cls
1052
- or name in __dataclass___delattr_frozen_fields
1052
+ or name in __dataclass___delattr_frozen_fields
1053
1053
  ):
1054
1054
  raise __dataclass__FrozenInstanceError(f"cannot delete field {name!r}")
1055
1055
  super(__dataclass__cls, self).__delattr__(name)
@@ -1193,7 +1193,7 @@ def _process_dataclass__e780a7b78a8d3e5c6ddd87c0bc5ae50bda8d0db2():
1193
1193
  def __setattr__(self, name, value):
1194
1194
  if (
1195
1195
  type(self) is __dataclass__cls
1196
- or name in __dataclass___setattr_frozen_fields
1196
+ or name in __dataclass___setattr_frozen_fields
1197
1197
  ):
1198
1198
  raise __dataclass__FrozenInstanceError(f"cannot assign to field {name!r}")
1199
1199
  super(__dataclass__cls, self).__setattr__(name, value)
@@ -1211,7 +1211,7 @@ def _process_dataclass__e780a7b78a8d3e5c6ddd87c0bc5ae50bda8d0db2():
1211
1211
  def __delattr__(self, name):
1212
1212
  if (
1213
1213
  type(self) is __dataclass__cls
1214
- or name in __dataclass___delattr_frozen_fields
1214
+ or name in __dataclass___delattr_frozen_fields
1215
1215
  ):
1216
1216
  raise __dataclass__FrozenInstanceError(f"cannot delete field {name!r}")
1217
1217
  super(__dataclass__cls, self).__delattr__(name)
@@ -1353,7 +1353,7 @@ def _process_dataclass__399a0f677e522382f8e81b442490afcfdd485c6a():
1353
1353
  def __setattr__(self, name, value):
1354
1354
  if (
1355
1355
  type(self) is __dataclass__cls
1356
- or name in __dataclass___setattr_frozen_fields
1356
+ or name in __dataclass___setattr_frozen_fields
1357
1357
  ):
1358
1358
  raise __dataclass__FrozenInstanceError(f"cannot assign to field {name!r}")
1359
1359
  super(__dataclass__cls, self).__setattr__(name, value)
@@ -1370,7 +1370,7 @@ def _process_dataclass__399a0f677e522382f8e81b442490afcfdd485c6a():
1370
1370
  def __delattr__(self, name):
1371
1371
  if (
1372
1372
  type(self) is __dataclass__cls
1373
- or name in __dataclass___delattr_frozen_fields
1373
+ or name in __dataclass___delattr_frozen_fields
1374
1374
  ):
1375
1375
  raise __dataclass__FrozenInstanceError(f"cannot delete field {name!r}")
1376
1376
  super(__dataclass__cls, self).__delattr__(name)
@@ -1498,7 +1498,7 @@ def _process_dataclass__d1633dcd9bb962f0e548a4a63b764b808cdac621():
1498
1498
  def __setattr__(self, name, value):
1499
1499
  if (
1500
1500
  type(self) is __dataclass__cls
1501
- or name in __dataclass___setattr_frozen_fields
1501
+ or name in __dataclass___setattr_frozen_fields
1502
1502
  ):
1503
1503
  raise __dataclass__FrozenInstanceError(f"cannot assign to field {name!r}")
1504
1504
  super(__dataclass__cls, self).__setattr__(name, value)
@@ -1515,7 +1515,7 @@ def _process_dataclass__d1633dcd9bb962f0e548a4a63b764b808cdac621():
1515
1515
  def __delattr__(self, name):
1516
1516
  if (
1517
1517
  type(self) is __dataclass__cls
1518
- or name in __dataclass___delattr_frozen_fields
1518
+ or name in __dataclass___delattr_frozen_fields
1519
1519
  ):
1520
1520
  raise __dataclass__FrozenInstanceError(f"cannot delete field {name!r}")
1521
1521
  super(__dataclass__cls, self).__delattr__(name)
@@ -1643,7 +1643,7 @@ def _process_dataclass__8b45b0d38754c357aabee0be30419e40d1746bc4():
1643
1643
  def __setattr__(self, name, value):
1644
1644
  if (
1645
1645
  type(self) is __dataclass__cls
1646
- or name in __dataclass___setattr_frozen_fields
1646
+ or name in __dataclass___setattr_frozen_fields
1647
1647
  ):
1648
1648
  raise __dataclass__FrozenInstanceError(f"cannot assign to field {name!r}")
1649
1649
  super(__dataclass__cls, self).__setattr__(name, value)
@@ -1660,7 +1660,7 @@ def _process_dataclass__8b45b0d38754c357aabee0be30419e40d1746bc4():
1660
1660
  def __delattr__(self, name):
1661
1661
  if (
1662
1662
  type(self) is __dataclass__cls
1663
- or name in __dataclass___delattr_frozen_fields
1663
+ or name in __dataclass___delattr_frozen_fields
1664
1664
  ):
1665
1665
  raise __dataclass__FrozenInstanceError(f"cannot delete field {name!r}")
1666
1666
  super(__dataclass__cls, self).__delattr__(name)
@@ -1790,7 +1790,7 @@ def _process_dataclass__a01535be51a62c3aedc3529e0204c6135d8d9e99():
1790
1790
  def __setattr__(self, name, value):
1791
1791
  if (
1792
1792
  type(self) is __dataclass__cls
1793
- or name in __dataclass___setattr_frozen_fields
1793
+ or name in __dataclass___setattr_frozen_fields
1794
1794
  ):
1795
1795
  raise __dataclass__FrozenInstanceError(f"cannot assign to field {name!r}")
1796
1796
  super(__dataclass__cls, self).__setattr__(name, value)
@@ -1807,7 +1807,7 @@ def _process_dataclass__a01535be51a62c3aedc3529e0204c6135d8d9e99():
1807
1807
  def __delattr__(self, name):
1808
1808
  if (
1809
1809
  type(self) is __dataclass__cls
1810
- or name in __dataclass___delattr_frozen_fields
1810
+ or name in __dataclass___delattr_frozen_fields
1811
1811
  ):
1812
1812
  raise __dataclass__FrozenInstanceError(f"cannot delete field {name!r}")
1813
1813
  super(__dataclass__cls, self).__delattr__(name)
@@ -1947,7 +1947,7 @@ def _process_dataclass__67e893f944c9f60c3bb7298d6024e3f17b097447():
1947
1947
  def __setattr__(self, name, value):
1948
1948
  if (
1949
1949
  type(self) is __dataclass__cls
1950
- or name in __dataclass___setattr_frozen_fields
1950
+ or name in __dataclass___setattr_frozen_fields
1951
1951
  ):
1952
1952
  raise __dataclass__FrozenInstanceError(f"cannot assign to field {name!r}")
1953
1953
  super(__dataclass__cls, self).__setattr__(name, value)
@@ -1965,7 +1965,7 @@ def _process_dataclass__67e893f944c9f60c3bb7298d6024e3f17b097447():
1965
1965
  def __delattr__(self, name):
1966
1966
  if (
1967
1967
  type(self) is __dataclass__cls
1968
- or name in __dataclass___delattr_frozen_fields
1968
+ or name in __dataclass___delattr_frozen_fields
1969
1969
  ):
1970
1970
  raise __dataclass__FrozenInstanceError(f"cannot delete field {name!r}")
1971
1971
  super(__dataclass__cls, self).__delattr__(name)
@@ -2099,7 +2099,7 @@ def _process_dataclass__e3da1b32863a0a4aca9ff268877a77ad5d6dd328():
2099
2099
  def __setattr__(self, name, value):
2100
2100
  if (
2101
2101
  type(self) is __dataclass__cls
2102
- or name in __dataclass___setattr_frozen_fields
2102
+ or name in __dataclass___setattr_frozen_fields
2103
2103
  ):
2104
2104
  raise __dataclass__FrozenInstanceError(f"cannot assign to field {name!r}")
2105
2105
  super(__dataclass__cls, self).__setattr__(name, value)
@@ -2116,7 +2116,7 @@ def _process_dataclass__e3da1b32863a0a4aca9ff268877a77ad5d6dd328():
2116
2116
  def __delattr__(self, name):
2117
2117
  if (
2118
2118
  type(self) is __dataclass__cls
2119
- or name in __dataclass___delattr_frozen_fields
2119
+ or name in __dataclass___delattr_frozen_fields
2120
2120
  ):
2121
2121
  raise __dataclass__FrozenInstanceError(f"cannot delete field {name!r}")
2122
2122
  super(__dataclass__cls, self).__delattr__(name)
@@ -2443,7 +2443,7 @@ def _process_dataclass__1a1c1b0c2f2ad1d4b7f67f6c870a5eb6e37e231c():
2443
2443
  def __setattr__(self, name, value):
2444
2444
  if (
2445
2445
  type(self) is __dataclass__cls
2446
- or name in __dataclass___setattr_frozen_fields
2446
+ or name in __dataclass___setattr_frozen_fields
2447
2447
  ):
2448
2448
  raise __dataclass__FrozenInstanceError(f"cannot assign to field {name!r}")
2449
2449
  super(__dataclass__cls, self).__setattr__(name, value)
@@ -2460,7 +2460,7 @@ def _process_dataclass__1a1c1b0c2f2ad1d4b7f67f6c870a5eb6e37e231c():
2460
2460
  def __delattr__(self, name):
2461
2461
  if (
2462
2462
  type(self) is __dataclass__cls
2463
- or name in __dataclass___delattr_frozen_fields
2463
+ or name in __dataclass___delattr_frozen_fields
2464
2464
  ):
2465
2465
  raise __dataclass__FrozenInstanceError(f"cannot delete field {name!r}")
2466
2466
  super(__dataclass__cls, self).__delattr__(name)
@@ -2584,7 +2584,7 @@ def _process_dataclass__5cb76e85fd58b7b06dd5593254d86e557222901c():
2584
2584
  def __setattr__(self, name, value):
2585
2585
  if (
2586
2586
  type(self) is __dataclass__cls
2587
- or name in __dataclass___setattr_frozen_fields
2587
+ or name in __dataclass___setattr_frozen_fields
2588
2588
  ):
2589
2589
  raise __dataclass__FrozenInstanceError(f"cannot assign to field {name!r}")
2590
2590
  super(__dataclass__cls, self).__setattr__(name, value)
@@ -2602,7 +2602,7 @@ def _process_dataclass__5cb76e85fd58b7b06dd5593254d86e557222901c():
2602
2602
  def __delattr__(self, name):
2603
2603
  if (
2604
2604
  type(self) is __dataclass__cls
2605
- or name in __dataclass___delattr_frozen_fields
2605
+ or name in __dataclass___delattr_frozen_fields
2606
2606
  ):
2607
2607
  raise __dataclass__FrozenInstanceError(f"cannot delete field {name!r}")
2608
2608
  super(__dataclass__cls, self).__delattr__(name)
@@ -2818,7 +2818,7 @@ def _process_dataclass__c4cee7449949f8c11b10dcaf6b91f62f28a6fd18():
2818
2818
  def __setattr__(self, name, value):
2819
2819
  if (
2820
2820
  type(self) is __dataclass__cls
2821
- or name in __dataclass___setattr_frozen_fields
2821
+ or name in __dataclass___setattr_frozen_fields
2822
2822
  ):
2823
2823
  raise __dataclass__FrozenInstanceError(f"cannot assign to field {name!r}")
2824
2824
  super(__dataclass__cls, self).__setattr__(name, value)
@@ -2835,7 +2835,7 @@ def _process_dataclass__c4cee7449949f8c11b10dcaf6b91f62f28a6fd18():
2835
2835
  def __delattr__(self, name):
2836
2836
  if (
2837
2837
  type(self) is __dataclass__cls
2838
- or name in __dataclass___delattr_frozen_fields
2838
+ or name in __dataclass___delattr_frozen_fields
2839
2839
  ):
2840
2840
  raise __dataclass__FrozenInstanceError(f"cannot delete field {name!r}")
2841
2841
  super(__dataclass__cls, self).__delattr__(name)
@@ -2951,7 +2951,7 @@ def _process_dataclass__5e1bef09da6295e8de9fe8f2ffad3a1a4e70d5a3():
2951
2951
  def __setattr__(self, name, value):
2952
2952
  if (
2953
2953
  type(self) is __dataclass__cls
2954
- or name in __dataclass___setattr_frozen_fields
2954
+ or name in __dataclass___setattr_frozen_fields
2955
2955
  ):
2956
2956
  raise __dataclass__FrozenInstanceError(f"cannot assign to field {name!r}")
2957
2957
  super(__dataclass__cls, self).__setattr__(name, value)
@@ -2969,7 +2969,7 @@ def _process_dataclass__5e1bef09da6295e8de9fe8f2ffad3a1a4e70d5a3():
2969
2969
  def __delattr__(self, name):
2970
2970
  if (
2971
2971
  type(self) is __dataclass__cls
2972
- or name in __dataclass___delattr_frozen_fields
2972
+ or name in __dataclass___delattr_frozen_fields
2973
2973
  ):
2974
2974
  raise __dataclass__FrozenInstanceError(f"cannot delete field {name!r}")
2975
2975
  super(__dataclass__cls, self).__delattr__(name)
@@ -3082,7 +3082,7 @@ def _process_dataclass__fd0f4351f533bc90a8c6f24973004fcc1931cf0d():
3082
3082
  def __setattr__(self, name, value):
3083
3083
  if (
3084
3084
  type(self) is __dataclass__cls
3085
- or name in __dataclass___setattr_frozen_fields
3085
+ or name in __dataclass___setattr_frozen_fields
3086
3086
  ):
3087
3087
  raise __dataclass__FrozenInstanceError(f"cannot assign to field {name!r}")
3088
3088
  super(__dataclass__cls, self).__setattr__(name, value)
@@ -3100,7 +3100,7 @@ def _process_dataclass__fd0f4351f533bc90a8c6f24973004fcc1931cf0d():
3100
3100
  def __delattr__(self, name):
3101
3101
  if (
3102
3102
  type(self) is __dataclass__cls
3103
- or name in __dataclass___delattr_frozen_fields
3103
+ or name in __dataclass___delattr_frozen_fields
3104
3104
  ):
3105
3105
  raise __dataclass__FrozenInstanceError(f"cannot delete field {name!r}")
3106
3106
  super(__dataclass__cls, self).__delattr__(name)
@@ -3222,7 +3222,7 @@ def _process_dataclass__3ea053d1a1090718f9d29a7824558f2ca9a77e31():
3222
3222
  def __setattr__(self, name, value):
3223
3223
  if (
3224
3224
  type(self) is __dataclass__cls
3225
- or name in __dataclass___setattr_frozen_fields
3225
+ or name in __dataclass___setattr_frozen_fields
3226
3226
  ):
3227
3227
  raise __dataclass__FrozenInstanceError(f"cannot assign to field {name!r}")
3228
3228
  super(__dataclass__cls, self).__setattr__(name, value)
@@ -3242,7 +3242,7 @@ def _process_dataclass__3ea053d1a1090718f9d29a7824558f2ca9a77e31():
3242
3242
  def __delattr__(self, name):
3243
3243
  if (
3244
3244
  type(self) is __dataclass__cls
3245
- or name in __dataclass___delattr_frozen_fields
3245
+ or name in __dataclass___delattr_frozen_fields
3246
3246
  ):
3247
3247
  raise __dataclass__FrozenInstanceError(f"cannot delete field {name!r}")
3248
3248
  super(__dataclass__cls, self).__delattr__(name)
@@ -3347,7 +3347,7 @@ def _process_dataclass__365eedd17dff52bfa369a9578066fd43141c41fd():
3347
3347
  def __setattr__(self, name, value):
3348
3348
  if (
3349
3349
  type(self) is __dataclass__cls
3350
- or name in __dataclass___setattr_frozen_fields
3350
+ or name in __dataclass___setattr_frozen_fields
3351
3351
  ):
3352
3352
  raise __dataclass__FrozenInstanceError(f"cannot assign to field {name!r}")
3353
3353
  super(__dataclass__cls, self).__setattr__(name, value)
@@ -3364,7 +3364,7 @@ def _process_dataclass__365eedd17dff52bfa369a9578066fd43141c41fd():
3364
3364
  def __delattr__(self, name):
3365
3365
  if (
3366
3366
  type(self) is __dataclass__cls
3367
- or name in __dataclass___delattr_frozen_fields
3367
+ or name in __dataclass___delattr_frozen_fields
3368
3368
  ):
3369
3369
  raise __dataclass__FrozenInstanceError(f"cannot delete field {name!r}")
3370
3370
  super(__dataclass__cls, self).__delattr__(name)
@@ -3458,7 +3458,7 @@ def _process_dataclass__8e1f31f368d04d4784c49dcc2d91408279e36285():
3458
3458
  def __setattr__(self, name, value):
3459
3459
  if (
3460
3460
  type(self) is __dataclass__cls
3461
- or name in __dataclass___setattr_frozen_fields
3461
+ or name in __dataclass___setattr_frozen_fields
3462
3462
  ):
3463
3463
  raise __dataclass__FrozenInstanceError(f"cannot assign to field {name!r}")
3464
3464
  super(__dataclass__cls, self).__setattr__(name, value)
@@ -3475,7 +3475,7 @@ def _process_dataclass__8e1f31f368d04d4784c49dcc2d91408279e36285():
3475
3475
  def __delattr__(self, name):
3476
3476
  if (
3477
3477
  type(self) is __dataclass__cls
3478
- or name in __dataclass___delattr_frozen_fields
3478
+ or name in __dataclass___delattr_frozen_fields
3479
3479
  ):
3480
3480
  raise __dataclass__FrozenInstanceError(f"cannot delete field {name!r}")
3481
3481
  super(__dataclass__cls, self).__delattr__(name)
@@ -3569,7 +3569,7 @@ def _process_dataclass__23940adf5b02820a6f9975e06728e5b58b744320():
3569
3569
  def __setattr__(self, name, value):
3570
3570
  if (
3571
3571
  type(self) is __dataclass__cls
3572
- or name in __dataclass___setattr_frozen_fields
3572
+ or name in __dataclass___setattr_frozen_fields
3573
3573
  ):
3574
3574
  raise __dataclass__FrozenInstanceError(f"cannot assign to field {name!r}")
3575
3575
  super(__dataclass__cls, self).__setattr__(name, value)
@@ -3586,7 +3586,7 @@ def _process_dataclass__23940adf5b02820a6f9975e06728e5b58b744320():
3586
3586
  def __delattr__(self, name):
3587
3587
  if (
3588
3588
  type(self) is __dataclass__cls
3589
- or name in __dataclass___delattr_frozen_fields
3589
+ or name in __dataclass___delattr_frozen_fields
3590
3590
  ):
3591
3591
  raise __dataclass__FrozenInstanceError(f"cannot delete field {name!r}")
3592
3592
  super(__dataclass__cls, self).__delattr__(name)
@@ -3705,7 +3705,7 @@ def _process_dataclass__61f34069d7091014f66ca9e1c1d27dbbc1a4e03f():
3705
3705
  def __setattr__(self, name, value):
3706
3706
  if (
3707
3707
  type(self) is __dataclass__cls
3708
- or name in __dataclass___setattr_frozen_fields
3708
+ or name in __dataclass___setattr_frozen_fields
3709
3709
  ):
3710
3710
  raise __dataclass__FrozenInstanceError(f"cannot assign to field {name!r}")
3711
3711
  super(__dataclass__cls, self).__setattr__(name, value)
@@ -3723,7 +3723,7 @@ def _process_dataclass__61f34069d7091014f66ca9e1c1d27dbbc1a4e03f():
3723
3723
  def __delattr__(self, name):
3724
3724
  if (
3725
3725
  type(self) is __dataclass__cls
3726
- or name in __dataclass___delattr_frozen_fields
3726
+ or name in __dataclass___delattr_frozen_fields
3727
3727
  ):
3728
3728
  raise __dataclass__FrozenInstanceError(f"cannot delete field {name!r}")
3729
3729
  super(__dataclass__cls, self).__delattr__(name)
@@ -3831,7 +3831,7 @@ def _process_dataclass__b721abb54732f14a7bceaf230a932d37b1a8ee48():
3831
3831
  def __setattr__(self, name, value):
3832
3832
  if (
3833
3833
  type(self) is __dataclass__cls
3834
- or name in __dataclass___setattr_frozen_fields
3834
+ or name in __dataclass___setattr_frozen_fields
3835
3835
  ):
3836
3836
  raise __dataclass__FrozenInstanceError(f"cannot assign to field {name!r}")
3837
3837
  super(__dataclass__cls, self).__setattr__(name, value)
@@ -3848,7 +3848,7 @@ def _process_dataclass__b721abb54732f14a7bceaf230a932d37b1a8ee48():
3848
3848
  def __delattr__(self, name):
3849
3849
  if (
3850
3850
  type(self) is __dataclass__cls
3851
- or name in __dataclass___delattr_frozen_fields
3851
+ or name in __dataclass___delattr_frozen_fields
3852
3852
  ):
3853
3853
  raise __dataclass__FrozenInstanceError(f"cannot delete field {name!r}")
3854
3854
  super(__dataclass__cls, self).__delattr__(name)
@@ -4049,7 +4049,7 @@ def _process_dataclass__0f6ba4c593adbc50913cf38fc7c075e91843dbde():
4049
4049
  def __setattr__(self, name, value):
4050
4050
  if (
4051
4051
  type(self) is __dataclass__cls
4052
- or name in __dataclass___setattr_frozen_fields
4052
+ or name in __dataclass___setattr_frozen_fields
4053
4053
  ):
4054
4054
  raise __dataclass__FrozenInstanceError(f"cannot assign to field {name!r}")
4055
4055
  super(__dataclass__cls, self).__setattr__(name, value)
@@ -4067,7 +4067,7 @@ def _process_dataclass__0f6ba4c593adbc50913cf38fc7c075e91843dbde():
4067
4067
  def __delattr__(self, name):
4068
4068
  if (
4069
4069
  type(self) is __dataclass__cls
4070
- or name in __dataclass___delattr_frozen_fields
4070
+ or name in __dataclass___delattr_frozen_fields
4071
4071
  ):
4072
4072
  raise __dataclass__FrozenInstanceError(f"cannot delete field {name!r}")
4073
4073
  super(__dataclass__cls, self).__delattr__(name)
@@ -4188,7 +4188,7 @@ def _process_dataclass__c5f6a36b3a0205325ea2602947f4888237a21382():
4188
4188
  def __setattr__(self, name, value):
4189
4189
  if (
4190
4190
  type(self) is __dataclass__cls
4191
- or name in __dataclass___setattr_frozen_fields
4191
+ or name in __dataclass___setattr_frozen_fields
4192
4192
  ):
4193
4193
  raise __dataclass__FrozenInstanceError(f"cannot assign to field {name!r}")
4194
4194
  super(__dataclass__cls, self).__setattr__(name, value)
@@ -4205,7 +4205,7 @@ def _process_dataclass__c5f6a36b3a0205325ea2602947f4888237a21382():
4205
4205
  def __delattr__(self, name):
4206
4206
  if (
4207
4207
  type(self) is __dataclass__cls
4208
- or name in __dataclass___delattr_frozen_fields
4208
+ or name in __dataclass___delattr_frozen_fields
4209
4209
  ):
4210
4210
  raise __dataclass__FrozenInstanceError(f"cannot delete field {name!r}")
4211
4211
  super(__dataclass__cls, self).__delattr__(name)
@@ -4407,7 +4407,7 @@ def _process_dataclass__01ca4dd7c51876d086eb4230f400151c659e0842():
4407
4407
  def __setattr__(self, name, value):
4408
4408
  if (
4409
4409
  type(self) is __dataclass__cls
4410
- or name in __dataclass___setattr_frozen_fields
4410
+ or name in __dataclass___setattr_frozen_fields
4411
4411
  ):
4412
4412
  raise __dataclass__FrozenInstanceError(f"cannot assign to field {name!r}")
4413
4413
  super(__dataclass__cls, self).__setattr__(name, value)
@@ -4424,7 +4424,7 @@ def _process_dataclass__01ca4dd7c51876d086eb4230f400151c659e0842():
4424
4424
  def __delattr__(self, name):
4425
4425
  if (
4426
4426
  type(self) is __dataclass__cls
4427
- or name in __dataclass___delattr_frozen_fields
4427
+ or name in __dataclass___delattr_frozen_fields
4428
4428
  ):
4429
4429
  raise __dataclass__FrozenInstanceError(f"cannot delete field {name!r}")
4430
4430
  super(__dataclass__cls, self).__delattr__(name)
@@ -4571,7 +4571,7 @@ def _process_dataclass__6ed12b80942097addba0fe978453312450cdf8d9():
4571
4571
  def __setattr__(self, name, value):
4572
4572
  if (
4573
4573
  type(self) is __dataclass__cls
4574
- or name in __dataclass___setattr_frozen_fields
4574
+ or name in __dataclass___setattr_frozen_fields
4575
4575
  ):
4576
4576
  raise __dataclass__FrozenInstanceError(f"cannot assign to field {name!r}")
4577
4577
  super(__dataclass__cls, self).__setattr__(name, value)
@@ -4590,7 +4590,7 @@ def _process_dataclass__6ed12b80942097addba0fe978453312450cdf8d9():
4590
4590
  def __delattr__(self, name):
4591
4591
  if (
4592
4592
  type(self) is __dataclass__cls
4593
- or name in __dataclass___delattr_frozen_fields
4593
+ or name in __dataclass___delattr_frozen_fields
4594
4594
  ):
4595
4595
  raise __dataclass__FrozenInstanceError(f"cannot delete field {name!r}")
4596
4596
  super(__dataclass__cls, self).__delattr__(name)
@@ -4736,7 +4736,7 @@ def _process_dataclass__864a29bd231d03e4f0141a4dc7872a66df50771d():
4736
4736
  def __setattr__(self, name, value):
4737
4737
  if (
4738
4738
  type(self) is __dataclass__cls
4739
- or name in __dataclass___setattr_frozen_fields
4739
+ or name in __dataclass___setattr_frozen_fields
4740
4740
  ):
4741
4741
  raise __dataclass__FrozenInstanceError(f"cannot assign to field {name!r}")
4742
4742
  super(__dataclass__cls, self).__setattr__(name, value)
@@ -4753,7 +4753,7 @@ def _process_dataclass__864a29bd231d03e4f0141a4dc7872a66df50771d():
4753
4753
  def __delattr__(self, name):
4754
4754
  if (
4755
4755
  type(self) is __dataclass__cls
4756
- or name in __dataclass___delattr_frozen_fields
4756
+ or name in __dataclass___delattr_frozen_fields
4757
4757
  ):
4758
4758
  raise __dataclass__FrozenInstanceError(f"cannot delete field {name!r}")
4759
4759
  super(__dataclass__cls, self).__delattr__(name)
@@ -4898,7 +4898,7 @@ def _process_dataclass__1ba38fd546769fabc04fa41bd279c7fcbbad22f2():
4898
4898
  def __setattr__(self, name, value):
4899
4899
  if (
4900
4900
  type(self) is __dataclass__cls
4901
- or name in __dataclass___setattr_frozen_fields
4901
+ or name in __dataclass___setattr_frozen_fields
4902
4902
  ):
4903
4903
  raise __dataclass__FrozenInstanceError(f"cannot assign to field {name!r}")
4904
4904
  super(__dataclass__cls, self).__setattr__(name, value)
@@ -4916,7 +4916,7 @@ def _process_dataclass__1ba38fd546769fabc04fa41bd279c7fcbbad22f2():
4916
4916
  def __delattr__(self, name):
4917
4917
  if (
4918
4918
  type(self) is __dataclass__cls
4919
- or name in __dataclass___delattr_frozen_fields
4919
+ or name in __dataclass___delattr_frozen_fields
4920
4920
  ):
4921
4921
  raise __dataclass__FrozenInstanceError(f"cannot delete field {name!r}")
4922
4922
  super(__dataclass__cls, self).__delattr__(name)
@@ -5067,7 +5067,7 @@ def _process_dataclass__c35199aac6d207aea4ae186fa99b44f431914e53():
5067
5067
  def __setattr__(self, name, value):
5068
5068
  if (
5069
5069
  type(self) is __dataclass__cls
5070
- or name in __dataclass___setattr_frozen_fields
5070
+ or name in __dataclass___setattr_frozen_fields
5071
5071
  ):
5072
5072
  raise __dataclass__FrozenInstanceError(f"cannot assign to field {name!r}")
5073
5073
  super(__dataclass__cls, self).__setattr__(name, value)
@@ -5085,7 +5085,7 @@ def _process_dataclass__c35199aac6d207aea4ae186fa99b44f431914e53():
5085
5085
  def __delattr__(self, name):
5086
5086
  if (
5087
5087
  type(self) is __dataclass__cls
5088
- or name in __dataclass___delattr_frozen_fields
5088
+ or name in __dataclass___delattr_frozen_fields
5089
5089
  ):
5090
5090
  raise __dataclass__FrozenInstanceError(f"cannot delete field {name!r}")
5091
5091
  super(__dataclass__cls, self).__delattr__(name)
omlish/inject/eagers.py CHANGED
@@ -1,7 +1,3 @@
1
- """
2
- TODO:
3
- - SCOPED - eagers for EACH SCOPE
4
- """
5
1
  from .. import check
6
2
  from .. import dataclasses as dc
7
3
  from .. import lang
omlish/inject/elements.py CHANGED
@@ -37,6 +37,10 @@ class Elements(lang.Final):
37
37
  for c in self.cs:
38
38
  yield from c
39
39
 
40
+ @property
41
+ def debug(self) -> ta.Sequence[Element]:
42
+ return list(self)
43
+
40
44
 
41
45
  Elemental: ta.TypeAlias = ta.Union[ # noqa
42
46
  Element,
@@ -53,7 +53,7 @@ def _bind_late(
53
53
  if outer is None:
54
54
  inner_ann = rfl.to_annotation(inner_key.ty)
55
55
  outer_ann = late_cls[inner_ann]
56
- outer_key = Key(rfl.type_(outer_ann))
56
+ outer_key = Key(rfl.type_(outer_ann), tag=inner_key.tag)
57
57
  outer_fac = lang.identity
58
58
  else:
59
59
  outer_key = as_key(outer)
@@ -27,14 +27,15 @@ T = ta.TypeVar('T')
27
27
  ##
28
28
 
29
29
 
30
- @contextlib.asynccontextmanager
31
- async def create_async_managed_injector(*args: Elemental) -> ta.AsyncGenerator['_injector.AsyncInjector']:
32
- ai = await _injector.create_async_injector(
33
- bind(contextlib.AsyncExitStack, singleton=True, eager=True),
34
- *args,
35
- )
36
- async with (await ai[contextlib.AsyncExitStack]):
37
- yield ai
30
+ def create_async_managed_injector(*args: Elemental) -> ta.AsyncContextManager['_injector.AsyncInjector']:
31
+ @contextlib.asynccontextmanager
32
+ async def inner():
33
+ async with contextlib.AsyncExitStack() as aes:
34
+ yield await _injector.create_async_injector(
35
+ bind(contextlib.AsyncExitStack, to_const=aes),
36
+ *args,
37
+ )
38
+ return inner()
38
39
 
39
40
 
40
41
  def make_async_managed_provider(
@@ -61,14 +62,15 @@ def make_async_managed_provider(
61
62
  ##
62
63
 
63
64
 
64
- @contextlib.contextmanager
65
- def create_managed_injector(*args: Elemental) -> ta.Generator['_sync.Injector']:
66
- i = _sync.create_injector(
67
- bind(contextlib.ExitStack, singleton=True, eager=True),
68
- *args,
69
- )
70
- with i[contextlib.ExitStack]:
71
- yield i
65
+ def create_managed_injector(*args: Elemental) -> ta.ContextManager['_sync.Injector']:
66
+ @contextlib.contextmanager
67
+ def inner():
68
+ with contextlib.ExitStack() as es:
69
+ yield _sync.create_injector(
70
+ bind(contextlib.ExitStack, to_const=es),
71
+ *args,
72
+ )
73
+ return inner()
72
74
 
73
75
 
74
76
  def make_managed_provider(
@@ -95,14 +97,15 @@ def make_managed_provider(
95
97
  ##
96
98
 
97
99
 
98
- @contextlib.contextmanager
99
- def create_maysync_managed_injector(*args: Elemental) -> ta.Generator['_maysync.MaysyncInjector']:
100
- i = _maysync.create_maysync_injector(
101
- bind(contextlib.ExitStack, singleton=True, eager=True),
102
- *args,
103
- )
104
- with i[contextlib.ExitStack]:
105
- yield i
100
+ def create_maysync_managed_injector(*args: Elemental) -> ta.ContextManager['_maysync.MaysyncInjector']:
101
+ @contextlib.contextmanager
102
+ def inner():
103
+ with contextlib.ExitStack() as es:
104
+ yield _maysync.create_maysync_injector(
105
+ bind(contextlib.ExitStack, to_const=es),
106
+ *args,
107
+ )
108
+ return inner()
106
109
 
107
110
 
108
111
  def make_maysync_managed_provider(