omlish 0.0.0.dev379__py3-none-any.whl → 0.0.0.dev381__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.
omlish/__about__.py CHANGED
@@ -1,5 +1,5 @@
1
- __version__ = '0.0.0.dev379'
2
- __revision__ = '3b29e6acb4dbc2fa38be6032e7cc4b92615f2941'
1
+ __version__ = '0.0.0.dev381'
2
+ __revision__ = 'f73e0ce8b22e02761d8deafb17e4cead2919af33'
3
3
 
4
4
 
5
5
  #
omlish/configs/classes.py CHANGED
@@ -11,7 +11,7 @@ ConfigurableConfigT = ta.TypeVar('ConfigurableConfigT', bound='Configurable.Conf
11
11
  ##
12
12
 
13
13
 
14
- class Configurable(ta.Generic[ConfigurableConfigT], lang.Abstract):
14
+ class Configurable(lang.Abstract, ta.Generic[ConfigurableConfigT]):
15
15
  @dc.dataclass(frozen=True, kw_only=True)
16
16
  class Config:
17
17
  """Does not use any dc metaclasses to preserve typechecking."""
omlish/funcs/pairs.py CHANGED
@@ -19,7 +19,7 @@ T = ta.TypeVar('T')
19
19
  U = ta.TypeVar('U')
20
20
 
21
21
 
22
- class FnPair(ta.Generic[F, T], abc.ABC):
22
+ class FnPair(abc.ABC, ta.Generic[F, T]):
23
23
  @abc.abstractmethod
24
24
  def forward(self, f: F) -> T:
25
25
  raise NotImplementedError
@@ -16,7 +16,7 @@ SetMap: ta.TypeAlias = ta.Mapping[MK, ta.AbstractSet[MV]]
16
16
  ##
17
17
 
18
18
 
19
- class DirectedGraph(ta.Generic[V], lang.Abstract):
19
+ class DirectedGraph(lang.Abstract, ta.Generic[V]):
20
20
  @abc.abstractmethod
21
21
  def get_successors(self, vertex: V) -> ta.Collection[V]:
22
22
  raise NotImplementedError
omlish/graphs/trees.py CHANGED
@@ -23,7 +23,7 @@ NodeGenerator: ta.TypeAlias = ta.Generator[NodeT]
23
23
  ##
24
24
 
25
25
 
26
- class NodeError(ta.Generic[NodeT], Exception):
26
+ class NodeError(Exception, ta.Generic[NodeT]):
27
27
  def __init__(self, node: NodeT, msg: str, *args, **kwargs) -> None:
28
28
  super().__init__(msg, *args, **kwargs) # noqa
29
29
  self._node = node
@@ -158,7 +158,7 @@ class _CachedException(ta.NamedTuple):
158
158
  ex: BaseException
159
159
 
160
160
 
161
- class _CachedFunction(ta.Generic[T], Abstract):
161
+ class _CachedFunction(Abstract, ta.Generic[T]):
162
162
  @dc.dataclass(frozen=True, kw_only=True)
163
163
  class Opts:
164
164
  map_maker: ta.Callable[[], ta.MutableMapping] = dict
@@ -75,6 +75,9 @@ class _EmptyMap(ta.Mapping[K, V]):
75
75
  raise TypeError
76
76
  return _EMPTY_MAP
77
77
 
78
+ def __hash__(self) -> int:
79
+ return hash(_EmptyMap)
80
+
78
81
  def __repr__(self) -> str:
79
82
  return f'{self.__class__.__name__}()'
80
83
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: omlish
3
- Version: 0.0.0.dev379
3
+ Version: 0.0.0.dev381
4
4
  Summary: omlish
5
5
  Author: wrmsr
6
6
  License: BSD-3-Clause
@@ -1,5 +1,5 @@
1
1
  omlish/.manifests.json,sha256=aT8yZ-Zh-9wfHl5Ym5ouiWC1i0cy7Q7RlhzavB6VLPI,8587
2
- omlish/__about__.py,sha256=HG9T6_zSB02ZXfYcsvgYBXFXBSGh4AQRp4Uu8oUyvHU,3479
2
+ omlish/__about__.py,sha256=-DbjDvgqe02JsxIgL09pN_yzW3I3ZTmjXb0au6bPnpc,3479
3
3
  omlish/__init__.py,sha256=SsyiITTuK0v74XpKV8dqNaCmjOlan1JZKrHQv5rWKPA,253
4
4
  omlish/c3.py,sha256=rer-TPOFDU6fYq_AWio_AmA-ckZ8JDY5shIzQ_yXfzA,8414
5
5
  omlish/cached.py,sha256=MLap_p0rdGoDIMVhXVHm1tsbcWobJF0OanoodV03Ju8,542
@@ -113,7 +113,7 @@ omlish/concurrent/futures.py,sha256=870tx8ELI8THvMnTrQoYIlEFKO9hM4KUrlehckJqKBU,
113
113
  omlish/concurrent/threadlets.py,sha256=JfirbTDJgy9Ouokz_VmHeAAPS7cih8qMUJrN-owwXD4,2423
114
114
  omlish/configs/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
115
115
  omlish/configs/all.py,sha256=xTfR7NySnlIeqhk0GlUOncPnWZ97cLhCtRDlN_Ny8og,1107
116
- omlish/configs/classes.py,sha256=bRQ3NiYWpHNXspu7P52_9d-00P9YQz_cV8zWXTY2BZE,1173
116
+ omlish/configs/classes.py,sha256=sWBL1K90Ix5E-N_A6Uz7s-djpkS2rKEzOLFYB8pHk9k,1173
117
117
  omlish/configs/formats.py,sha256=DlaI_0mxrYmPl9pUWZFQ6xvqXz997uQOGtt9EKt6V9o,5307
118
118
  omlish/configs/nginx.py,sha256=b4fMI8dIZBUgOjmveRINrmmwSt8DO3y7nfvd-__YxDo,2062
119
119
  omlish/configs/shadow.py,sha256=rc-loE5ex2GFwvdQJXqJsnSQa-MNF6Mizh4FlirSYUo,2234
@@ -307,12 +307,12 @@ omlish/funcs/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
307
307
  omlish/funcs/builders.py,sha256=mJkgvJxM98x5pbMQzRY95tRUsbAfy_ivHtt4fDKfzsM,3984
308
308
  omlish/funcs/genmachine.py,sha256=D9dChaliNBIjYE6lJP5ctcVQUCffNBhceyaaLvBJ7ns,2578
309
309
  omlish/funcs/match.py,sha256=EPeKojvecnJuDEWaXEYuef0Sx1J6Y0uTL01h4Z8ldxc,6199
310
- omlish/funcs/pairs.py,sha256=VCkZjDmJGtR76BsejsHNfb4TcpHCtkkmak-zWDFchAo,3904
310
+ omlish/funcs/pairs.py,sha256=m570hXCaW6tCJq2QITJ_CKFFzXDDOogKvskX7N7oICs,3904
311
311
  omlish/funcs/pipes.py,sha256=E7Sz8Aj8ke_vCs5AMNwg1I36kRdHVGTnzxVQaDyn43U,2490
312
312
  omlish/graphs/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
313
313
  omlish/graphs/dags.py,sha256=GsTVDehSGxIpjuZ3qe29dldhVydqWexZD9mpqZErhnI,4400
314
- omlish/graphs/domination.py,sha256=iwQa4QUXitLU2X4cdPxJ1ltRRUTuXnz0lI8j4GtuBsw,7591
315
- omlish/graphs/trees.py,sha256=phO2YNboo1uUJcY2qrD7CJ0bx4Ir8tbFkPK8RtHNm5k,8197
314
+ omlish/graphs/domination.py,sha256=w6QrVAdX2oiJ0k5OAedXrUwnCTS2XFzp2zC_JZq1Qfo,7591
315
+ omlish/graphs/trees.py,sha256=xo5p5vKWU1BpLSqetqcxMYrlway3l4xWT76O00SS1hM,8197
316
316
  omlish/graphs/dot/__init__.py,sha256=Y1MZRQBZkcYyG1Tn7K2FhL8aYbm4v4tk6f5g9AqEkUw,359
317
317
  omlish/graphs/dot/items.py,sha256=GIzUqLHJPR4AVtF141uA8JnyybkRZx6mFYsNJHu_JVg,4087
318
318
  omlish/graphs/dot/make.py,sha256=e-M1IEdh4kHEjJmBxpaEUPxvFLrm5uIXdGxjQZr2HRo,365
@@ -423,7 +423,7 @@ omlish/lang/__init__.py,sha256=1XbAE88POrWtIHreNk47HAcl6Ch15uTH4cJFo2L7wFM,6619
423
423
  omlish/lang/attrs.py,sha256=zFiVuGVOq88x45464T_LxDa-ZEq_RD9zJLq2zeVEBDc,5105
424
424
  omlish/lang/casing.py,sha256=cFUlbDdXLhwnWwcYx4qnM5c4zGX7hIRUfcjiZbxUD28,4636
425
425
  omlish/lang/clsdct.py,sha256=HAGIvBSbCefzRjXriwYSBLO7QHKRv2UsE78jixOb-fA,1828
426
- omlish/lang/collections.py,sha256=LVm0Sory60IXyFzYhhO8BZAWy_z_pjiA-meXNlSJP7o,2465
426
+ omlish/lang/collections.py,sha256=XI76WcSi4SclWmEGirErg7EzQUfjtmiK2xSK7jJISzY,2528
427
427
  omlish/lang/comparison.py,sha256=MOwEG0Yny-jBPHO9kQto9FSRyeNpQW24UABsghkrHxY,1356
428
428
  omlish/lang/contextmanagers.py,sha256=7mbTG7yIwM2whQBuhja5Tt0C4kfefBUW4Y_AIn5j8iI,7214
429
429
  omlish/lang/datetimes.py,sha256=01tg21QOx-PWDlm-CSFTalym3vpqF0EKzeinmtcVNoU,379
@@ -445,7 +445,7 @@ omlish/lang/strings.py,sha256=TY-v0iGu6BxEKb99YS-VmIJqc-sTAqMv7mCDJQALMnI,4550
445
445
  omlish/lang/sys.py,sha256=KPe1UOXk1VxlOYt_aLmhN0KqsA4wnP-4nm4WEwO49pw,411
446
446
  omlish/lang/typing.py,sha256=eWI3RKhVi-_SV2rN4SGq8IbFo5XbGapbiWeduF97uG8,3846
447
447
  omlish/lang/cached/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
448
- omlish/lang/cached/function.py,sha256=su9QxYECK9NK-UfMFKbgx4lqH2WoGBiYshnEfaGvfhw,11522
448
+ omlish/lang/cached/function.py,sha256=prLS_Zi581YCkJ-6sjurzZxSUng4Ls_2_ODdYo-oQq4,11522
449
449
  omlish/lang/cached/property.py,sha256=WHYyg4-6EA86TcNMfbXTjVhjEZPc0kngt9hfY3WN5w8,2768
450
450
  omlish/lang/classes/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
451
451
  omlish/lang/classes/abstract.py,sha256=5G3TXelpy5PRWa2x8G_Im4SPymGKrOBK6sELRyOG9eg,3796
@@ -890,9 +890,9 @@ omlish/typedvalues/marshal.py,sha256=AtBz7Jq-BfW8vwM7HSxSpR85JAXmxK2T0xDblmm1HI0
890
890
  omlish/typedvalues/of_.py,sha256=UXkxSj504WI2UrFlqdZJbu2hyDwBhL7XVrc2qdR02GQ,1309
891
891
  omlish/typedvalues/reflect.py,sha256=PAvKW6T4cW7u--iX80w3HWwZUS3SmIZ2_lQjT65uAyk,1026
892
892
  omlish/typedvalues/values.py,sha256=ym46I-q2QJ_6l4UlERqv3yj87R-kp8nCKMRph0xQ3UA,1307
893
- omlish-0.0.0.dev379.dist-info/licenses/LICENSE,sha256=B_hVtavaA8zCYDW99DYdcpDLKz1n3BBRjZrcbv8uG8c,1451
894
- omlish-0.0.0.dev379.dist-info/METADATA,sha256=y-U_fsh6ZYrYzAZEmzZ0T-kCoC1aLyzbrcpccejNsAU,4420
895
- omlish-0.0.0.dev379.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
896
- omlish-0.0.0.dev379.dist-info/entry_points.txt,sha256=Lt84WvRZJskWCAS7xnQGZIeVWksprtUHj0llrvVmod8,35
897
- omlish-0.0.0.dev379.dist-info/top_level.txt,sha256=pePsKdLu7DvtUiecdYXJ78iO80uDNmBlqe-8hOzOmfs,7
898
- omlish-0.0.0.dev379.dist-info/RECORD,,
893
+ omlish-0.0.0.dev381.dist-info/licenses/LICENSE,sha256=B_hVtavaA8zCYDW99DYdcpDLKz1n3BBRjZrcbv8uG8c,1451
894
+ omlish-0.0.0.dev381.dist-info/METADATA,sha256=1yVdXIDoTT1W06OUpeqhGjLyUOCOT_GEDMOTVjI78jU,4420
895
+ omlish-0.0.0.dev381.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
896
+ omlish-0.0.0.dev381.dist-info/entry_points.txt,sha256=Lt84WvRZJskWCAS7xnQGZIeVWksprtUHj0llrvVmod8,35
897
+ omlish-0.0.0.dev381.dist-info/top_level.txt,sha256=pePsKdLu7DvtUiecdYXJ78iO80uDNmBlqe-8hOzOmfs,7
898
+ omlish-0.0.0.dev381.dist-info/RECORD,,