omlish 0.0.0.dev456__py3-none-any.whl → 0.0.0.dev457__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.dev456'
2
- __revision__ = '490c7e083d622b5af435b695219421a568eb45b7'
1
+ __version__ = '0.0.0.dev457'
2
+ __revision__ = '64cce982d49f06067f317ce043a99f89db92e3ae'
3
3
 
4
4
 
5
5
  #
@@ -50,9 +50,9 @@ class MarshalFactoryContext(BaseContext, lang.Final):
50
50
  def make_marshaler(self, o: ta.Any) -> 'Marshaler':
51
51
  rty = self._reflect(o)
52
52
  fac = check.not_none(self.marshaler_factory)
53
- if (mfn := fac.make_marshaler(self, rty)) is None:
53
+ if (m := fac.make_marshaler(self, rty)) is None:
54
54
  raise UnhandledTypeError(rty) # noqa
55
- return mfn()
55
+ return m()
56
56
 
57
57
 
58
58
  @dc.dataclass(frozen=True, kw_only=True)
@@ -62,9 +62,9 @@ class UnmarshalFactoryContext(BaseContext, lang.Final):
62
62
  def make_unmarshaler(self, o: ta.Any) -> 'Unmarshaler':
63
63
  rty = self._reflect(o)
64
64
  fac = check.not_none(self.unmarshaler_factory)
65
- if (mfn := fac.make_unmarshaler(self, rty)) is None:
65
+ if (m := fac.make_unmarshaler(self, rty)) is None:
66
66
  raise UnhandledTypeError(rty) # noqa
67
- return mfn()
67
+ return m()
68
68
 
69
69
 
70
70
  #
@@ -40,8 +40,20 @@ class _TypeCacheFactory(ta.Generic[FactoryT]):
40
40
  except KeyError:
41
41
  pass
42
42
 
43
- m = self._dct[rty] = dfl()
44
- return m
43
+ if (m := dfl()) is None:
44
+ self._dct[rty] = None
45
+ return None
46
+
47
+ x = None
48
+
49
+ def inner():
50
+ nonlocal x
51
+ if x is None:
52
+ x = m()
53
+ return x
54
+
55
+ self._dct[rty] = inner
56
+ return inner
45
57
 
46
58
 
47
59
  class TypeCacheMarshalerFactory(_TypeCacheFactory[MarshalerFactory], MarshalerFactory):
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: omlish
3
- Version: 0.0.0.dev456
3
+ Version: 0.0.0.dev457
4
4
  Summary: omlish
5
5
  Author: wrmsr
6
6
  License-Expression: BSD-3-Clause
@@ -1,5 +1,5 @@
1
1
  omlish/.omlish-manifests.json,sha256=FLw7xkPiSXuImZgqSP8BwrEib2R1doSzUPLUkc-QUIA,8410
2
- omlish/__about__.py,sha256=OqcsTrPCRTuWFUL-T10Ex74zucxFS2ywce2ec9Qnj40,3613
2
+ omlish/__about__.py,sha256=7wUq7VUXvYMZngckEy8GopODX5t4PieoLpMrovKdKsI,3613
3
3
  omlish/__init__.py,sha256=SsyiITTuK0v74XpKV8dqNaCmjOlan1JZKrHQv5rWKPA,253
4
4
  omlish/c3.py,sha256=ZNIMl1kwg3qdei4DiUrJPQe5M81S1e76N-GuNSwLBAE,8683
5
5
  omlish/cached.py,sha256=MLap_p0rdGoDIMVhXVHm1tsbcWobJF0OanoodV03Ju8,542
@@ -534,7 +534,7 @@ omlish/marshal/naming.py,sha256=Mk5YrbES836_KflNNRoc5Ajd96iMYLQIMERKx1KpT4g,865
534
534
  omlish/marshal/standard.py,sha256=8Qy5L3qMHO-V_fu78tM62wMcGpF0kgrFrxn06IRbFXQ,6906
535
535
  omlish/marshal/base/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
536
536
  omlish/marshal/base/configs.py,sha256=BNXmjDae5FgoYrjUnveY2xmMRukqWxH5KVK-VfL5GUE,465
537
- omlish/marshal/base/contexts.py,sha256=-mzH_f5JMyUpokCEYmqf8Er0YZtxhet5RFk4UyxoBw4,2653
537
+ omlish/marshal/base/contexts.py,sha256=KctfYThR_MN8HHDezQEmCW14WT24DvsdmzzhBeLj-3A,2645
538
538
  omlish/marshal/base/errors.py,sha256=jmN3vl_U_hB6L0wAvuO7ORG27vXF7KEUk-1TxxK2mYA,308
