str-to-obj 2025.1__py3-none-any.whl → 2025.2__py3-none-any.whl

Sign up to get free protection for your applications and to get access to all the features.
str_to_obj/main.py CHANGED
@@ -29,11 +29,7 @@ def ObjectFromStr(
29
29
  issues = [f'{string}: Invalid value; Expected="NONE" or "None" or "none".']
30
30
  return None, issues
31
31
 
32
- # value = _ObjectFromStr(string)
33
- try:
34
- value = bstr.literal_eval(string)
35
- except (SyntaxError, ValueError):
36
- value = string
32
+ value = _ObjectFromStr(string)
37
33
 
38
34
  if expected_type is None:
39
35
  return value, []
@@ -41,21 +37,21 @@ def ObjectFromStr(
41
37
  return CastValue(value, expected_type)
42
38
 
43
39
 
44
- # def _ObjectFromStr(string: str | h.Any, /)-> h.Any:
45
- # """"""
46
- # # if not isinstance(string, str):
47
- # # return string
48
- #
49
- # try:
50
- # value = bstr.literal_eval(string)
51
- # except (SyntaxError, ValueError):
52
- # value = string
53
- #
54
- # # if isinstance(value, h.Sequence) and not isinstance(value, str):
55
- # # stripe = type(value)
56
- # # value = stripe(_ObjectFromStr(_elm) for _elm in value)
57
- #
58
- # return value
40
+ def _ObjectFromStr(string: str | h.Any, /)-> h.Any:
41
+ """"""
42
+ if not isinstance(string, str):
43
+ return string
44
+
45
+ try:
46
+ value = bstr.literal_eval(string)
47
+ except (SyntaxError, ValueError):
48
+ value = string
49
+
50
+ if isinstance(value, h.Sequence) and not isinstance(value, str):
51
+ stripe = type(value)
52
+ value = stripe(_ObjectFromStr(_elm) for _elm in value)
53
+
54
+ return value
59
55
 
60
56
 
61
57
  """
@@ -112,7 +112,7 @@ class hint_t(_hint_node_t):
112
112
  return output
113
113
 
114
114
  @property
115
- def template(self) -> simple_hint_h | dict[int, h.Any] | None:
115
+ def template(self) -> type[_hint_node_t.type] | dict[int, h.Any] | None:
116
116
  """"""
117
117
  if self.type is t.NoneType:
118
118
  return None
str_to_obj/version.py CHANGED
@@ -4,7 +4,7 @@ Contributor(s): Eric Debreuve (eric.debreuve@cnrs.fr) since 2023
4
4
  SEE COPYRIGHT NOTICE BELOW
5
5
  """
6
6
 
7
- __version__ = "2025.1"
7
+ __version__ = "2025.2"
8
8
 
9
9
 
10
10
  """
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.2
2
2
  Name: str-to-obj
3
- Version: 2025.1
3
+ Version: 2025.2
4
4
  Summary: Convert strings to Python objects guided by (potentially annotated) type hints
5
5
  Home-page: https://src.koda.cnrs.fr/eric.debreuve/str-to-obj/
6
6
  Author: Eric Debreuve
@@ -1,6 +1,6 @@
1
1
  str_to_obj/__init__.py,sha256=R22_7BvT9x1iJjVZzl1MraNV1TR73TBxnmiYasVp_Kw,2645
2
- str_to_obj/main.py,sha256=rzKdcK_qJ7IR29aIOZCDoNhQVfFV-EgF-pf35SNwDXA,3592
3
- str_to_obj/version.py,sha256=xNV5y9HqVZrz1nqjMLfqnMFHZE0yv6lVMBi5BS2quKQ,2206
2
+ str_to_obj/main.py,sha256=oxAWYP1tlED9Xk-GXJ45H_fUFYN9aNAOVK8rIvMd5dM,3441
3
+ str_to_obj/version.py,sha256=CixOc5Gh49sHYp1OL_5l6s9wqCJrmwTn2z9yGLYGnhQ,2206
4
4
  str_to_obj/api/catalog.py,sha256=6ka6JciGdHFP93lg0yq2LO3iZBHfq0upZfXxQSg1izk,2521
5
5
  str_to_obj/api/type.py,sha256=yxD5wTtnh_h8Wa9_k1eex-nrkjtfh4ZJI6Db6hJHI9w,2468
6
6
  str_to_obj/catalog/boolean.py,sha256=G2ZkLqf1e3cpMzjiGgd3E0aAVs6_xlpzG3U2LiOFbio,3508
@@ -17,10 +17,10 @@ str_to_obj/task/comparison.py,sha256=HBzv7gBtOnROsC6Sq-FYpgd_MKzVJreboNiqkza3vJ8
17
17
  str_to_obj/task/inspection.py,sha256=M8YnYq4A_Zz7rC2kgTYSSSawTnG2dCug5FBoCOBJ5g8,3127
18
18
  str_to_obj/type/annotation.py,sha256=xXShME2Q344N3QlsqKtU6ttne54tTVC3b62CHU1TGUM,3838
19
19
  str_to_obj/type/hint.py,sha256=w-yos8eD4CHQsXPfnqeqAc-ozyDWqzw46FOWDtAh7dM,2810
20
- str_to_obj/type/hint_tree.py,sha256=0A0X-waAWLs8Q3MQ4FXlqQaIUXz6cDhBgw8vloIj0x4,7895
20
+ str_to_obj/type/hint_tree.py,sha256=cYudLQ88C5y_vhxeJVa_CH4rRTa8L8Ljnc4BxDgpUEQ,7905
21
21
  str_to_obj/type/type.py,sha256=ywc7GpzM1BsoQ3F0qk4wZ2DG1KZllw-PNv_umIGt8hA,4147
22
22
  str_to_obj/type/value.py,sha256=r9Ko5HHant1JGbsO7vH1unRBr9guc61Jz2piuJT0BjM,2533
23
- str_to_obj-2025.1.dist-info/METADATA,sha256=Lxej_DybExSfQvS6D5v_LVvvE7Gcd6GylHCpF4oHIUs,6717
24
- str_to_obj-2025.1.dist-info/WHEEL,sha256=In9FTNxeP60KnTkGw7wk6mJPYd_dQSjEZmXdBdMCI-8,91
25
- str_to_obj-2025.1.dist-info/top_level.txt,sha256=h-6bR_TAnXRGVSLTeNPlivlaG64xYM3E__Xg7sCgeug,11
26
- str_to_obj-2025.1.dist-info/RECORD,,
23
+ str_to_obj-2025.2.dist-info/METADATA,sha256=V-AEcQMJ6eeSbX72BQite4t136pIuX277LOETfudhmY,6717
24
+ str_to_obj-2025.2.dist-info/WHEEL,sha256=In9FTNxeP60KnTkGw7wk6mJPYd_dQSjEZmXdBdMCI-8,91
25
+ str_to_obj-2025.2.dist-info/top_level.txt,sha256=h-6bR_TAnXRGVSLTeNPlivlaG64xYM3E__Xg7sCgeug,11
26
+ str_to_obj-2025.2.dist-info/RECORD,,