omlish 0.0.0.dev447__py3-none-any.whl → 0.0.0.dev493__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 (265) hide show
  1. omlish/.omlish-manifests.json +12 -0
  2. omlish/README.md +199 -0
  3. omlish/__about__.py +21 -16
  4. omlish/argparse/all.py +17 -9
  5. omlish/argparse/cli.py +16 -3
  6. omlish/argparse/utils.py +21 -0
  7. omlish/asyncs/asyncio/rlock.py +110 -0
  8. omlish/asyncs/asyncio/sync.py +43 -0
  9. omlish/asyncs/asyncio/utils.py +2 -0
  10. omlish/asyncs/sync.py +25 -0
  11. omlish/bootstrap/_marshal.py +1 -1
  12. omlish/bootstrap/diag.py +12 -21
  13. omlish/bootstrap/main.py +2 -5
  14. omlish/bootstrap/sys.py +27 -28
  15. omlish/cexts/__init__.py +0 -0
  16. omlish/cexts/include/omlish/omlish.hh +1 -0
  17. omlish/collections/__init__.py +13 -1
  18. omlish/collections/attrregistry.py +210 -0
  19. omlish/collections/cache/impl.py +1 -0
  20. omlish/collections/identity.py +1 -0
  21. omlish/collections/mappings.py +28 -0
  22. omlish/collections/trie.py +5 -1
  23. omlish/collections/utils.py +77 -0
  24. omlish/concurrent/all.py +2 -1
  25. omlish/concurrent/futures.py +25 -0
  26. omlish/concurrent/threadlets.py +1 -1
  27. omlish/daemons/reparent.py +2 -3
  28. omlish/daemons/spawning.py +2 -3
  29. omlish/dataclasses/__init__.py +2 -0
  30. omlish/dataclasses/impl/api/classes/decorator.py +3 -0
  31. omlish/dataclasses/impl/api/classes/make.py +3 -0
  32. omlish/dataclasses/impl/concerns/repr.py +15 -2
  33. omlish/dataclasses/impl/configs.py +97 -37
  34. omlish/dataclasses/impl/generation/compilation.py +21 -19
  35. omlish/dataclasses/impl/generation/globals.py +1 -0
  36. omlish/dataclasses/impl/generation/ops.py +1 -0
  37. omlish/dataclasses/impl/generation/plans.py +2 -17
  38. omlish/dataclasses/impl/generation/processor.py +106 -25
  39. omlish/dataclasses/impl/processing/base.py +8 -0
  40. omlish/dataclasses/impl/processing/driving.py +19 -7
  41. omlish/dataclasses/specs.py +1 -0
  42. omlish/dataclasses/tools/modifiers.py +5 -0
  43. omlish/diag/_pycharm/runhack.py +1 -1
  44. omlish/diag/cmds/__init__.py +0 -0
  45. omlish/diag/{lslocks.py → cmds/lslocks.py} +6 -6
  46. omlish/diag/{lsof.py → cmds/lsof.py} +6 -6
  47. omlish/diag/{ps.py → cmds/ps.py} +6 -6
  48. omlish/diag/pycharm.py +16 -2
  49. omlish/diag/pydevd.py +58 -40
  50. omlish/diag/replserver/console.py +1 -1
  51. omlish/dispatch/__init__.py +18 -12
  52. omlish/dispatch/methods.py +50 -140
  53. omlish/dom/rendering.py +1 -1
  54. omlish/formats/dotenv.py +1 -1
  55. omlish/formats/json/stream/__init__.py +13 -0
  56. omlish/funcs/guard.py +225 -0
  57. omlish/graphs/dot/rendering.py +1 -1
  58. omlish/http/all.py +44 -4
  59. omlish/http/clients/asyncs.py +33 -27
  60. omlish/http/clients/base.py +17 -1
  61. omlish/http/clients/coro/__init__.py +0 -0
  62. omlish/http/clients/coro/sync.py +171 -0
  63. omlish/http/clients/default.py +208 -29
  64. omlish/http/clients/executor.py +56 -0
  65. omlish/http/clients/httpx.py +72 -11
  66. omlish/http/clients/middleware.py +181 -0
  67. omlish/http/clients/sync.py +33 -27
  68. omlish/http/clients/syncasync.py +49 -0
  69. omlish/http/clients/urllib.py +6 -3
  70. omlish/http/coro/client/connection.py +15 -6
  71. omlish/http/coro/io.py +2 -0
  72. omlish/http/flasky/__init__.py +40 -0
  73. omlish/http/flasky/_compat.py +2 -0
  74. omlish/http/flasky/api.py +82 -0
  75. omlish/http/flasky/app.py +203 -0
  76. omlish/http/flasky/cvs.py +59 -0
  77. omlish/http/flasky/requests.py +20 -0
  78. omlish/http/flasky/responses.py +23 -0
  79. omlish/http/flasky/routes.py +23 -0
  80. omlish/http/flasky/types.py +15 -0
  81. omlish/http/urls.py +67 -0
  82. omlish/inject/__init__.py +57 -29
  83. omlish/inject/_dataclasses.py +5148 -0
  84. omlish/inject/binder.py +11 -52
  85. omlish/inject/eagers.py +2 -0
  86. omlish/inject/elements.py +27 -0
  87. omlish/inject/helpers/__init__.py +0 -0
  88. omlish/inject/{utils.py → helpers/constfn.py} +3 -3
  89. omlish/inject/{tags.py → helpers/id.py} +2 -2
  90. omlish/inject/helpers/late.py +76 -0
  91. omlish/inject/{managed.py → helpers/managed.py} +10 -10
  92. omlish/inject/helpers/multis.py +143 -0
  93. omlish/inject/helpers/wrappers.py +54 -0
  94. omlish/inject/impl/elements.py +54 -21
  95. omlish/inject/impl/injector.py +29 -25
  96. omlish/inject/impl/inspect.py +10 -1
  97. omlish/inject/impl/maysync.py +3 -4
  98. omlish/inject/impl/multis.py +3 -0
  99. omlish/inject/impl/sync.py +3 -4
  100. omlish/inject/injector.py +31 -2
  101. omlish/inject/inspect.py +35 -0
  102. omlish/inject/maysync.py +2 -4
  103. omlish/inject/multis.py +8 -0
  104. omlish/inject/overrides.py +3 -3
  105. omlish/inject/privates.py +6 -0
  106. omlish/inject/providers.py +3 -2
  107. omlish/inject/sync.py +5 -4
  108. omlish/io/buffers.py +118 -0
  109. omlish/io/readers.py +29 -0
  110. omlish/iterators/transforms.py +2 -2
  111. omlish/lang/__init__.py +180 -97
  112. omlish/lang/_asyncs.cc +186 -0
  113. omlish/lang/asyncs.py +17 -0
  114. omlish/lang/casing.py +11 -0
  115. omlish/lang/contextmanagers.py +28 -4
  116. omlish/lang/functions.py +31 -22
  117. omlish/lang/imports/_capture.cc +11 -9
  118. omlish/lang/imports/capture.py +363 -170
  119. omlish/lang/imports/proxy.py +455 -152
  120. omlish/lang/lazyglobals.py +22 -9
  121. omlish/lang/params.py +17 -0
  122. omlish/lang/recursion.py +0 -1
  123. omlish/lang/sequences.py +124 -0
  124. omlish/lifecycles/README.md +30 -0
  125. omlish/lifecycles/__init__.py +87 -13
  126. omlish/lifecycles/_dataclasses.py +1388 -0
  127. omlish/lifecycles/base.py +178 -64
  128. omlish/lifecycles/contextmanagers.py +113 -4
  129. omlish/lifecycles/controller.py +150 -87
  130. omlish/lifecycles/injection.py +143 -0
  131. omlish/lifecycles/listeners.py +56 -0
  132. omlish/lifecycles/managed.py +142 -0
  133. omlish/lifecycles/manager.py +218 -93
  134. omlish/lifecycles/states.py +2 -0
  135. omlish/lifecycles/transitions.py +3 -0
  136. omlish/lifecycles/unwrap.py +57 -0
  137. omlish/lite/abstract.py +54 -24
  138. omlish/lite/asyncs.py +2 -2
  139. omlish/lite/attrops.py +2 -0
  140. omlish/lite/contextmanagers.py +4 -4
  141. omlish/lite/dataclasses.py +44 -0
  142. omlish/lite/maybes.py +8 -0
  143. omlish/lite/maysync.py +1 -5
  144. omlish/lite/pycharm.py +1 -1
  145. omlish/lite/typing.py +24 -0
  146. omlish/logs/_amalg.py +1 -1
  147. omlish/logs/all.py +25 -11
  148. omlish/logs/asyncs.py +73 -0
  149. omlish/logs/base.py +101 -12
  150. omlish/logs/contexts.py +4 -1
  151. omlish/logs/lists.py +125 -0
  152. omlish/logs/modules.py +19 -1
  153. omlish/logs/std/loggers.py +6 -1
  154. omlish/logs/std/noisy.py +11 -9
  155. omlish/logs/{standard.py → std/standard.py} +3 -4
  156. omlish/logs/utils.py +17 -2
  157. omlish/manifests/loading.py +2 -1
  158. omlish/marshal/__init__.py +33 -13
  159. omlish/marshal/_dataclasses.py +2774 -0
  160. omlish/marshal/base/configs.py +12 -0
  161. omlish/marshal/base/contexts.py +36 -21
  162. omlish/marshal/base/funcs.py +8 -11
  163. omlish/marshal/base/options.py +8 -0
  164. omlish/marshal/base/registries.py +146 -44
  165. omlish/marshal/base/types.py +40 -16
  166. omlish/marshal/composite/iterables.py +33 -20
  167. omlish/marshal/composite/literals.py +20 -18
  168. omlish/marshal/composite/mappings.py +36 -23
  169. omlish/marshal/composite/maybes.py +29 -19
  170. omlish/marshal/composite/newtypes.py +16 -16
  171. omlish/marshal/composite/optionals.py +14 -14
  172. omlish/marshal/composite/special.py +15 -15
  173. omlish/marshal/composite/unions/__init__.py +0 -0
  174. omlish/marshal/composite/unions/literals.py +93 -0
  175. omlish/marshal/composite/unions/primitives.py +103 -0
  176. omlish/marshal/factories/invalidate.py +18 -68
  177. omlish/marshal/factories/method.py +26 -0
  178. omlish/marshal/factories/moduleimport/factories.py +22 -65
  179. omlish/marshal/factories/multi.py +13 -25
  180. omlish/marshal/factories/recursive.py +42 -56
  181. omlish/marshal/factories/typecache.py +29 -74
  182. omlish/marshal/factories/typemap.py +42 -43
  183. omlish/marshal/objects/dataclasses.py +129 -106
  184. omlish/marshal/objects/marshal.py +18 -14
  185. omlish/marshal/objects/namedtuples.py +48 -42
  186. omlish/marshal/objects/unmarshal.py +19 -15
  187. omlish/marshal/polymorphism/marshal.py +9 -11
  188. omlish/marshal/polymorphism/metadata.py +16 -5
  189. omlish/marshal/polymorphism/standard.py +13 -1
  190. omlish/marshal/polymorphism/unions.py +15 -105
  191. omlish/marshal/polymorphism/unmarshal.py +9 -10
  192. omlish/marshal/singular/enums.py +14 -18
  193. omlish/marshal/standard.py +10 -6
  194. omlish/marshal/trivial/any.py +1 -1
  195. omlish/marshal/trivial/forbidden.py +21 -26
  196. omlish/metadata.py +23 -1
  197. omlish/os/forkhooks.py +4 -0
  198. omlish/os/pidfiles/pinning.py +2 -2
  199. omlish/reflect/__init__.py +43 -26
  200. omlish/reflect/ops.py +10 -1
  201. omlish/reflect/types.py +1 -0
  202. omlish/secrets/marshal.py +1 -1
  203. omlish/specs/jmespath/__init__.py +12 -3
  204. omlish/specs/jmespath/_dataclasses.py +2893 -0
  205. omlish/specs/jmespath/ast.py +1 -1
  206. omlish/specs/jsonrpc/__init__.py +13 -0
  207. omlish/specs/jsonrpc/_marshal.py +32 -23
  208. omlish/specs/jsonrpc/conns.py +10 -7
  209. omlish/specs/jsonschema/_marshal.py +1 -1
  210. omlish/specs/jsonschema/keywords/__init__.py +7 -0
  211. omlish/specs/jsonschema/keywords/_dataclasses.py +1644 -0
  212. omlish/specs/openapi/_marshal.py +31 -22
  213. omlish/sql/__init__.py +24 -5
  214. omlish/sql/{tabledefs/alchemy.py → alchemy/tabledefs.py} +2 -2
  215. omlish/sql/api/dbapi.py +1 -1
  216. omlish/sql/dbapi/__init__.py +15 -0
  217. omlish/sql/{dbapi.py → dbapi/drivers.py} +2 -2
  218. omlish/sql/queries/__init__.py +3 -0
  219. omlish/sql/queries/_marshal.py +2 -2
  220. omlish/sql/queries/rendering.py +1 -1
  221. omlish/sql/tabledefs/_marshal.py +1 -1
  222. omlish/subprocesses/base.py +4 -0
  223. omlish/subprocesses/editor.py +1 -1
  224. omlish/sync.py +155 -21
  225. omlish/term/alt.py +60 -0
  226. omlish/term/confirm.py +8 -8
  227. omlish/term/pager.py +235 -0
  228. omlish/term/terminfo.py +935 -0
  229. omlish/term/termstate.py +67 -0
  230. omlish/term/vt100/terminal.py +0 -3
  231. omlish/testing/pytest/plugins/asyncs/fixtures.py +4 -1
  232. omlish/testing/pytest/plugins/asyncs/plugin.py +2 -0
  233. omlish/testing/pytest/plugins/skips.py +2 -1
  234. omlish/testing/unittest/main.py +3 -3
  235. omlish/text/docwrap/__init__.py +3 -0
  236. omlish/text/docwrap/__main__.py +11 -0
  237. omlish/text/docwrap/api.py +83 -0
  238. omlish/text/docwrap/cli.py +91 -0
  239. omlish/text/docwrap/groups.py +84 -0
  240. omlish/text/docwrap/lists.py +167 -0
  241. omlish/text/docwrap/parts.py +146 -0
  242. omlish/text/docwrap/reflowing.py +106 -0
  243. omlish/text/docwrap/rendering.py +151 -0
  244. omlish/text/docwrap/utils.py +11 -0
  245. omlish/text/docwrap/wrapping.py +59 -0
  246. omlish/text/filecache.py +2 -2
  247. omlish/text/lorem.py +6 -0
  248. omlish/text/parts.py +2 -2
  249. omlish/text/textwrap.py +51 -0
  250. omlish/typedvalues/marshal.py +85 -59
  251. omlish/typedvalues/values.py +2 -1
  252. {omlish-0.0.0.dev447.dist-info → omlish-0.0.0.dev493.dist-info}/METADATA +36 -32
  253. {omlish-0.0.0.dev447.dist-info → omlish-0.0.0.dev493.dist-info}/RECORD +260 -199
  254. omlish/dataclasses/impl/generation/mangling.py +0 -18
  255. omlish/funcs/match.py +0 -227
  256. omlish/lifecycles/abstract.py +0 -86
  257. omlish/marshal/factories/match.py +0 -34
  258. omlish/marshal/factories/simple.py +0 -28
  259. /omlish/inject/{impl → helpers}/proxy.py +0 -0
  260. /omlish/inject/impl/{providers2.py → providersmap.py} +0 -0
  261. /omlish/sql/{abc.py → dbapi/abc.py} +0 -0
  262. {omlish-0.0.0.dev447.dist-info → omlish-0.0.0.dev493.dist-info}/WHEEL +0 -0
  263. {omlish-0.0.0.dev447.dist-info → omlish-0.0.0.dev493.dist-info}/entry_points.txt +0 -0
  264. {omlish-0.0.0.dev447.dist-info → omlish-0.0.0.dev493.dist-info}/licenses/LICENSE +0 -0
  265. {omlish-0.0.0.dev447.dist-info → omlish-0.0.0.dev493.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,1388 @@
1
+ # @omlish-generated
2
+ # type: ignore
3
+ # ruff: noqa
4
+ # flake8: noqa
5
+ import dataclasses
6
+ import reprlib
7
+ import types
8
+
9
+
10
+ ##
11
+
12
+
13
+ REGISTRY = {}
14
+
15
+
16
+ def _register(**kwargs):
17
+ def inner(fn):
18
+ REGISTRY[kwargs['plan_repr']] = (kwargs, fn)
19
+ return fn
20
+ return inner
21
+
22
+
23
+ ##
24
+
25
+
26
+ @_register(
27
+ plan_repr=(
28
+ "Plans(tup=(CopyPlan(fields=('cm',)), EqPlan(fields=('cm',)), FrozenPlan(fields=('cm',), allow_dynamic_dunder_a"
29
+ "ttrs=False), HashPlan(action='add', fields=('cm',), cache=False), InitPlan(fields=(InitPlan.Field(name='cm', a"
30
+ "nnotation=OpRef(name='init.fields.0.annotation'), default=None, default_factory=None, init=True, override=Fals"
31
+ "e, field_type=FieldType.INSTANCE, coerce=None, validate=None, check_type=None),), self_param='self', std_param"
32
+ "s=('cm',), kw_only_params=(), frozen=True, slots=False, post_init_params=None, init_fns=(), validate_fns=()), "
33
+ "ReprPlan(fields=(ReprPlan.Field(name='cm', kw_only=False, fn=None),), id=False, terse=False, default_fn=None))"
34
+ ")"
35
+ ),
36
+ plan_repr_sha1='80a0a85b19250d1d39ff826c429bd05f9be201e1',
37
+ op_ref_idents=(
38
+ '__dataclass__init__fields__0__annotation',
39
+ ),
40
+ cls_names=(
41
+ ('omlish.lifecycles', 'AsyncContextManagerLifecycle'),
42
+ ('omlish.lifecycles', 'ContextManagerLifecycle'),
43
+ ),
44
+ )
45
+ def _process_dataclass__80a0a85b19250d1d39ff826c429bd05f9be201e1():
46
+ def _process_dataclass(
47
+ *,
48
+ __dataclass__cls,
49
+ __dataclass__init__fields__0__annotation,
50
+ __dataclass__FieldFnValidationError, # noqa
51
+ __dataclass__FieldTypeValidationError, # noqa
52
+ __dataclass__FnValidationError, # noqa
53
+ __dataclass__FrozenInstanceError=dataclasses.FrozenInstanceError, # noqa
54
+ __dataclass__FunctionType=types.FunctionType, # noqa
55
+ __dataclass__HAS_DEFAULT_FACTORY=dataclasses._HAS_DEFAULT_FACTORY, # noqa
56
+ __dataclass__MISSING=dataclasses.MISSING, # noqa
57
+ __dataclass__None=None, # noqa
58
+ __dataclass__TypeError=TypeError, # noqa
59
+ __dataclass___recursive_repr=reprlib.recursive_repr, # noqa
60
+ __dataclass__isinstance=isinstance, # noqa
61
+ __dataclass__object_setattr=object.__setattr__, # noqa
62
+ __dataclass__property=property, # noqa
63
+ ):
64
+ def __copy__(self):
65
+ if self.__class__ is not __dataclass__cls:
66
+ raise TypeError(self)
67
+ return __dataclass__cls( # noqa
68
+ cm=self.cm,
69
+ )
70
+
71
+ __copy__.__qualname__ = f"{__dataclass__cls.__qualname__}.__copy__"
72
+ if '__copy__' in __dataclass__cls.__dict__:
73
+ raise __dataclass__TypeError(f"Cannot overwrite attribute __copy__ in class {__dataclass__cls.__name__}")
74
+ setattr(__dataclass__cls, '__copy__', __copy__)
75
+
76
+ def __eq__(self, other):
77
+ if self is other:
78
+ return True
79
+ if self.__class__ is not other.__class__:
80
+ return NotImplemented
81
+ return (
82
+ self.cm == other.cm
83
+ )
84
+
85
+ __eq__.__qualname__ = f"{__dataclass__cls.__qualname__}.__eq__"
86
+ if '__eq__' in __dataclass__cls.__dict__:
87
+ raise __dataclass__TypeError(f"Cannot overwrite attribute __eq__ in class {__dataclass__cls.__name__}")
88
+ setattr(__dataclass__cls, '__eq__', __eq__)
89
+
90
+ __dataclass___setattr_frozen_fields = {
91
+ 'cm',
92
+ }
93
+
94
+ def __setattr__(self, name, value):
95
+ if (
96
+ type(self) is __dataclass__cls
97
+ or name in __dataclass___setattr_frozen_fields
98
+ ):
99
+ raise __dataclass__FrozenInstanceError(f"cannot assign to field {name!r}")
100
+ super(__dataclass__cls, self).__setattr__(name, value)
101
+
102
+ __setattr__.__qualname__ = f"{__dataclass__cls.__qualname__}.__setattr__"
103
+ if '__setattr__' in __dataclass__cls.__dict__:
104
+ raise __dataclass__TypeError(f"Cannot overwrite attribute __setattr__ in class {__dataclass__cls.__name__}")
105
+ setattr(__dataclass__cls, '__setattr__', __setattr__)
106
+
107
+ __dataclass___delattr_frozen_fields = {
108
+ 'cm',
109
+ }
110
+
111
+ def __delattr__(self, name):
112
+ if (
113
+ type(self) is __dataclass__cls
114
+ or name in __dataclass___delattr_frozen_fields
115
+ ):
116
+ raise __dataclass__FrozenInstanceError(f"cannot delete field {name!r}")
117
+ super(__dataclass__cls, self).__delattr__(name)
118
+
119
+ __delattr__.__qualname__ = f"{__dataclass__cls.__qualname__}.__delattr__"
120
+ if '__delattr__' in __dataclass__cls.__dict__:
121
+ raise __dataclass__TypeError(f"Cannot overwrite attribute __delattr__ in class {__dataclass__cls.__name__}")
122
+ setattr(__dataclass__cls, '__delattr__', __delattr__)
123
+
124
+ def __hash__(self):
125
+ return hash((
126
+ self.cm,
127
+ ))
128
+
129
+ __hash__.__qualname__ = f"{__dataclass__cls.__qualname__}.__hash__"
130
+ setattr(__dataclass__cls, '__hash__', __hash__)
131
+
132
+ def __init__(
133
+ self,
134
+ cm: __dataclass__init__fields__0__annotation,
135
+ ) -> __dataclass__None:
136
+ __dataclass__object_setattr(self, 'cm', cm)
137
+
138
+ __init__.__qualname__ = f"{__dataclass__cls.__qualname__}.__init__"
139
+ if '__init__' in __dataclass__cls.__dict__:
140
+ raise __dataclass__TypeError(f"Cannot overwrite attribute __init__ in class {__dataclass__cls.__name__}")
141
+ setattr(__dataclass__cls, '__init__', __init__)
142
+
143
+ @__dataclass___recursive_repr()
144
+ def __repr__(self):
145
+ parts = []
146
+ parts.append(f"cm={self.cm!r}")
147
+ return (
148
+ f"{self.__class__.__qualname__}("
149
+ f"{', '.join(parts)}"
150
+ f")"
151
+ )
152
+
153
+ __repr__.__qualname__ = f"{__dataclass__cls.__qualname__}.__repr__"
154
+ if '__repr__' in __dataclass__cls.__dict__:
155
+ raise __dataclass__TypeError(f"Cannot overwrite attribute __repr__ in class {__dataclass__cls.__name__}")
156
+ setattr(__dataclass__cls, '__repr__', __repr__)
157
+
158
+ return _process_dataclass
159
+
160
+
161
+ @_register(
162
+ plan_repr=(
163
+ "Plans(tup=(CopyPlan(fields=('obj',)), EqPlan(fields=('obj',)), FrozenPlan(fields=('obj',), allow_dynamic_dunde"
164
+ "r_attrs=False), HashPlan(action='add', fields=('obj',), cache=False), InitPlan(fields=(InitPlan.Field(name='ob"
165
+ "j', annotation=OpRef(name='init.fields.0.annotation'), default=None, default_factory=None, init=True, override"
166
+ "=False, field_type=FieldType.INSTANCE, coerce=None, validate=None, check_type=None),), self_param='self', std_"
167
+ "params=('obj',), kw_only_params=(), frozen=True, slots=False, post_init_params=None, init_fns=(), validate_fns"
168
+ "=()), ReprPlan(fields=(ReprPlan.Field(name='obj', kw_only=False, fn=None),), id=False, terse=False, default_fn"
169
+ "=None)))"
170
+ ),
171
+ plan_repr_sha1='32f5b8178dfdf24f4db24e8d8cd63ebd10bf83f3',
172
+ op_ref_idents=(
173
+ '__dataclass__init__fields__0__annotation',
174
+ ),
175
+ cls_names=(
176
+ ('omlish.lifecycles', 'AsyncLifecycleManaged._Lifecycle'),
177
+ ('omlish.lifecycles', 'LifecycleManaged._Lifecycle'),
178
+ ),
179
+ )
180
+ def _process_dataclass__32f5b8178dfdf24f4db24e8d8cd63ebd10bf83f3():
181
+ def _process_dataclass(
182
+ *,
183
+ __dataclass__cls,
184
+ __dataclass__init__fields__0__annotation,
185
+ __dataclass__FieldFnValidationError, # noqa
186
+ __dataclass__FieldTypeValidationError, # noqa
187
+ __dataclass__FnValidationError, # noqa
188
+ __dataclass__FrozenInstanceError=dataclasses.FrozenInstanceError, # noqa
189
+ __dataclass__FunctionType=types.FunctionType, # noqa
190
+ __dataclass__HAS_DEFAULT_FACTORY=dataclasses._HAS_DEFAULT_FACTORY, # noqa
191
+ __dataclass__MISSING=dataclasses.MISSING, # noqa
192
+ __dataclass__None=None, # noqa
193
+ __dataclass__TypeError=TypeError, # noqa
194
+ __dataclass___recursive_repr=reprlib.recursive_repr, # noqa
195
+ __dataclass__isinstance=isinstance, # noqa
196
+ __dataclass__object_setattr=object.__setattr__, # noqa
197
+ __dataclass__property=property, # noqa
198
+ ):
199
+ def __copy__(self):
200
+ if self.__class__ is not __dataclass__cls:
201
+ raise TypeError(self)
202
+ return __dataclass__cls( # noqa
203
+ obj=self.obj,
204
+ )
205
+
206
+ __copy__.__qualname__ = f"{__dataclass__cls.__qualname__}.__copy__"
207
+ if '__copy__' in __dataclass__cls.__dict__:
208
+ raise __dataclass__TypeError(f"Cannot overwrite attribute __copy__ in class {__dataclass__cls.__name__}")
209
+ setattr(__dataclass__cls, '__copy__', __copy__)
210
+
211
+ def __eq__(self, other):
212
+ if self is other:
213
+ return True
214
+ if self.__class__ is not other.__class__:
215
+ return NotImplemented
216
+ return (
217
+ self.obj == other.obj
218
+ )
219
+
220
+ __eq__.__qualname__ = f"{__dataclass__cls.__qualname__}.__eq__"
221
+ if '__eq__' in __dataclass__cls.__dict__:
222
+ raise __dataclass__TypeError(f"Cannot overwrite attribute __eq__ in class {__dataclass__cls.__name__}")
223
+ setattr(__dataclass__cls, '__eq__', __eq__)
224
+
225
+ __dataclass___setattr_frozen_fields = {
226
+ 'obj',
227
+ }
228
+
229
+ def __setattr__(self, name, value):
230
+ if (
231
+ type(self) is __dataclass__cls
232
+ or name in __dataclass___setattr_frozen_fields
233
+ ):
234
+ raise __dataclass__FrozenInstanceError(f"cannot assign to field {name!r}")
235
+ super(__dataclass__cls, self).__setattr__(name, value)
236
+
237
+ __setattr__.__qualname__ = f"{__dataclass__cls.__qualname__}.__setattr__"
238
+ if '__setattr__' in __dataclass__cls.__dict__:
239
+ raise __dataclass__TypeError(f"Cannot overwrite attribute __setattr__ in class {__dataclass__cls.__name__}")
240
+ setattr(__dataclass__cls, '__setattr__', __setattr__)
241
+
242
+ __dataclass___delattr_frozen_fields = {
243
+ 'obj',
244
+ }
245
+
246
+ def __delattr__(self, name):
247
+ if (
248
+ type(self) is __dataclass__cls
249
+ or name in __dataclass___delattr_frozen_fields
250
+ ):
251
+ raise __dataclass__FrozenInstanceError(f"cannot delete field {name!r}")
252
+ super(__dataclass__cls, self).__delattr__(name)
253
+
254
+ __delattr__.__qualname__ = f"{__dataclass__cls.__qualname__}.__delattr__"
255
+ if '__delattr__' in __dataclass__cls.__dict__:
256
+ raise __dataclass__TypeError(f"Cannot overwrite attribute __delattr__ in class {__dataclass__cls.__name__}")
257
+ setattr(__dataclass__cls, '__delattr__', __delattr__)
258
+
259
+ def __hash__(self):
260
+ return hash((
261
+ self.obj,
262
+ ))
263
+
264
+ __hash__.__qualname__ = f"{__dataclass__cls.__qualname__}.__hash__"
265
+ setattr(__dataclass__cls, '__hash__', __hash__)
266
+
267
+ def __init__(
268
+ self,
269
+ obj: __dataclass__init__fields__0__annotation,
270
+ ) -> __dataclass__None:
271
+ __dataclass__object_setattr(self, 'obj', obj)
272
+
273
+ __init__.__qualname__ = f"{__dataclass__cls.__qualname__}.__init__"
274
+ if '__init__' in __dataclass__cls.__dict__:
275
+ raise __dataclass__TypeError(f"Cannot overwrite attribute __init__ in class {__dataclass__cls.__name__}")
276
+ setattr(__dataclass__cls, '__init__', __init__)
277
+
278
+ @__dataclass___recursive_repr()
279
+ def __repr__(self):
280
+ parts = []
281
+ parts.append(f"obj={self.obj!r}")
282
+ return (
283
+ f"{self.__class__.__qualname__}("
284
+ f"{', '.join(parts)}"
285
+ f")"
286
+ )
287
+
288
+ __repr__.__qualname__ = f"{__dataclass__cls.__qualname__}.__repr__"
289
+ if '__repr__' in __dataclass__cls.__dict__:
290
+ raise __dataclass__TypeError(f"Cannot overwrite attribute __repr__ in class {__dataclass__cls.__name__}")
291
+ setattr(__dataclass__cls, '__repr__', __repr__)
292
+
293
+ return _process_dataclass
294
+
295
+
296
+ @_register(
297
+ plan_repr=(
298
+ "Plans(tup=(CopyPlan(fields=('on_state', 'on_construct', 'on_start', 'on_stop', 'on_destroy')), EqPlan(fields=("
299
+ "'on_state', 'on_construct', 'on_start', 'on_stop', 'on_destroy')), FrozenPlan(fields=('on_state', 'on_construc"
300
+ "t', 'on_start', 'on_stop', 'on_destroy'), allow_dynamic_dunder_attrs=False), HashPlan(action='add', fields=('o"
301
+ "n_state', 'on_construct', 'on_start', 'on_stop', 'on_destroy'), cache=False), InitPlan(fields=(InitPlan.Field("
302
+ "name='on_state', annotation=OpRef(name='init.fields.0.annotation'), default=OpRef(name='init.fields.0.default'"
303
+ "), default_factory=None, init=True, override=False, field_type=FieldType.INSTANCE, coerce=None, validate=None,"
304
+ " check_type=None), InitPlan.Field(name='on_construct', annotation=OpRef(name='init.fields.1.annotation'), defa"
305
+ "ult=OpRef(name='init.fields.1.default'), default_factory=None, init=True, override=False, field_type=FieldType"
306
+ ".INSTANCE, coerce=None, validate=None, check_type=None), InitPlan.Field(name='on_start', annotation=OpRef(name"
307
+ "='init.fields.2.annotation'), default=OpRef(name='init.fields.2.default'), default_factory=None, init=True, ov"
308
+ "erride=False, field_type=FieldType.INSTANCE, coerce=None, validate=None, check_type=None), InitPlan.Field(name"
309
+ "='on_stop', annotation=OpRef(name='init.fields.3.annotation'), default=OpRef(name='init.fields.3.default'), de"
310
+ "fault_factory=None, init=True, override=False, field_type=FieldType.INSTANCE, coerce=None, validate=None, chec"
311
+ "k_type=None), InitPlan.Field(name='on_destroy', annotation=OpRef(name='init.fields.4.annotation'), default=OpR"
312
+ "ef(name='init.fields.4.default'), default_factory=None, init=True, override=False, field_type=FieldType.INSTAN"
313
+ "CE, coerce=None, validate=None, check_type=None)), self_param='self', std_params=(), kw_only_params=('on_state"
314
+ "', 'on_construct', 'on_start', 'on_stop', 'on_destroy'), frozen=True, slots=False, post_init_params=None, init"
315
+ "_fns=(), validate_fns=()), ReprPlan(fields=(ReprPlan.Field(name='on_state', kw_only=True, fn=None), ReprPlan.F"
316
+ "ield(name='on_construct', kw_only=True, fn=None), ReprPlan.Field(name='on_start', kw_only=True, fn=None), Repr"
317
+ "Plan.Field(name='on_stop', kw_only=True, fn=None), ReprPlan.Field(name='on_destroy', kw_only=True, fn=None)), "
318
+ "id=False, terse=False, default_fn=None)))"
319
+ ),
320
+ plan_repr_sha1='d177836dcedc950662bdf1c8a8d52e05fc91c5c7',
321
+ op_ref_idents=(
322
+ '__dataclass__init__fields__0__annotation',
323
+ '__dataclass__init__fields__0__default',
324
+ '__dataclass__init__fields__1__annotation',
325
+ '__dataclass__init__fields__1__default',
326
+ '__dataclass__init__fields__2__annotation',
327
+ '__dataclass__init__fields__2__default',
328
+ '__dataclass__init__fields__3__annotation',
329
+ '__dataclass__init__fields__3__default',
330
+ '__dataclass__init__fields__4__annotation',
331
+ '__dataclass__init__fields__4__default',
332
+ ),
333
+ cls_names=(
334
+ ('omlish.lifecycles', 'CallbackAsyncLifecycle'),
335
+ ('omlish.lifecycles', 'CallbackLifecycle'),
336
+ ),
337
+ )
338
+ def _process_dataclass__d177836dcedc950662bdf1c8a8d52e05fc91c5c7():
339
+ def _process_dataclass(
340
+ *,
341
+ __dataclass__cls,
342
+ __dataclass__init__fields__0__annotation,
343
+ __dataclass__init__fields__0__default,
344
+ __dataclass__init__fields__1__annotation,
345
+ __dataclass__init__fields__1__default,
346
+ __dataclass__init__fields__2__annotation,
347
+ __dataclass__init__fields__2__default,
348
+ __dataclass__init__fields__3__annotation,
349
+ __dataclass__init__fields__3__default,
350
+ __dataclass__init__fields__4__annotation,
351
+ __dataclass__init__fields__4__default,
352
+ __dataclass__FieldFnValidationError, # noqa
353
+ __dataclass__FieldTypeValidationError, # noqa
354
+ __dataclass__FnValidationError, # noqa
355
+ __dataclass__FrozenInstanceError=dataclasses.FrozenInstanceError, # noqa
356
+ __dataclass__FunctionType=types.FunctionType, # noqa
357
+ __dataclass__HAS_DEFAULT_FACTORY=dataclasses._HAS_DEFAULT_FACTORY, # noqa
358
+ __dataclass__MISSING=dataclasses.MISSING, # noqa
359
+ __dataclass__None=None, # noqa
360
+ __dataclass__TypeError=TypeError, # noqa
361
+ __dataclass___recursive_repr=reprlib.recursive_repr, # noqa
362
+ __dataclass__isinstance=isinstance, # noqa
363
+ __dataclass__object_setattr=object.__setattr__, # noqa
364
+ __dataclass__property=property, # noqa
365
+ ):
366
+ def __copy__(self):
367
+ if self.__class__ is not __dataclass__cls:
368
+ raise TypeError(self)
369
+ return __dataclass__cls( # noqa
370
+ on_state=self.on_state,
371
+ on_construct=self.on_construct,
372
+ on_start=self.on_start,
373
+ on_stop=self.on_stop,
374
+ on_destroy=self.on_destroy,
375
+ )
376
+
377
+ __copy__.__qualname__ = f"{__dataclass__cls.__qualname__}.__copy__"
378
+ if '__copy__' in __dataclass__cls.__dict__:
379
+ raise __dataclass__TypeError(f"Cannot overwrite attribute __copy__ in class {__dataclass__cls.__name__}")
380
+ setattr(__dataclass__cls, '__copy__', __copy__)
381
+
382
+ def __eq__(self, other):
383
+ if self is other:
384
+ return True
385
+ if self.__class__ is not other.__class__:
386
+ return NotImplemented
387
+ return (
388
+ self.on_state == other.on_state and
389
+ self.on_construct == other.on_construct and
390
+ self.on_start == other.on_start and
391
+ self.on_stop == other.on_stop and
392
+ self.on_destroy == other.on_destroy
393
+ )
394
+
395
+ __eq__.__qualname__ = f"{__dataclass__cls.__qualname__}.__eq__"
396
+ if '__eq__' in __dataclass__cls.__dict__:
397
+ raise __dataclass__TypeError(f"Cannot overwrite attribute __eq__ in class {__dataclass__cls.__name__}")
398
+ setattr(__dataclass__cls, '__eq__', __eq__)
399
+
400
+ __dataclass___setattr_frozen_fields = {
401
+ 'on_state',
402
+ 'on_construct',
403
+ 'on_start',
404
+ 'on_stop',
405
+ 'on_destroy',
406
+ }
407
+
408
+ def __setattr__(self, name, value):
409
+ if (
410
+ type(self) is __dataclass__cls
411
+ or name in __dataclass___setattr_frozen_fields
412
+ ):
413
+ raise __dataclass__FrozenInstanceError(f"cannot assign to field {name!r}")
414
+ super(__dataclass__cls, self).__setattr__(name, value)
415
+
416
+ __setattr__.__qualname__ = f"{__dataclass__cls.__qualname__}.__setattr__"
417
+ if '__setattr__' in __dataclass__cls.__dict__:
418
+ raise __dataclass__TypeError(f"Cannot overwrite attribute __setattr__ in class {__dataclass__cls.__name__}")
419
+ setattr(__dataclass__cls, '__setattr__', __setattr__)
420
+
421
+ __dataclass___delattr_frozen_fields = {
422
+ 'on_state',
423
+ 'on_construct',
424
+ 'on_start',
425
+ 'on_stop',
426
+ 'on_destroy',
427
+ }
428
+
429
+ def __delattr__(self, name):
430
+ if (
431
+ type(self) is __dataclass__cls
432
+ or name in __dataclass___delattr_frozen_fields
433
+ ):
434
+ raise __dataclass__FrozenInstanceError(f"cannot delete field {name!r}")
435
+ super(__dataclass__cls, self).__delattr__(name)
436
+
437
+ __delattr__.__qualname__ = f"{__dataclass__cls.__qualname__}.__delattr__"
438
+ if '__delattr__' in __dataclass__cls.__dict__:
439
+ raise __dataclass__TypeError(f"Cannot overwrite attribute __delattr__ in class {__dataclass__cls.__name__}")
440
+ setattr(__dataclass__cls, '__delattr__', __delattr__)
441
+
442
+ def __hash__(self):
443
+ return hash((
444
+ self.on_state,
445
+ self.on_construct,
446
+ self.on_start,
447
+ self.on_stop,
448
+ self.on_destroy,
449
+ ))
450
+
451
+ __hash__.__qualname__ = f"{__dataclass__cls.__qualname__}.__hash__"
452
+ setattr(__dataclass__cls, '__hash__', __hash__)
453
+
454
+ def __init__(
455
+ self,
456
+ *,
457
+ on_state: __dataclass__init__fields__0__annotation = __dataclass__init__fields__0__default,
458
+ on_construct: __dataclass__init__fields__1__annotation = __dataclass__init__fields__1__default,
459
+ on_start: __dataclass__init__fields__2__annotation = __dataclass__init__fields__2__default,
460
+ on_stop: __dataclass__init__fields__3__annotation = __dataclass__init__fields__3__default,
461
+ on_destroy: __dataclass__init__fields__4__annotation = __dataclass__init__fields__4__default,
462
+ ) -> __dataclass__None:
463
+ __dataclass__object_setattr(self, 'on_state', on_state)
464
+ __dataclass__object_setattr(self, 'on_construct', on_construct)
465
+ __dataclass__object_setattr(self, 'on_start', on_start)
466
+ __dataclass__object_setattr(self, 'on_stop', on_stop)
467
+ __dataclass__object_setattr(self, 'on_destroy', on_destroy)
468
+
469
+ __init__.__qualname__ = f"{__dataclass__cls.__qualname__}.__init__"
470
+ if '__init__' in __dataclass__cls.__dict__:
471
+ raise __dataclass__TypeError(f"Cannot overwrite attribute __init__ in class {__dataclass__cls.__name__}")
472
+ setattr(__dataclass__cls, '__init__', __init__)
473
+
474
+ @__dataclass___recursive_repr()
475
+ def __repr__(self):
476
+ parts = []
477
+ parts.append(f"on_state={self.on_state!r}")
478
+ parts.append(f"on_construct={self.on_construct!r}")
479
+ parts.append(f"on_start={self.on_start!r}")
480
+ parts.append(f"on_stop={self.on_stop!r}")
481
+ parts.append(f"on_destroy={self.on_destroy!r}")
482
+ return (
483
+ f"{self.__class__.__qualname__}("
484
+ f"{', '.join(parts)}"
485
+ f")"
486
+ )
487
+
488
+ __repr__.__qualname__ = f"{__dataclass__cls.__qualname__}.__repr__"
489
+ if '__repr__' in __dataclass__cls.__dict__:
490
+ raise __dataclass__TypeError(f"Cannot overwrite attribute __repr__ in class {__dataclass__cls.__name__}")
491
+ setattr(__dataclass__cls, '__repr__', __repr__)
492
+
493
+ return _process_dataclass
494
+
495
+
496
+ @_register(
497
+ plan_repr=(
498
+ "Plans(tup=(CopyPlan(fields=('controller', 'dependencies', 'dependents')), FrozenPlan(fields=('controller', 'de"
499
+ "pendencies', 'dependents'), allow_dynamic_dunder_attrs=False), InitPlan(fields=(InitPlan.Field(name='controlle"
500
+ "r', annotation=OpRef(name='init.fields.0.annotation'), default=None, default_factory=None, init=True, override"
501
+ "=False, field_type=FieldType.INSTANCE, coerce=None, validate=None, check_type=None), InitPlan.Field(name='depe"
502
+ "ndencies', annotation=OpRef(name='init.fields.1.annotation'), default=None, default_factory=OpRef(name='init.f"
503
+ "ields.1.default_factory'), init=True, override=False, field_type=FieldType.INSTANCE, coerce=None, validate=Non"
504
+ "e, check_type=None), InitPlan.Field(name='dependents', annotation=OpRef(name='init.fields.2.annotation'), defa"
505
+ "ult=None, default_factory=OpRef(name='init.fields.2.default_factory'), init=True, override=False, field_type=F"
506
+ "ieldType.INSTANCE, coerce=None, validate=None, check_type=None)), self_param='self', std_params=('controller',"
507
+ " 'dependencies', 'dependents'), kw_only_params=(), frozen=True, slots=False, post_init_params=None, init_fns=("
508
+ "), validate_fns=()), ReprPlan(fields=(ReprPlan.Field(name='controller', kw_only=False, fn=None), ReprPlan.Fiel"
509
+ "d(name='dependencies', kw_only=False, fn=None), ReprPlan.Field(name='dependents', kw_only=False, fn=None)), id"
510
+ "=False, terse=False, default_fn=None)))"
511
+ ),
512
+ plan_repr_sha1='440e63ab60e5c95ef453ad0e63ffc0977bb48371',
513
+ op_ref_idents=(
514
+ '__dataclass__init__fields__0__annotation',
515
+ '__dataclass__init__fields__1__annotation',
516
+ '__dataclass__init__fields__1__default_factory',
517
+ '__dataclass__init__fields__2__annotation',
518
+ '__dataclass__init__fields__2__default_factory',
519
+ ),
520
+ cls_names=(
521
+ ('omlish.lifecycles', 'LifecycleManagerEntry'),
522
+ ),
523
+ )
524
+ def _process_dataclass__440e63ab60e5c95ef453ad0e63ffc0977bb48371():
525
+ def _process_dataclass(
526
+ *,
527
+ __dataclass__cls,
528
+ __dataclass__init__fields__0__annotation,
529
+ __dataclass__init__fields__1__annotation,
530
+ __dataclass__init__fields__1__default_factory,
531
+ __dataclass__init__fields__2__annotation,
532
+ __dataclass__init__fields__2__default_factory,
533
+ __dataclass__FieldFnValidationError, # noqa
534
+ __dataclass__FieldTypeValidationError, # noqa
535
+ __dataclass__FnValidationError, # noqa
536
+ __dataclass__FrozenInstanceError=dataclasses.FrozenInstanceError, # noqa
537
+ __dataclass__FunctionType=types.FunctionType, # noqa
538
+ __dataclass__HAS_DEFAULT_FACTORY=dataclasses._HAS_DEFAULT_FACTORY, # noqa
539
+ __dataclass__MISSING=dataclasses.MISSING, # noqa
540
+ __dataclass__None=None, # noqa
541
+ __dataclass__TypeError=TypeError, # noqa
542
+ __dataclass___recursive_repr=reprlib.recursive_repr, # noqa
543
+ __dataclass__isinstance=isinstance, # noqa
544
+ __dataclass__object_setattr=object.__setattr__, # noqa
545
+ __dataclass__property=property, # noqa
546
+ ):
547
+ def __copy__(self):
548
+ if self.__class__ is not __dataclass__cls:
549
+ raise TypeError(self)
550
+ return __dataclass__cls( # noqa
551
+ controller=self.controller,
552
+ dependencies=self.dependencies,
553
+ dependents=self.dependents,
554
+ )
555
+
556
+ __copy__.__qualname__ = f"{__dataclass__cls.__qualname__}.__copy__"
557
+ if '__copy__' in __dataclass__cls.__dict__:
558
+ raise __dataclass__TypeError(f"Cannot overwrite attribute __copy__ in class {__dataclass__cls.__name__}")
559
+ setattr(__dataclass__cls, '__copy__', __copy__)
560
+
561
+ __dataclass___setattr_frozen_fields = {
562
+ 'controller',
563
+ 'dependencies',
564
+ 'dependents',
565
+ }
566
+
567
+ def __setattr__(self, name, value):
568
+ if (
569
+ type(self) is __dataclass__cls
570
+ or name in __dataclass___setattr_frozen_fields
571
+ ):
572
+ raise __dataclass__FrozenInstanceError(f"cannot assign to field {name!r}")
573
+ super(__dataclass__cls, self).__setattr__(name, value)
574
+
575
+ __setattr__.__qualname__ = f"{__dataclass__cls.__qualname__}.__setattr__"
576
+ if '__setattr__' in __dataclass__cls.__dict__:
577
+ raise __dataclass__TypeError(f"Cannot overwrite attribute __setattr__ in class {__dataclass__cls.__name__}")
578
+ setattr(__dataclass__cls, '__setattr__', __setattr__)
579
+
580
+ __dataclass___delattr_frozen_fields = {
581
+ 'controller',
582
+ 'dependencies',
583
+ 'dependents',
584
+ }
585
+
586
+ def __delattr__(self, name):
587
+ if (
588
+ type(self) is __dataclass__cls
589
+ or name in __dataclass___delattr_frozen_fields
590
+ ):
591
+ raise __dataclass__FrozenInstanceError(f"cannot delete field {name!r}")
592
+ super(__dataclass__cls, self).__delattr__(name)
593
+
594
+ __delattr__.__qualname__ = f"{__dataclass__cls.__qualname__}.__delattr__"
595
+ if '__delattr__' in __dataclass__cls.__dict__:
596
+ raise __dataclass__TypeError(f"Cannot overwrite attribute __delattr__ in class {__dataclass__cls.__name__}")
597
+ setattr(__dataclass__cls, '__delattr__', __delattr__)
598
+
599
+ def __init__(
600
+ self,
601
+ controller: __dataclass__init__fields__0__annotation,
602
+ dependencies: __dataclass__init__fields__1__annotation = __dataclass__HAS_DEFAULT_FACTORY,
603
+ dependents: __dataclass__init__fields__2__annotation = __dataclass__HAS_DEFAULT_FACTORY,
604
+ ) -> __dataclass__None:
605
+ if dependencies is __dataclass__HAS_DEFAULT_FACTORY:
606
+ dependencies = __dataclass__init__fields__1__default_factory()
607
+ if dependents is __dataclass__HAS_DEFAULT_FACTORY:
608
+ dependents = __dataclass__init__fields__2__default_factory()
609
+ __dataclass__object_setattr(self, 'controller', controller)
610
+ __dataclass__object_setattr(self, 'dependencies', dependencies)
611
+ __dataclass__object_setattr(self, 'dependents', dependents)
612
+
613
+ __init__.__qualname__ = f"{__dataclass__cls.__qualname__}.__init__"
614
+ if '__init__' in __dataclass__cls.__dict__:
615
+ raise __dataclass__TypeError(f"Cannot overwrite attribute __init__ in class {__dataclass__cls.__name__}")
616
+ setattr(__dataclass__cls, '__init__', __init__)
617
+
618
+ @__dataclass___recursive_repr()
619
+ def __repr__(self):
620
+ parts = []
621
+ parts.append(f"controller={self.controller!r}")
622
+ parts.append(f"dependencies={self.dependencies!r}")
623
+ parts.append(f"dependents={self.dependents!r}")
624
+ return (
625
+ f"{self.__class__.__qualname__}("
626
+ f"{', '.join(parts)}"
627
+ f")"
628
+ )
629
+
630
+ __repr__.__qualname__ = f"{__dataclass__cls.__qualname__}.__repr__"
631
+ if '__repr__' in __dataclass__cls.__dict__:
632
+ raise __dataclass__TypeError(f"Cannot overwrite attribute __repr__ in class {__dataclass__cls.__name__}")
633
+ setattr(__dataclass__cls, '__repr__', __repr__)
634
+
635
+ return _process_dataclass
636
+
637
+
638
+ @_register(
639
+ plan_repr=(
640
+ "Plans(tup=(CopyPlan(fields=('name', 'phase', 'is_failed')), FrozenPlan(fields=('name', 'phase', 'is_failed'), "
641
+ "allow_dynamic_dunder_attrs=False), InitPlan(fields=(InitPlan.Field(name='name', annotation=OpRef(name='init.fi"
642
+ "elds.0.annotation'), default=None, default_factory=None, init=True, override=False, field_type=FieldType.INSTA"
643
+ "NCE, coerce=None, validate=None, check_type=None), InitPlan.Field(name='phase', annotation=OpRef(name='init.fi"
644
+ "elds.1.annotation'), default=None, default_factory=None, init=True, override=False, field_type=FieldType.INSTA"
645
+ "NCE, coerce=None, validate=None, check_type=None), InitPlan.Field(name='is_failed', annotation=OpRef(name='ini"
646
+ "t.fields.2.annotation'), default=None, default_factory=None, init=True, override=False, field_type=FieldType.I"
647
+ "NSTANCE, coerce=None, validate=None, check_type=None)), self_param='self', std_params=('name', 'phase', 'is_fa"
648
+ "iled'), kw_only_params=(), frozen=True, slots=False, post_init_params=None, init_fns=(), validate_fns=()), Rep"
649
+ "rPlan(fields=(ReprPlan.Field(name='name', kw_only=False, fn=None), ReprPlan.Field(name='phase', kw_only=False,"
650
+ " fn=None), ReprPlan.Field(name='is_failed', kw_only=False, fn=None)), id=False, terse=False, default_fn=None))"
651
+ ")"
652
+ ),
653
+ plan_repr_sha1='6c47afef6781ac6bd88758815660ccbfefe8540e',
654
+ op_ref_idents=(
655
+ '__dataclass__init__fields__0__annotation',
656
+ '__dataclass__init__fields__1__annotation',
657
+ '__dataclass__init__fields__2__annotation',
658
+ ),
659
+ cls_names=(
660
+ ('omlish.lifecycles', 'LifecycleState'),
661
+ ),
662
+ )
663
+ def _process_dataclass__6c47afef6781ac6bd88758815660ccbfefe8540e():
664
+ def _process_dataclass(
665
+ *,
666
+ __dataclass__cls,
667
+ __dataclass__init__fields__0__annotation,
668
+ __dataclass__init__fields__1__annotation,
669
+ __dataclass__init__fields__2__annotation,
670
+ __dataclass__FieldFnValidationError, # noqa
671
+ __dataclass__FieldTypeValidationError, # noqa
672
+ __dataclass__FnValidationError, # noqa
673
+ __dataclass__FrozenInstanceError=dataclasses.FrozenInstanceError, # noqa
674
+ __dataclass__FunctionType=types.FunctionType, # noqa
675
+ __dataclass__HAS_DEFAULT_FACTORY=dataclasses._HAS_DEFAULT_FACTORY, # noqa
676
+ __dataclass__MISSING=dataclasses.MISSING, # noqa
677
+ __dataclass__None=None, # noqa
678
+ __dataclass__TypeError=TypeError, # noqa
679
+ __dataclass___recursive_repr=reprlib.recursive_repr, # noqa
680
+ __dataclass__isinstance=isinstance, # noqa
681
+ __dataclass__object_setattr=object.__setattr__, # noqa
682
+ __dataclass__property=property, # noqa
683
+ ):
684
+ def __copy__(self):
685
+ if self.__class__ is not __dataclass__cls:
686
+ raise TypeError(self)
687
+ return __dataclass__cls( # noqa
688
+ name=self.name,
689
+ phase=self.phase,
690
+ is_failed=self.is_failed,
691
+ )
692
+
693
+ __copy__.__qualname__ = f"{__dataclass__cls.__qualname__}.__copy__"
694
+ if '__copy__' in __dataclass__cls.__dict__:
695
+ raise __dataclass__TypeError(f"Cannot overwrite attribute __copy__ in class {__dataclass__cls.__name__}")
696
+ setattr(__dataclass__cls, '__copy__', __copy__)
697
+
698
+ __dataclass___setattr_frozen_fields = {
699
+ 'name',
700
+ 'phase',
701
+ 'is_failed',
702
+ }
703
+
704
+ def __setattr__(self, name, value):
705
+ if (
706
+ type(self) is __dataclass__cls
707
+ or name in __dataclass___setattr_frozen_fields
708
+ ):
709
+ raise __dataclass__FrozenInstanceError(f"cannot assign to field {name!r}")
710
+ super(__dataclass__cls, self).__setattr__(name, value)
711
+
712
+ __setattr__.__qualname__ = f"{__dataclass__cls.__qualname__}.__setattr__"
713
+ if '__setattr__' in __dataclass__cls.__dict__:
714
+ raise __dataclass__TypeError(f"Cannot overwrite attribute __setattr__ in class {__dataclass__cls.__name__}")
715
+ setattr(__dataclass__cls, '__setattr__', __setattr__)
716
+
717
+ __dataclass___delattr_frozen_fields = {
718
+ 'name',
719
+ 'phase',
720
+ 'is_failed',
721
+ }
722
+
723
+ def __delattr__(self, name):
724
+ if (
725
+ type(self) is __dataclass__cls
726
+ or name in __dataclass___delattr_frozen_fields
727
+ ):
728
+ raise __dataclass__FrozenInstanceError(f"cannot delete field {name!r}")
729
+ super(__dataclass__cls, self).__delattr__(name)
730
+
731
+ __delattr__.__qualname__ = f"{__dataclass__cls.__qualname__}.__delattr__"
732
+ if '__delattr__' in __dataclass__cls.__dict__:
733
+ raise __dataclass__TypeError(f"Cannot overwrite attribute __delattr__ in class {__dataclass__cls.__name__}")
734
+ setattr(__dataclass__cls, '__delattr__', __delattr__)
735
+
736
+ def __init__(
737
+ self,
738
+ name: __dataclass__init__fields__0__annotation,
739
+ phase: __dataclass__init__fields__1__annotation,
740
+ is_failed: __dataclass__init__fields__2__annotation,
741
+ ) -> __dataclass__None:
742
+ __dataclass__object_setattr(self, 'name', name)
743
+ __dataclass__object_setattr(self, 'phase', phase)
744
+ __dataclass__object_setattr(self, 'is_failed', is_failed)
745
+
746
+ __init__.__qualname__ = f"{__dataclass__cls.__qualname__}.__init__"
747
+ if '__init__' in __dataclass__cls.__dict__:
748
+ raise __dataclass__TypeError(f"Cannot overwrite attribute __init__ in class {__dataclass__cls.__name__}")
749
+ setattr(__dataclass__cls, '__init__', __init__)
750
+
751
+ @__dataclass___recursive_repr()
752
+ def __repr__(self):
753
+ parts = []
754
+ parts.append(f"name={self.name!r}")
755
+ parts.append(f"phase={self.phase!r}")
756
+ parts.append(f"is_failed={self.is_failed!r}")
757
+ return (
758
+ f"{self.__class__.__qualname__}("
759
+ f"{', '.join(parts)}"
760
+ f")"
761
+ )
762
+
763
+ __repr__.__qualname__ = f"{__dataclass__cls.__qualname__}.__repr__"
764
+ if '__repr__' in __dataclass__cls.__dict__:
765
+ raise __dataclass__TypeError(f"Cannot overwrite attribute __repr__ in class {__dataclass__cls.__name__}")
766
+ setattr(__dataclass__cls, '__repr__', __repr__)
767
+
768
+ return _process_dataclass
769
+
770
+
771
+ @_register(
772
+ plan_repr=(
773
+ "Plans(tup=(CopyPlan(fields=('old', 'new_intermediate', 'new_failed', 'new_succeeded')), EqPlan(fields=('old', "
774
+ "'new_intermediate', 'new_failed', 'new_succeeded')), FrozenPlan(fields=('old', 'new_intermediate', 'new_failed"
775
+ "', 'new_succeeded'), allow_dynamic_dunder_attrs=False), HashPlan(action='add', fields=('old', 'new_intermediat"
776
+ "e', 'new_failed', 'new_succeeded'), cache=False), InitPlan(fields=(InitPlan.Field(name='old', annotation=OpRef"
777
+ "(name='init.fields.0.annotation'), default=None, default_factory=None, init=True, override=False, field_type=F"
778
+ "ieldType.INSTANCE, coerce=None, validate=None, check_type=None), InitPlan.Field(name='new_intermediate', annot"
779
+ "ation=OpRef(name='init.fields.1.annotation'), default=None, default_factory=None, init=True, override=False, f"
780
+ "ield_type=FieldType.INSTANCE, coerce=None, validate=None, check_type=None), InitPlan.Field(name='new_failed', "
781
+ "annotation=OpRef(name='init.fields.2.annotation'), default=None, default_factory=None, init=True, override=Fal"
782
+ "se, field_type=FieldType.INSTANCE, coerce=None, validate=None, check_type=None), InitPlan.Field(name='new_succ"
783
+ "eeded', annotation=OpRef(name='init.fields.3.annotation'), default=None, default_factory=None, init=True, over"
784
+ "ride=False, field_type=FieldType.INSTANCE, coerce=None, validate=None, check_type=None)), self_param='self', s"
785
+ "td_params=('old', 'new_intermediate', 'new_failed', 'new_succeeded'), kw_only_params=(), frozen=True, slots=Fa"
786
+ "lse, post_init_params=(), init_fns=(), validate_fns=()), ReprPlan(fields=(ReprPlan.Field(name='old', kw_only=F"
787
+ "alse, fn=None), ReprPlan.Field(name='new_intermediate', kw_only=False, fn=None), ReprPlan.Field(name='new_fail"
788
+ "ed', kw_only=False, fn=None), ReprPlan.Field(name='new_succeeded', kw_only=False, fn=None)), id=False, terse=F"
789
+ "alse, default_fn=None)))"
790
+ ),
791
+ plan_repr_sha1='ebef99260c9b05bfd28fc9433dcc32af80493f10',
792
+ op_ref_idents=(
793
+ '__dataclass__init__fields__0__annotation',
794
+ '__dataclass__init__fields__1__annotation',
795
+ '__dataclass__init__fields__2__annotation',
796
+ '__dataclass__init__fields__3__annotation',
797
+ ),
798
+ cls_names=(
799
+ ('omlish.lifecycles', 'LifecycleTransition'),
800
+ ),
801
+ )
802
+ def _process_dataclass__ebef99260c9b05bfd28fc9433dcc32af80493f10():
803
+ def _process_dataclass(
804
+ *,
805
+ __dataclass__cls,
806
+ __dataclass__init__fields__0__annotation,
807
+ __dataclass__init__fields__1__annotation,
808
+ __dataclass__init__fields__2__annotation,
809
+ __dataclass__init__fields__3__annotation,
810
+ __dataclass__FieldFnValidationError, # noqa
811
+ __dataclass__FieldTypeValidationError, # noqa
812
+ __dataclass__FnValidationError, # noqa
813
+ __dataclass__FrozenInstanceError=dataclasses.FrozenInstanceError, # noqa
814
+ __dataclass__FunctionType=types.FunctionType, # noqa
815
+ __dataclass__HAS_DEFAULT_FACTORY=dataclasses._HAS_DEFAULT_FACTORY, # noqa
816
+ __dataclass__MISSING=dataclasses.MISSING, # noqa
817
+ __dataclass__None=None, # noqa
818
+ __dataclass__TypeError=TypeError, # noqa
819
+ __dataclass___recursive_repr=reprlib.recursive_repr, # noqa
820
+ __dataclass__isinstance=isinstance, # noqa
821
+ __dataclass__object_setattr=object.__setattr__, # noqa
822
+ __dataclass__property=property, # noqa
823
+ ):
824
+ def __copy__(self):
825
+ if self.__class__ is not __dataclass__cls:
826
+ raise TypeError(self)
827
+ return __dataclass__cls( # noqa
828
+ old=self.old,
829
+ new_intermediate=self.new_intermediate,
830
+ new_failed=self.new_failed,
831
+ new_succeeded=self.new_succeeded,
832
+ )
833
+
834
+ __copy__.__qualname__ = f"{__dataclass__cls.__qualname__}.__copy__"
835
+ if '__copy__' in __dataclass__cls.__dict__:
836
+ raise __dataclass__TypeError(f"Cannot overwrite attribute __copy__ in class {__dataclass__cls.__name__}")
837
+ setattr(__dataclass__cls, '__copy__', __copy__)
838
+
839
+ def __eq__(self, other):
840
+ if self is other:
841
+ return True
842
+ if self.__class__ is not other.__class__:
843
+ return NotImplemented
844
+ return (
845
+ self.old == other.old and
846
+ self.new_intermediate == other.new_intermediate and
847
+ self.new_failed == other.new_failed and
848
+ self.new_succeeded == other.new_succeeded
849
+ )
850
+
851
+ __eq__.__qualname__ = f"{__dataclass__cls.__qualname__}.__eq__"
852
+ if '__eq__' in __dataclass__cls.__dict__:
853
+ raise __dataclass__TypeError(f"Cannot overwrite attribute __eq__ in class {__dataclass__cls.__name__}")
854
+ setattr(__dataclass__cls, '__eq__', __eq__)
855
+
856
+ __dataclass___setattr_frozen_fields = {
857
+ 'old',
858
+ 'new_intermediate',
859
+ 'new_failed',
860
+ 'new_succeeded',
861
+ }
862
+
863
+ def __setattr__(self, name, value):
864
+ if (
865
+ type(self) is __dataclass__cls
866
+ or name in __dataclass___setattr_frozen_fields
867
+ ):
868
+ raise __dataclass__FrozenInstanceError(f"cannot assign to field {name!r}")
869
+ super(__dataclass__cls, self).__setattr__(name, value)
870
+
871
+ __setattr__.__qualname__ = f"{__dataclass__cls.__qualname__}.__setattr__"
872
+ if '__setattr__' in __dataclass__cls.__dict__:
873
+ raise __dataclass__TypeError(f"Cannot overwrite attribute __setattr__ in class {__dataclass__cls.__name__}")
874
+ setattr(__dataclass__cls, '__setattr__', __setattr__)
875
+
876
+ __dataclass___delattr_frozen_fields = {
877
+ 'old',
878
+ 'new_intermediate',
879
+ 'new_failed',
880
+ 'new_succeeded',
881
+ }
882
+
883
+ def __delattr__(self, name):
884
+ if (
885
+ type(self) is __dataclass__cls
886
+ or name in __dataclass___delattr_frozen_fields
887
+ ):
888
+ raise __dataclass__FrozenInstanceError(f"cannot delete field {name!r}")
889
+ super(__dataclass__cls, self).__delattr__(name)
890
+
891
+ __delattr__.__qualname__ = f"{__dataclass__cls.__qualname__}.__delattr__"
892
+ if '__delattr__' in __dataclass__cls.__dict__:
893
+ raise __dataclass__TypeError(f"Cannot overwrite attribute __delattr__ in class {__dataclass__cls.__name__}")
894
+ setattr(__dataclass__cls, '__delattr__', __delattr__)
895
+
896
+ def __hash__(self):
897
+ return hash((
898
+ self.old,
899
+ self.new_intermediate,
900
+ self.new_failed,
901
+ self.new_succeeded,
902
+ ))
903
+
904
+ __hash__.__qualname__ = f"{__dataclass__cls.__qualname__}.__hash__"
905
+ setattr(__dataclass__cls, '__hash__', __hash__)
906
+
907
+ def __init__(
908
+ self,
909
+ old: __dataclass__init__fields__0__annotation,
910
+ new_intermediate: __dataclass__init__fields__1__annotation,
911
+ new_failed: __dataclass__init__fields__2__annotation,
912
+ new_succeeded: __dataclass__init__fields__3__annotation,
913
+ ) -> __dataclass__None:
914
+ __dataclass__object_setattr(self, 'old', old)
915
+ __dataclass__object_setattr(self, 'new_intermediate', new_intermediate)
916
+ __dataclass__object_setattr(self, 'new_failed', new_failed)
917
+ __dataclass__object_setattr(self, 'new_succeeded', new_succeeded)
918
+ self.__post_init__()
919
+
920
+ __init__.__qualname__ = f"{__dataclass__cls.__qualname__}.__init__"
921
+ if '__init__' in __dataclass__cls.__dict__:
922
+ raise __dataclass__TypeError(f"Cannot overwrite attribute __init__ in class {__dataclass__cls.__name__}")
923
+ setattr(__dataclass__cls, '__init__', __init__)
924
+
925
+ @__dataclass___recursive_repr()
926
+ def __repr__(self):
927
+ parts = []
928
+ parts.append(f"old={self.old!r}")
929
+ parts.append(f"new_intermediate={self.new_intermediate!r}")
930
+ parts.append(f"new_failed={self.new_failed!r}")
931
+ parts.append(f"new_succeeded={self.new_succeeded!r}")
932
+ return (
933
+ f"{self.__class__.__qualname__}("
934
+ f"{', '.join(parts)}"
935
+ f")"
936
+ )
937
+
938
+ __repr__.__qualname__ = f"{__dataclass__cls.__qualname__}.__repr__"
939
+ if '__repr__' in __dataclass__cls.__dict__:
940
+ raise __dataclass__TypeError(f"Cannot overwrite attribute __repr__ in class {__dataclass__cls.__name__}")
941
+ setattr(__dataclass__cls, '__repr__', __repr__)
942
+
943
+ return _process_dataclass
944
+
945
+
946
+ @_register(
947
+ plan_repr=(
948
+ "Plans(tup=(CopyPlan(fields=('lifecycle',)), EqPlan(fields=('lifecycle',)), FrozenPlan(fields=('lifecycle',), a"
949
+ "llow_dynamic_dunder_attrs=False), HashPlan(action='add', fields=('lifecycle',), cache=False), InitPlan(fields="
950
+ "(InitPlan.Field(name='lifecycle', annotation=OpRef(name='init.fields.0.annotation'), default=None, default_fac"
951
+ "tory=None, init=True, override=False, field_type=FieldType.INSTANCE, coerce=None, validate=None, check_type=No"
952
+ "ne),), self_param='self', std_params=('lifecycle',), kw_only_params=(), frozen=True, slots=False, post_init_pa"
953
+ "rams=None, init_fns=(), validate_fns=()), ReprPlan(fields=(ReprPlan.Field(name='lifecycle', kw_only=False, fn="
954
+ "None),), id=False, terse=False, default_fn=None)))"
955
+ ),
956
+ plan_repr_sha1='375fd7fd537e2cfb878109217fe4c57607b10510',
957
+ op_ref_idents=(
958
+ '__dataclass__init__fields__0__annotation',
959
+ ),
960
+ cls_names=(
961
+ ('omlish.lifecycles', '_AsyncToSyncLifecycle'),
962
+ ('omlish.lifecycles', '_SyncToAsyncLifecycle'),
963
+ ),
964
+ )
965
+ def _process_dataclass__375fd7fd537e2cfb878109217fe4c57607b10510():
966
+ def _process_dataclass(
967
+ *,
968
+ __dataclass__cls,
969
+ __dataclass__init__fields__0__annotation,
970
+ __dataclass__FieldFnValidationError, # noqa
971
+ __dataclass__FieldTypeValidationError, # noqa
972
+ __dataclass__FnValidationError, # noqa
973
+ __dataclass__FrozenInstanceError=dataclasses.FrozenInstanceError, # noqa
974
+ __dataclass__FunctionType=types.FunctionType, # noqa
975
+ __dataclass__HAS_DEFAULT_FACTORY=dataclasses._HAS_DEFAULT_FACTORY, # noqa
976
+ __dataclass__MISSING=dataclasses.MISSING, # noqa
977
+ __dataclass__None=None, # noqa
978
+ __dataclass__TypeError=TypeError, # noqa
979
+ __dataclass___recursive_repr=reprlib.recursive_repr, # noqa
980
+ __dataclass__isinstance=isinstance, # noqa
981
+ __dataclass__object_setattr=object.__setattr__, # noqa
982
+ __dataclass__property=property, # noqa
983
+ ):
984
+ def __copy__(self):
985
+ if self.__class__ is not __dataclass__cls:
986
+ raise TypeError(self)
987
+ return __dataclass__cls( # noqa
988
+ lifecycle=self.lifecycle,
989
+ )
990
+
991
+ __copy__.__qualname__ = f"{__dataclass__cls.__qualname__}.__copy__"
992
+ if '__copy__' in __dataclass__cls.__dict__:
993
+ raise __dataclass__TypeError(f"Cannot overwrite attribute __copy__ in class {__dataclass__cls.__name__}")
994
+ setattr(__dataclass__cls, '__copy__', __copy__)
995
+
996
+ def __eq__(self, other):
997
+ if self is other:
998
+ return True
999
+ if self.__class__ is not other.__class__:
1000
+ return NotImplemented
1001
+ return (
1002
+ self.lifecycle == other.lifecycle
1003
+ )
1004
+
1005
+ __eq__.__qualname__ = f"{__dataclass__cls.__qualname__}.__eq__"
1006
+ if '__eq__' in __dataclass__cls.__dict__:
1007
+ raise __dataclass__TypeError(f"Cannot overwrite attribute __eq__ in class {__dataclass__cls.__name__}")
1008
+ setattr(__dataclass__cls, '__eq__', __eq__)
1009
+
1010
+ __dataclass___setattr_frozen_fields = {
1011
+ 'lifecycle',
1012
+ }
1013
+
1014
+ def __setattr__(self, name, value):
1015
+ if (
1016
+ type(self) is __dataclass__cls
1017
+ or name in __dataclass___setattr_frozen_fields
1018
+ ):
1019
+ raise __dataclass__FrozenInstanceError(f"cannot assign to field {name!r}")
1020
+ super(__dataclass__cls, self).__setattr__(name, value)
1021
+
1022
+ __setattr__.__qualname__ = f"{__dataclass__cls.__qualname__}.__setattr__"
1023
+ if '__setattr__' in __dataclass__cls.__dict__:
1024
+ raise __dataclass__TypeError(f"Cannot overwrite attribute __setattr__ in class {__dataclass__cls.__name__}")
1025
+ setattr(__dataclass__cls, '__setattr__', __setattr__)
1026
+
1027
+ __dataclass___delattr_frozen_fields = {
1028
+ 'lifecycle',
1029
+ }
1030
+
1031
+ def __delattr__(self, name):
1032
+ if (
1033
+ type(self) is __dataclass__cls
1034
+ or name in __dataclass___delattr_frozen_fields
1035
+ ):
1036
+ raise __dataclass__FrozenInstanceError(f"cannot delete field {name!r}")
1037
+ super(__dataclass__cls, self).__delattr__(name)
1038
+
1039
+ __delattr__.__qualname__ = f"{__dataclass__cls.__qualname__}.__delattr__"
1040
+ if '__delattr__' in __dataclass__cls.__dict__:
1041
+ raise __dataclass__TypeError(f"Cannot overwrite attribute __delattr__ in class {__dataclass__cls.__name__}")
1042
+ setattr(__dataclass__cls, '__delattr__', __delattr__)
1043
+
1044
+ def __hash__(self):
1045
+ return hash((
1046
+ self.lifecycle,
1047
+ ))
1048
+
1049
+ __hash__.__qualname__ = f"{__dataclass__cls.__qualname__}.__hash__"
1050
+ setattr(__dataclass__cls, '__hash__', __hash__)
1051
+
1052
+ def __init__(
1053
+ self,
1054
+ lifecycle: __dataclass__init__fields__0__annotation,
1055
+ ) -> __dataclass__None:
1056
+ __dataclass__object_setattr(self, 'lifecycle', lifecycle)
1057
+
1058
+ __init__.__qualname__ = f"{__dataclass__cls.__qualname__}.__init__"
1059
+ if '__init__' in __dataclass__cls.__dict__:
1060
+ raise __dataclass__TypeError(f"Cannot overwrite attribute __init__ in class {__dataclass__cls.__name__}")
1061
+ setattr(__dataclass__cls, '__init__', __init__)
1062
+
1063
+ @__dataclass___recursive_repr()
1064
+ def __repr__(self):
1065
+ parts = []
1066
+ parts.append(f"lifecycle={self.lifecycle!r}")
1067
+ return (
1068
+ f"{self.__class__.__qualname__}("
1069
+ f"{', '.join(parts)}"
1070
+ f")"
1071
+ )
1072
+
1073
+ __repr__.__qualname__ = f"{__dataclass__cls.__qualname__}.__repr__"
1074
+ if '__repr__' in __dataclass__cls.__dict__:
1075
+ raise __dataclass__TypeError(f"Cannot overwrite attribute __repr__ in class {__dataclass__cls.__name__}")
1076
+ setattr(__dataclass__cls, '__repr__', __repr__)
1077
+
1078
+ return _process_dataclass
1079
+
1080
+
1081
+ @_register(
1082
+ plan_repr=(
1083
+ "Plans(tup=(CopyPlan(fields=('binding', 'obj', 'lco')), EqPlan(fields=('binding', 'obj', 'lco')), FrozenPlan(fi"
1084
+ "elds=('binding', 'obj', 'lco'), allow_dynamic_dunder_attrs=False), HashPlan(action='add', fields=('binding', '"
1085
+ "obj', 'lco'), cache=False), InitPlan(fields=(InitPlan.Field(name='binding', annotation=OpRef(name='init.fields"
1086
+ ".0.annotation'), default=None, default_factory=None, init=True, override=False, field_type=FieldType.INSTANCE,"
1087
+ " coerce=None, validate=None, check_type=None), InitPlan.Field(name='obj', annotation=OpRef(name='init.fields.1"
1088
+ ".annotation'), default=None, default_factory=None, init=True, override=False, field_type=FieldType.INSTANCE, c"
1089
+ "oerce=None, validate=None, check_type=None), InitPlan.Field(name='lco', annotation=OpRef(name='init.fields.2.a"
1090
+ "nnotation'), default=None, default_factory=None, init=True, override=False, field_type=FieldType.INSTANCE, coe"
1091
+ "rce=None, validate=None, check_type=None)), self_param='self', std_params=('binding', 'obj', 'lco'), kw_only_p"
1092
+ "arams=(), frozen=True, slots=False, post_init_params=None, init_fns=(), validate_fns=()), ReprPlan(fields=(Rep"
1093
+ "rPlan.Field(name='binding', kw_only=False, fn=None), ReprPlan.Field(name='obj', kw_only=False, fn=None), ReprP"
1094
+ "lan.Field(name='lco', kw_only=False, fn=None)), id=False, terse=False, default_fn=None)))"
1095
+ ),
1096
+ plan_repr_sha1='b3f39a9348415b6ae3908bd546728de8b2b6d308',
1097
+ op_ref_idents=(
1098
+ '__dataclass__init__fields__0__annotation',
1099
+ '__dataclass__init__fields__1__annotation',
1100
+ '__dataclass__init__fields__2__annotation',
1101
+ ),
1102
+ cls_names=(
1103
+ ('omlish.lifecycles.injection', '_LifecycleRegistrar.Dep'),
1104
+ ),
1105
+ )
1106
+ def _process_dataclass__b3f39a9348415b6ae3908bd546728de8b2b6d308():
1107
+ def _process_dataclass(
1108
+ *,
1109
+ __dataclass__cls,
1110
+ __dataclass__init__fields__0__annotation,
1111
+ __dataclass__init__fields__1__annotation,
1112
+ __dataclass__init__fields__2__annotation,
1113
+ __dataclass__FieldFnValidationError, # noqa
1114
+ __dataclass__FieldTypeValidationError, # noqa
1115
+ __dataclass__FnValidationError, # noqa
1116
+ __dataclass__FrozenInstanceError=dataclasses.FrozenInstanceError, # noqa
1117
+ __dataclass__FunctionType=types.FunctionType, # noqa
1118
+ __dataclass__HAS_DEFAULT_FACTORY=dataclasses._HAS_DEFAULT_FACTORY, # noqa
1119
+ __dataclass__MISSING=dataclasses.MISSING, # noqa
1120
+ __dataclass__None=None, # noqa
1121
+ __dataclass__TypeError=TypeError, # noqa
1122
+ __dataclass___recursive_repr=reprlib.recursive_repr, # noqa
1123
+ __dataclass__isinstance=isinstance, # noqa
1124
+ __dataclass__object_setattr=object.__setattr__, # noqa
1125
+ __dataclass__property=property, # noqa
1126
+ ):
1127
+ def __copy__(self):
1128
+ if self.__class__ is not __dataclass__cls:
1129
+ raise TypeError(self)
1130
+ return __dataclass__cls( # noqa
1131
+ binding=self.binding,
1132
+ obj=self.obj,
1133
+ lco=self.lco,
1134
+ )
1135
+
1136
+ __copy__.__qualname__ = f"{__dataclass__cls.__qualname__}.__copy__"
1137
+ if '__copy__' in __dataclass__cls.__dict__:
1138
+ raise __dataclass__TypeError(f"Cannot overwrite attribute __copy__ in class {__dataclass__cls.__name__}")
1139
+ setattr(__dataclass__cls, '__copy__', __copy__)
1140
+
1141
+ def __eq__(self, other):
1142
+ if self is other:
1143
+ return True
1144
+ if self.__class__ is not other.__class__:
1145
+ return NotImplemented
1146
+ return (
1147
+ self.binding == other.binding and
1148
+ self.obj == other.obj and
1149
+ self.lco == other.lco
1150
+ )
1151
+
1152
+ __eq__.__qualname__ = f"{__dataclass__cls.__qualname__}.__eq__"
1153
+ if '__eq__' in __dataclass__cls.__dict__:
1154
+ raise __dataclass__TypeError(f"Cannot overwrite attribute __eq__ in class {__dataclass__cls.__name__}")
1155
+ setattr(__dataclass__cls, '__eq__', __eq__)
1156
+
1157
+ __dataclass___setattr_frozen_fields = {
1158
+ 'binding',
1159
+ 'obj',
1160
+ 'lco',
1161
+ }
1162
+
1163
+ def __setattr__(self, name, value):
1164
+ if (
1165
+ type(self) is __dataclass__cls
1166
+ or name in __dataclass___setattr_frozen_fields
1167
+ ):
1168
+ raise __dataclass__FrozenInstanceError(f"cannot assign to field {name!r}")
1169
+ super(__dataclass__cls, self).__setattr__(name, value)
1170
+
1171
+ __setattr__.__qualname__ = f"{__dataclass__cls.__qualname__}.__setattr__"
1172
+ if '__setattr__' in __dataclass__cls.__dict__:
1173
+ raise __dataclass__TypeError(f"Cannot overwrite attribute __setattr__ in class {__dataclass__cls.__name__}")
1174
+ setattr(__dataclass__cls, '__setattr__', __setattr__)
1175
+
1176
+ __dataclass___delattr_frozen_fields = {
1177
+ 'binding',
1178
+ 'obj',
1179
+ 'lco',
1180
+ }
1181
+
1182
+ def __delattr__(self, name):
1183
+ if (
1184
+ type(self) is __dataclass__cls
1185
+ or name in __dataclass___delattr_frozen_fields
1186
+ ):
1187
+ raise __dataclass__FrozenInstanceError(f"cannot delete field {name!r}")
1188
+ super(__dataclass__cls, self).__delattr__(name)
1189
+
1190
+ __delattr__.__qualname__ = f"{__dataclass__cls.__qualname__}.__delattr__"
1191
+ if '__delattr__' in __dataclass__cls.__dict__:
1192
+ raise __dataclass__TypeError(f"Cannot overwrite attribute __delattr__ in class {__dataclass__cls.__name__}")
1193
+ setattr(__dataclass__cls, '__delattr__', __delattr__)
1194
+
1195
+ def __hash__(self):
1196
+ return hash((
1197
+ self.binding,
1198
+ self.obj,
1199
+ self.lco,
1200
+ ))
1201
+
1202
+ __hash__.__qualname__ = f"{__dataclass__cls.__qualname__}.__hash__"
1203
+ setattr(__dataclass__cls, '__hash__', __hash__)
1204
+
1205
+ def __init__(
1206
+ self,
1207
+ binding: __dataclass__init__fields__0__annotation,
1208
+ obj: __dataclass__init__fields__1__annotation,
1209
+ lco: __dataclass__init__fields__2__annotation,
1210
+ ) -> __dataclass__None:
1211
+ __dataclass__object_setattr(self, 'binding', binding)
1212
+ __dataclass__object_setattr(self, 'obj', obj)
1213
+ __dataclass__object_setattr(self, 'lco', lco)
1214
+
1215
+ __init__.__qualname__ = f"{__dataclass__cls.__qualname__}.__init__"
1216
+ if '__init__' in __dataclass__cls.__dict__:
1217
+ raise __dataclass__TypeError(f"Cannot overwrite attribute __init__ in class {__dataclass__cls.__name__}")
1218
+ setattr(__dataclass__cls, '__init__', __init__)
1219
+
1220
+ @__dataclass___recursive_repr()
1221
+ def __repr__(self):
1222
+ parts = []
1223
+ parts.append(f"binding={self.binding!r}")
1224
+ parts.append(f"obj={self.obj!r}")
1225
+ parts.append(f"lco={self.lco!r}")
1226
+ return (
1227
+ f"{self.__class__.__qualname__}("
1228
+ f"{', '.join(parts)}"
1229
+ f")"
1230
+ )
1231
+
1232
+ __repr__.__qualname__ = f"{__dataclass__cls.__qualname__}.__repr__"
1233
+ if '__repr__' in __dataclass__cls.__dict__:
1234
+ raise __dataclass__TypeError(f"Cannot overwrite attribute __repr__ in class {__dataclass__cls.__name__}")
1235
+ setattr(__dataclass__cls, '__repr__', __repr__)
1236
+
1237
+ return _process_dataclass
1238
+
1239
+
1240
+ @_register(
1241
+ plan_repr=(
1242
+ "Plans(tup=(CopyPlan(fields=('key', 'deps')), EqPlan(fields=('key', 'deps')), FrozenPlan(fields=('key', 'deps')"
1243
+ ", allow_dynamic_dunder_attrs=False), HashPlan(action='add', fields=('key', 'deps'), cache=False), InitPlan(fie"
1244
+ "lds=(InitPlan.Field(name='key', annotation=OpRef(name='init.fields.0.annotation'), default=None, default_facto"
1245
+ "ry=None, init=True, override=False, field_type=FieldType.INSTANCE, coerce=None, validate=None, check_type=None"
1246
+ "), InitPlan.Field(name='deps', annotation=OpRef(name='init.fields.1.annotation'), default=None, default_factor"
1247
+ "y=OpRef(name='init.fields.1.default_factory'), init=True, override=False, field_type=FieldType.INSTANCE, coerc"
1248
+ "e=None, validate=None, check_type=None)), self_param='self', std_params=('key', 'deps'), kw_only_params=(), fr"
1249
+ "ozen=True, slots=False, post_init_params=None, init_fns=(), validate_fns=()), ReprPlan(fields=(ReprPlan.Field("
1250
+ "name='key', kw_only=False, fn=None), ReprPlan.Field(name='deps', kw_only=False, fn=None)), id=False, terse=Fal"
1251
+ "se, default_fn=None)))"
1252
+ ),
1253
+ plan_repr_sha1='56c73a66344b180e8ef52aca8500185dd538bf10',
1254
+ op_ref_idents=(
1255
+ '__dataclass__init__fields__0__annotation',
1256
+ '__dataclass__init__fields__1__annotation',
1257
+ '__dataclass__init__fields__1__default_factory',
1258
+ ),
1259
+ cls_names=(
1260
+ ('omlish.lifecycles.injection', '_LifecycleRegistrar.State'),
1261
+ ),
1262
+ )
1263
+ def _process_dataclass__56c73a66344b180e8ef52aca8500185dd538bf10():
1264
+ def _process_dataclass(
1265
+ *,
1266
+ __dataclass__cls,
1267
+ __dataclass__init__fields__0__annotation,
1268
+ __dataclass__init__fields__1__annotation,
1269
+ __dataclass__init__fields__1__default_factory,
1270
+ __dataclass__FieldFnValidationError, # noqa
1271
+ __dataclass__FieldTypeValidationError, # noqa
1272
+ __dataclass__FnValidationError, # noqa
1273
+ __dataclass__FrozenInstanceError=dataclasses.FrozenInstanceError, # noqa
1274
+ __dataclass__FunctionType=types.FunctionType, # noqa
1275
+ __dataclass__HAS_DEFAULT_FACTORY=dataclasses._HAS_DEFAULT_FACTORY, # noqa
1276
+ __dataclass__MISSING=dataclasses.MISSING, # noqa
1277
+ __dataclass__None=None, # noqa
1278
+ __dataclass__TypeError=TypeError, # noqa
1279
+ __dataclass___recursive_repr=reprlib.recursive_repr, # noqa
1280
+ __dataclass__isinstance=isinstance, # noqa
1281
+ __dataclass__object_setattr=object.__setattr__, # noqa
1282
+ __dataclass__property=property, # noqa
1283
+ ):
1284
+ def __copy__(self):
1285
+ if self.__class__ is not __dataclass__cls:
1286
+ raise TypeError(self)
1287
+ return __dataclass__cls( # noqa
1288
+ key=self.key,
1289
+ deps=self.deps,
1290
+ )
1291
+
1292
+ __copy__.__qualname__ = f"{__dataclass__cls.__qualname__}.__copy__"
1293
+ if '__copy__' in __dataclass__cls.__dict__:
1294
+ raise __dataclass__TypeError(f"Cannot overwrite attribute __copy__ in class {__dataclass__cls.__name__}")
1295
+ setattr(__dataclass__cls, '__copy__', __copy__)
1296
+
1297
+ def __eq__(self, other):
1298
+ if self is other:
1299
+ return True
1300
+ if self.__class__ is not other.__class__:
1301
+ return NotImplemented
1302
+ return (
1303
+ self.key == other.key and
1304
+ self.deps == other.deps
1305
+ )
1306
+
1307
+ __eq__.__qualname__ = f"{__dataclass__cls.__qualname__}.__eq__"
1308
+ if '__eq__' in __dataclass__cls.__dict__:
1309
+ raise __dataclass__TypeError(f"Cannot overwrite attribute __eq__ in class {__dataclass__cls.__name__}")
1310
+ setattr(__dataclass__cls, '__eq__', __eq__)
1311
+
1312
+ __dataclass___setattr_frozen_fields = {
1313
+ 'key',
1314
+ 'deps',
1315
+ }
1316
+
1317
+ def __setattr__(self, name, value):
1318
+ if (
1319
+ type(self) is __dataclass__cls
1320
+ or name in __dataclass___setattr_frozen_fields
1321
+ ):
1322
+ raise __dataclass__FrozenInstanceError(f"cannot assign to field {name!r}")
1323
+ super(__dataclass__cls, self).__setattr__(name, value)
1324
+
1325
+ __setattr__.__qualname__ = f"{__dataclass__cls.__qualname__}.__setattr__"
1326
+ if '__setattr__' in __dataclass__cls.__dict__:
1327
+ raise __dataclass__TypeError(f"Cannot overwrite attribute __setattr__ in class {__dataclass__cls.__name__}")
1328
+ setattr(__dataclass__cls, '__setattr__', __setattr__)
1329
+
1330
+ __dataclass___delattr_frozen_fields = {
1331
+ 'key',
1332
+ 'deps',
1333
+ }
1334
+
1335
+ def __delattr__(self, name):
1336
+ if (
1337
+ type(self) is __dataclass__cls
1338
+ or name in __dataclass___delattr_frozen_fields
1339
+ ):
1340
+ raise __dataclass__FrozenInstanceError(f"cannot delete field {name!r}")
1341
+ super(__dataclass__cls, self).__delattr__(name)
1342
+
1343
+ __delattr__.__qualname__ = f"{__dataclass__cls.__qualname__}.__delattr__"
1344
+ if '__delattr__' in __dataclass__cls.__dict__:
1345
+ raise __dataclass__TypeError(f"Cannot overwrite attribute __delattr__ in class {__dataclass__cls.__name__}")
1346
+ setattr(__dataclass__cls, '__delattr__', __delattr__)
1347
+
1348
+ def __hash__(self):
1349
+ return hash((
1350
+ self.key,
1351
+ self.deps,
1352
+ ))
1353
+
1354
+ __hash__.__qualname__ = f"{__dataclass__cls.__qualname__}.__hash__"
1355
+ setattr(__dataclass__cls, '__hash__', __hash__)
1356
+
1357
+ def __init__(
1358
+ self,
1359
+ key: __dataclass__init__fields__0__annotation,
1360
+ deps: __dataclass__init__fields__1__annotation = __dataclass__HAS_DEFAULT_FACTORY,
1361
+ ) -> __dataclass__None:
1362
+ if deps is __dataclass__HAS_DEFAULT_FACTORY:
1363
+ deps = __dataclass__init__fields__1__default_factory()
1364
+ __dataclass__object_setattr(self, 'key', key)
1365
+ __dataclass__object_setattr(self, 'deps', deps)
1366
+
1367
+ __init__.__qualname__ = f"{__dataclass__cls.__qualname__}.__init__"
1368
+ if '__init__' in __dataclass__cls.__dict__:
1369
+ raise __dataclass__TypeError(f"Cannot overwrite attribute __init__ in class {__dataclass__cls.__name__}")
1370
+ setattr(__dataclass__cls, '__init__', __init__)
1371
+
1372
+ @__dataclass___recursive_repr()
1373
+ def __repr__(self):
1374
+ parts = []
1375
+ parts.append(f"key={self.key!r}")
1376
+ parts.append(f"deps={self.deps!r}")
1377
+ return (
1378
+ f"{self.__class__.__qualname__}("
1379
+ f"{', '.join(parts)}"
1380
+ f")"
1381
+ )
1382
+
1383
+ __repr__.__qualname__ = f"{__dataclass__cls.__qualname__}.__repr__"
1384
+ if '__repr__' in __dataclass__cls.__dict__:
1385
+ raise __dataclass__TypeError(f"Cannot overwrite attribute __repr__ in class {__dataclass__cls.__name__}")
1386
+ setattr(__dataclass__cls, '__repr__', __repr__)
1387
+
1388
+ return _process_dataclass