539
539
  omlish/marshal/base/funcs.py,sha256=UIlVHZ_vARJ8MNKsR6n5x5GnFQQ7Z0MaIZKYxHMsZaQ,1470
540
540
  omlish/marshal/base/options.py,sha256=Yuk4VDeKw9N26wSHda9_mMWj1hdgQTnenJ6hPYfrFts,235
@@ -559,7 +559,7 @@ omlish/marshal/factories/invalidate.py,sha256=qoI5BI6tsTmrZc1ahz5c_YjMpHKzlc0Fo-
559
559
  omlish/marshal/factories/method.py,sha256=Uk92_AGnEdH5P4CrebuFWPhONDk4ydteW7hSRfI6ZtI,884
560
560
  omlish/marshal/factories/multi.py,sha256=IbsUbzPiIho55CzZtPQk2ub9eAdvwoFy2Q8XliBaK5o,1279
561
561
  omlish/marshal/factories/recursive.py,sha256=spoPD0w7kyq3tiXFxlNSh2SYCFrPNzM6zPm3234sEHI,2984
562
- omlish/marshal/factories/typecache.py,sha256=8DwgyAKEA7scdhSxndPbC3NltkFViM_C4nP8xViSUKc,1598
562
+ omlish/marshal/factories/typecache.py,sha256=Tn1VJXkxLnRZhCkQFj8n4rkLGbyBNTsu1ZlnikAk6F8,1860
563
563
  omlish/marshal/factories/typemap.py,sha256=-Dl3Z-MvssSP_oPj3i32_72A9nSHNM1HtpTuys7tDHg,1995
564
564
  omlish/marshal/factories/moduleimport/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
565
565
  omlish/marshal/factories/moduleimport/configs.py,sha256=8g6FSPmyo0IOYSWYp5kqfJACZxL9SvzlHzrSzucNZyg,538
@@ -826,9 +826,9 @@ omlish/typedvalues/marshal.py,sha256=2xqX6JllhtGpmeYkU7C-qzgU__0x-vd6CzYbAsocQlc
826
826
  omlish/typedvalues/of_.py,sha256=UXkxSj504WI2UrFlqdZJbu2hyDwBhL7XVrc2qdR02GQ,1309
827
827
  omlish/typedvalues/reflect.py,sha256=PAvKW6T4cW7u--iX80w3HWwZUS3SmIZ2_lQjT65uAyk,1026
828
828
  omlish/typedvalues/values.py,sha256=ym46I-q2QJ_6l4UlERqv3yj87R-kp8nCKMRph0xQ3UA,1307
829
- omlish-0.0.0.dev456.dist-info/licenses/LICENSE,sha256=B_hVtavaA8zCYDW99DYdcpDLKz1n3BBRjZrcbv8uG8c,1451
830
- omlish-0.0.0.dev456.dist-info/METADATA,sha256=9A5eDRKfxCtCY62s2IEBnZe_SsoG4y8e8H2-LFsO_64,19003
831
- omlish-0.0.0.dev456.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
832
- omlish-0.0.0.dev456.dist-info/entry_points.txt,sha256=Lt84WvRZJskWCAS7xnQGZIeVWksprtUHj0llrvVmod8,35
833
- omlish-0.0.0.dev456.dist-info/top_level.txt,sha256=pePsKdLu7DvtUiecdYXJ78iO80uDNmBlqe-8hOzOmfs,7
834
- omlish-0.0.0.dev456.dist-info/RECORD,,
829
+ omlish-0.0.0.dev457.dist-info/licenses/LICENSE,sha256=B_hVtavaA8zCYDW99DYdcpDLKz1n3BBRjZrcbv8uG8c,1451
830
+ omlish-0.0.0.dev457.dist-info/METADATA,sha256=h9XOPiW_Qp1WAj_ufmcGrj-r6mDLA89_nNzZJPP52W8,19003
831
+ omlish-0.0.0.dev457.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
832
+ omlish-0.0.0.dev457.dist-info/entry_points.txt,sha256=Lt84WvRZJskWCAS7xnQGZIeVWksprtUHj0llrvVmod8,35
833
+ omlish-0.0.0.dev457.dist-info/top_level.txt,sha256=pePsKdLu7DvtUiecdYXJ78iO80uDNmBlqe-8hOzOmfs,7
834
+ omlish-0.0.0.dev457.dist-info/RECORD,,