str-to-obj 2023.10__tar.gz → 2025.1__tar.gz
Sign up to get free protection for your applications and to get access to all the features.
- {str-to-obj-2023.10 → str_to_obj-2025.1}/MANIFEST.in +1 -0
- {str-to-obj-2023.10/str_to_obj.egg-info → str_to_obj-2025.1}/PKG-INFO +90 -48
- str_to_obj-2025.1/README-COPYRIGHT-utf8.txt +44 -0
- str-to-obj-2023.10/PKG-INFO → str_to_obj-2025.1/README.rst +73 -64
- {str-to-obj-2023.10 → str_to_obj-2025.1}/documentation/wiki/description.asciidoc +48 -16
- str_to_obj-2025.1/package/str_to_obj/__init__.py +67 -0
- str_to_obj-2025.1/package/str_to_obj/api/catalog.py +58 -0
- str_to_obj-2025.1/package/str_to_obj/api/type.py +58 -0
- str_to_obj-2025.1/package/str_to_obj/catalog/boolean.py +99 -0
- str_to_obj-2025.1/package/str_to_obj/catalog/callable.py +99 -0
- str_to_obj-2025.1/package/str_to_obj/catalog/choices.py +101 -0
- str_to_obj-2025.1/package/str_to_obj/catalog/collection.py +175 -0
- str_to_obj-2025.1/package/str_to_obj/catalog/number.py +142 -0
- str_to_obj-2025.1/package/str_to_obj/catalog/path.py +117 -0
- str_to_obj-2025.1/package/str_to_obj/interface/console.py +77 -0
- str_to_obj-2025.1/package/str_to_obj/main.py +105 -0
- str_to_obj-2025.1/package/str_to_obj/runtime/type.py +58 -0
- str_to_obj-2025.1/package/str_to_obj/runtime/value.py +56 -0
- {str-to-obj-2023.10 → str_to_obj-2025.1/package}/str_to_obj/task/casting.py +88 -59
- str_to_obj-2025.1/package/str_to_obj/task/comparison.py +90 -0
- str_to_obj-2025.1/package/str_to_obj/task/inspection.py +88 -0
- str_to_obj-2025.1/package/str_to_obj/type/annotation.py +103 -0
- str_to_obj-2025.1/package/str_to_obj/type/hint.py +78 -0
- str_to_obj-2025.1/package/str_to_obj/type/hint_tree.py +218 -0
- str_to_obj-2025.1/package/str_to_obj/type/type.py +121 -0
- str_to_obj-2025.1/package/str_to_obj/type/value.py +69 -0
- str_to_obj-2025.1/package/str_to_obj/version.py +54 -0
- str-to-obj-2023.10/README.rst → str_to_obj-2025.1/package/str_to_obj.egg-info/PKG-INFO +106 -44
- str_to_obj-2025.1/package/str_to_obj.egg-info/SOURCES.txt +35 -0
- str_to_obj-2025.1/package/str_to_obj.egg-info/requires.txt +2 -0
- {str-to-obj-2023.10 → str_to_obj-2025.1}/pyproject.toml +0 -1
- str_to_obj-2025.1/requirements.txt +2 -0
- str_to_obj-2025.1/setup.py +155 -0
- str-to-obj-2023.10/README-COPYRIGHT-utf8.txt +0 -16
- str-to-obj-2023.10/setup.py +0 -170
- str-to-obj-2023.10/str_to_obj/__init__.py +0 -35
- str-to-obj-2023.10/str_to_obj/interface/console.py +0 -55
- str-to-obj-2023.10/str_to_obj/main.py +0 -65
- str-to-obj-2023.10/str_to_obj/task/comparison.py +0 -64
- str-to-obj-2023.10/str_to_obj/task/inspection.py +0 -64
- str-to-obj-2023.10/str_to_obj/type/annotation.py +0 -85
- str-to-obj-2023.10/str_to_obj/type/hint.py +0 -57
- str-to-obj-2023.10/str_to_obj/type/hint_tree.py +0 -159
- str-to-obj-2023.10/str_to_obj/version.py +0 -34
- str-to-obj-2023.10/str_to_obj.egg-info/SOURCES.txt +0 -22
- str-to-obj-2023.10/str_to_obj.egg-info/requires.txt +0 -1
- {str-to-obj-2023.10 → str_to_obj-2025.1}/README-LICENCE-utf8.txt +0 -0
- {str-to-obj-2023.10 → str_to_obj-2025.1/package}/str_to_obj.egg-info/dependency_links.txt +0 -0
- {str-to-obj-2023.10 → str_to_obj-2025.1/package}/str_to_obj.egg-info/top_level.txt +0 -0
- {str-to-obj-2023.10 → str_to_obj-2025.1}/setup.cfg +0 -0
@@ -1,54 +1,40 @@
|
|
1
|
-
Metadata-Version: 2.
|
1
|
+
Metadata-Version: 2.2
|
2
2
|
Name: str-to-obj
|
3
|
-
Version:
|
3
|
+
Version: 2025.1
|
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
|
7
7
|
Author-email: eric.debreuve@cnrs.fr
|
8
8
|
License: CeCILL-2.1
|
9
|
-
Project-URL: Documentation, https://src.koda.cnrs.fr/eric.debreuve/str-to-obj
|
9
|
+
Project-URL: Documentation, https://src.koda.cnrs.fr/eric.debreuve/str-to-obj/-/wikis/home
|
10
10
|
Project-URL: Source, https://src.koda.cnrs.fr/eric.debreuve/str-to-obj/
|
11
11
|
Keywords: str,character string,Python object,conversion,type hint,type annotation
|
12
12
|
Classifier: Topic :: Software Development
|
13
13
|
Classifier: Intended Audience :: Developers
|
14
14
|
Classifier: License :: OSI Approved :: CEA CNRS Inria Logiciel Libre License, version 2.1 (CeCILL-2.1)
|
15
|
-
Classifier: Programming Language :: Python :: 3
|
15
|
+
Classifier: Programming Language :: Python :: 3
|
16
16
|
Classifier: Development Status :: 4 - Beta
|
17
17
|
Requires-Python: >=3.11
|
18
18
|
Description-Content-Type: text/x-rst
|
19
|
+
Requires-Dist: logger_36
|
19
20
|
Requires-Dist: rich
|
21
|
+
Dynamic: author
|
22
|
+
Dynamic: author-email
|
23
|
+
Dynamic: classifier
|
24
|
+
Dynamic: description
|
25
|
+
Dynamic: description-content-type
|
26
|
+
Dynamic: home-page
|
27
|
+
Dynamic: keywords
|
28
|
+
Dynamic: license
|
29
|
+
Dynamic: project-url
|
30
|
+
Dynamic: requires-dist
|
31
|
+
Dynamic: requires-python
|
32
|
+
Dynamic: summary
|
20
33
|
|
21
34
|
..
|
22
|
-
Copyright CNRS/Inria/
|
23
|
-
Contributor(s): Eric Debreuve (since 2023
|
24
|
-
|
25
|
-
eric.debreuve@cnrs.fr
|
26
|
-
|
27
|
-
This software is governed by the CeCILL license under French law and
|
28
|
-
abiding by the rules of distribution of free software. You can use,
|
29
|
-
modify and/ or redistribute the software under the terms of the CeCILL
|
30
|
-
license as circulated by CEA, CNRS and INRIA at the following URL
|
31
|
-
"http://www.cecill.info".
|
32
|
-
|
33
|
-
As a counterpart to the access to the source code and rights to copy,
|
34
|
-
modify and redistribute granted by the license, users are provided only
|
35
|
-
with a limited warranty and the software's author, the holder of the
|
36
|
-
economic rights, and the successive licensors have only limited
|
37
|
-
liability.
|
38
|
-
|
39
|
-
In this respect, the user's attention is drawn to the risks associated
|
40
|
-
with loading, using, modifying and/or developing or reproducing the
|
41
|
-
software by the user in light of its specific status of free software,
|
42
|
-
that may mean that it is complicated to manipulate, and that also
|
43
|
-
therefore means that it is reserved for developers and experienced
|
44
|
-
professionals having in-depth computer knowledge. Users are therefore
|
45
|
-
encouraged to load and test the software's suitability as regards their
|
46
|
-
requirements in conditions enabling the security of their systems and/or
|
47
|
-
data to be ensured and, more generally, to use and operate it in the
|
48
|
-
same conditions as regards security.
|
49
|
-
|
50
|
-
The fact that you are presently reading this means that you have had
|
51
|
-
knowledge of the CeCILL license and that you accept its terms.
|
35
|
+
Copyright CNRS/Inria/UniCA
|
36
|
+
Contributor(s): Eric Debreuve (eric.debreuve@cnrs.fr) since 2023
|
37
|
+
SEE COPYRIGHT NOTICE BELOW
|
52
38
|
|
53
39
|
.. |PROJECT_NAME| replace:: Str-to-Obj
|
54
40
|
.. |SHORT_DESCRIPTION| replace:: Convert strings to Python objects guided by (potentially annotated) type hints
|
@@ -60,6 +46,9 @@ Requires-Dist: rich
|
|
60
46
|
.. |DOCUMENTATION_URL| replace:: https://src.koda.cnrs.fr/eric.debreuve/str-to-obj/-/wikis/home
|
61
47
|
.. _DOCUMENTATION_URL: https://src.koda.cnrs.fr/eric.debreuve/str-to-obj/-/wikis/home
|
62
48
|
|
49
|
+
.. |DEPENDENCIES_MANDATORY| replace:: logger_36, rich
|
50
|
+
.. |DEPENDENCIES_OPTIONAL| replace:: None
|
51
|
+
|
63
52
|
|
64
53
|
|
65
54
|
===================================
|
@@ -68,6 +57,13 @@ Requires-Dist: rich
|
|
68
57
|
|
69
58
|
|
70
59
|
|
60
|
+
Documentation
|
61
|
+
=============
|
62
|
+
|
63
|
+
The documentation is available at |DOCUMENTATION_URL|_.
|
64
|
+
|
65
|
+
|
66
|
+
|
71
67
|
Installation
|
72
68
|
============
|
73
69
|
|
@@ -77,14 +73,6 @@ at: |PYPI_PROJECT_URL|_.
|
|
77
73
|
It should be installable from Python distribution platforms or Integrated Development Environments (IDEs).
|
78
74
|
Otherwise, it can be installed from a command console using `pip <https://pip.pypa.io/>`_:
|
79
75
|
|
80
|
-
..
|
81
|
-
- For all users, after acquiring administrative rights:
|
82
|
-
- First installation: ``pip install`` |PYPI_NAME_LITERAL|
|
83
|
-
- Installation update: ``pip install --upgrade`` |PYPI_NAME_LITERAL|
|
84
|
-
- For the current user (no administrative rights required):
|
85
|
-
- First installation: ``pip install --user`` |PYPI_NAME_LITERAL|
|
86
|
-
- Installation update: ``pip install --user --upgrade`` |PYPI_NAME_LITERAL|
|
87
|
-
|
88
76
|
+--------------+-------------------------------------------------------+----------------------------------------------------------+
|
89
77
|
| | For all users (after acquiring administrative rights) | For the current user (no administrative rights required) |
|
90
78
|
+==============+=======================================================+==========================================================+
|
@@ -95,21 +83,75 @@ Otherwise, it can be installed from a command console using `pip <https://pip.py
|
|
95
83
|
|
96
84
|
|
97
85
|
|
98
|
-
|
99
|
-
|
86
|
+
Dependencies
|
87
|
+
============
|
100
88
|
|
101
|
-
The
|
89
|
+
The development relies on several packages:
|
90
|
+
|
91
|
+
- Mandatory: |DEPENDENCIES_MANDATORY|
|
92
|
+
- Optional: |DEPENDENCIES_OPTIONAL|
|
93
|
+
|
94
|
+
The mandatory dependencies, if any, are installed automatically by `pip <https://pip.pypa.io/>`_, if they are not already, as part of the installation of |PROJECT_NAME|.
|
95
|
+
Python distribution platforms or Integrated Development Environments (IDEs) should also take care of this.
|
96
|
+
The optional dependencies, if any, must be installed independently by following the related instructions, for added functionalities of |PROJECT_NAME|.
|
102
97
|
|
103
98
|
|
104
99
|
|
105
100
|
Acknowledgments
|
106
101
|
===============
|
107
102
|
|
108
|
-
|
103
|
+
.. image:: https://img.shields.io/badge/code%20style-black-000000.svg
|
104
|
+
:target: https://github.com/psf/black
|
105
|
+
.. image:: https://img.shields.io/badge/%20imports-isort-%231674b1?style=flat&labelColor=ef8336
|
106
|
+
:target: https://pycqa.github.io/isort/
|
109
107
|
|
110
|
-
The
|
111
|
-
(see ``install_requires`` in ``setup.py``, if present; otherwise ``import`` statements should be searched for).
|
108
|
+
The project is developed with `PyCharm Community <https://www.jetbrains.com/pycharm/>`_.
|
112
109
|
|
113
110
|
The code is formatted by `Black <https://github.com/psf/black/>`_, *The Uncompromising Code Formatter*.
|
114
111
|
|
115
112
|
The imports are ordered by `isort <https://github.com/timothycrosley/isort/>`_... *your imports, so you don't have to*.
|
113
|
+
|
114
|
+
..
|
115
|
+
COPYRIGHT NOTICE
|
116
|
+
|
117
|
+
This software is governed by the CeCILL license under French law and
|
118
|
+
abiding by the rules of distribution of free software. You can use,
|
119
|
+
modify and/ or redistribute the software under the terms of the CeCILL
|
120
|
+
license as circulated by CEA, CNRS and INRIA at the following URL
|
121
|
+
"http://www.cecill.info".
|
122
|
+
|
123
|
+
As a counterpart to the access to the source code and rights to copy,
|
124
|
+
modify and redistribute granted by the license, users are provided only
|
125
|
+
with a limited warranty and the software's author, the holder of the
|
126
|
+
economic rights, and the successive licensors have only limited
|
127
|
+
liability.
|
128
|
+
|
129
|
+
In this respect, the user's attention is drawn to the risks associated
|
130
|
+
with loading, using, modifying and/or developing or reproducing the
|
131
|
+
software by the user in light of its specific status of free software,
|
132
|
+
that may mean that it is complicated to manipulate, and that also
|
133
|
+
therefore means that it is reserved for developers and experienced
|
134
|
+
professionals having in-depth computer knowledge. Users are therefore
|
135
|
+
encouraged to load and test the software's suitability as regards their
|
136
|
+
requirements in conditions enabling the security of their systems and/or
|
137
|
+
data to be ensured and, more generally, to use and operate it in the
|
138
|
+
same conditions as regards security.
|
139
|
+
|
140
|
+
The fact that you are presently reading this means that you have had
|
141
|
+
knowledge of the CeCILL license and that you accept its terms.
|
142
|
+
|
143
|
+
SEE LICENCE NOTICE: file README-LICENCE-utf8.txt at project source root.
|
144
|
+
|
145
|
+
This software is being developed by Eric Debreuve, a CNRS employee and
|
146
|
+
member of team Morpheme.
|
147
|
+
Team Morpheme is a joint team between Inria, CNRS, and UniCA.
|
148
|
+
It is hosted by the Centre Inria d'Université Côte d'Azur, Laboratory
|
149
|
+
I3S, and Laboratory iBV.
|
150
|
+
|
151
|
+
CNRS: https://www.cnrs.fr/index.php/en
|
152
|
+
Inria: https://www.inria.fr/en/
|
153
|
+
UniCA: https://univ-cotedazur.eu/
|
154
|
+
Centre Inria d'Université Côte d'Azur: https://www.inria.fr/en/centre/sophia/
|
155
|
+
I3S: https://www.i3s.unice.fr/en/
|
156
|
+
iBV: http://ibv.unice.fr/
|
157
|
+
Team Morpheme: https://team.inria.fr/morpheme/
|
@@ -0,0 +1,44 @@
|
|
1
|
+
Copyright CNRS/Inria/UniCA
|
2
|
+
Contributor(s): Eric Debreuve (eric.debreuve@cnrs.fr) since 2023
|
3
|
+
|
4
|
+
This software is governed by the CeCILL license under French law and
|
5
|
+
abiding by the rules of distribution of free software. You can use,
|
6
|
+
modify and/ or redistribute the software under the terms of the CeCILL
|
7
|
+
license as circulated by CEA, CNRS and INRIA at the following URL
|
8
|
+
"http://www.cecill.info".
|
9
|
+
|
10
|
+
As a counterpart to the access to the source code and rights to copy,
|
11
|
+
modify and redistribute granted by the license, users are provided only
|
12
|
+
with a limited warranty and the software's author, the holder of the
|
13
|
+
economic rights, and the successive licensors have only limited
|
14
|
+
liability.
|
15
|
+
|
16
|
+
In this respect, the user's attention is drawn to the risks associated
|
17
|
+
with loading, using, modifying and/or developing or reproducing the
|
18
|
+
software by the user in light of its specific status of free software,
|
19
|
+
that may mean that it is complicated to manipulate, and that also
|
20
|
+
therefore means that it is reserved for developers and experienced
|
21
|
+
professionals having in-depth computer knowledge. Users are therefore
|
22
|
+
encouraged to load and test the software's suitability as regards their
|
23
|
+
requirements in conditions enabling the security of their systems and/or
|
24
|
+
data to be ensured and, more generally, to use and operate it in the
|
25
|
+
same conditions as regards security.
|
26
|
+
|
27
|
+
The fact that you are presently reading this means that you have had
|
28
|
+
knowledge of the CeCILL license and that you accept its terms.
|
29
|
+
|
30
|
+
SEE LICENCE NOTICE: README-LICENCE-utf8.txt
|
31
|
+
|
32
|
+
This software is being developed by Eric Debreuve, a CNRS employee and
|
33
|
+
member of team Morpheme.
|
34
|
+
Team Morpheme is a joint team between Inria, CNRS, and UniCA.
|
35
|
+
It is hosted by the Centre Inria d'Université Côte d'Azur, Laboratory
|
36
|
+
I3S, and Laboratory iBV.
|
37
|
+
|
38
|
+
CNRS: https://www.cnrs.fr/index.php/en
|
39
|
+
Inria: https://www.inria.fr/en/
|
40
|
+
UniCA: https://univ-cotedazur.eu/
|
41
|
+
Centre Inria d'Université Côte d'Azur: https://www.inria.fr/en/centre/sophia/
|
42
|
+
I3S: https://www.i3s.unice.fr/en/
|
43
|
+
iBV: http://ibv.unice.fr/
|
44
|
+
Team Morpheme: https://team.inria.fr/morpheme/
|
@@ -1,54 +1,7 @@
|
|
1
|
-
Metadata-Version: 2.1
|
2
|
-
Name: str-to-obj
|
3
|
-
Version: 2023.10
|
4
|
-
Summary: Convert strings to Python objects guided by (potentially annotated) type hints
|
5
|
-
Home-page: https://src.koda.cnrs.fr/eric.debreuve/str-to-obj/
|
6
|
-
Author: Eric Debreuve
|
7
|
-
Author-email: eric.debreuve@cnrs.fr
|
8
|
-
License: CeCILL-2.1
|
9
|
-
Project-URL: Documentation, https://src.koda.cnrs.fr/eric.debreuve/str-to-obj//-/wikis/home
|
10
|
-
Project-URL: Source, https://src.koda.cnrs.fr/eric.debreuve/str-to-obj/
|
11
|
-
Keywords: str,character string,Python object,conversion,type hint,type annotation
|
12
|
-
Classifier: Topic :: Software Development
|
13
|
-
Classifier: Intended Audience :: Developers
|
14
|
-
Classifier: License :: OSI Approved :: CEA CNRS Inria Logiciel Libre License, version 2.1 (CeCILL-2.1)
|
15
|
-
Classifier: Programming Language :: Python :: 3.11
|
16
|
-
Classifier: Development Status :: 4 - Beta
|
17
|
-
Requires-Python: >=3.11
|
18
|
-
Description-Content-Type: text/x-rst
|
19
|
-
Requires-Dist: rich
|
20
|
-
|
21
1
|
..
|
22
|
-
Copyright CNRS/Inria/
|
23
|
-
Contributor(s): Eric Debreuve (since 2023
|
24
|
-
|
25
|
-
eric.debreuve@cnrs.fr
|
26
|
-
|
27
|
-
This software is governed by the CeCILL license under French law and
|
28
|
-
abiding by the rules of distribution of free software. You can use,
|
29
|
-
modify and/ or redistribute the software under the terms of the CeCILL
|
30
|
-
license as circulated by CEA, CNRS and INRIA at the following URL
|
31
|
-
"http://www.cecill.info".
|
32
|
-
|
33
|
-
As a counterpart to the access to the source code and rights to copy,
|
34
|
-
modify and redistribute granted by the license, users are provided only
|
35
|
-
with a limited warranty and the software's author, the holder of the
|
36
|
-
economic rights, and the successive licensors have only limited
|
37
|
-
liability.
|
38
|
-
|
39
|
-
In this respect, the user's attention is drawn to the risks associated
|
40
|
-
with loading, using, modifying and/or developing or reproducing the
|
41
|
-
software by the user in light of its specific status of free software,
|
42
|
-
that may mean that it is complicated to manipulate, and that also
|
43
|
-
therefore means that it is reserved for developers and experienced
|
44
|
-
professionals having in-depth computer knowledge. Users are therefore
|
45
|
-
encouraged to load and test the software's suitability as regards their
|
46
|
-
requirements in conditions enabling the security of their systems and/or
|
47
|
-
data to be ensured and, more generally, to use and operate it in the
|
48
|
-
same conditions as regards security.
|
49
|
-
|
50
|
-
The fact that you are presently reading this means that you have had
|
51
|
-
knowledge of the CeCILL license and that you accept its terms.
|
2
|
+
Copyright CNRS/Inria/UniCA
|
3
|
+
Contributor(s): Eric Debreuve (eric.debreuve@cnrs.fr) since 2023
|
4
|
+
SEE COPYRIGHT NOTICE BELOW
|
52
5
|
|
53
6
|
.. |PROJECT_NAME| replace:: Str-to-Obj
|
54
7
|
.. |SHORT_DESCRIPTION| replace:: Convert strings to Python objects guided by (potentially annotated) type hints
|
@@ -60,6 +13,9 @@ Requires-Dist: rich
|
|
60
13
|
.. |DOCUMENTATION_URL| replace:: https://src.koda.cnrs.fr/eric.debreuve/str-to-obj/-/wikis/home
|
61
14
|
.. _DOCUMENTATION_URL: https://src.koda.cnrs.fr/eric.debreuve/str-to-obj/-/wikis/home
|
62
15
|
|
16
|
+
.. |DEPENDENCIES_MANDATORY| replace:: logger_36, rich
|
17
|
+
.. |DEPENDENCIES_OPTIONAL| replace:: None
|
18
|
+
|
63
19
|
|
64
20
|
|
65
21
|
===================================
|
@@ -68,6 +24,13 @@ Requires-Dist: rich
|
|
68
24
|
|
69
25
|
|
70
26
|
|
27
|
+
Documentation
|
28
|
+
=============
|
29
|
+
|
30
|
+
The documentation is available at |DOCUMENTATION_URL|_.
|
31
|
+
|
32
|
+
|
33
|
+
|
71
34
|
Installation
|
72
35
|
============
|
73
36
|
|
@@ -77,14 +40,6 @@ at: |PYPI_PROJECT_URL|_.
|
|
77
40
|
It should be installable from Python distribution platforms or Integrated Development Environments (IDEs).
|
78
41
|
Otherwise, it can be installed from a command console using `pip <https://pip.pypa.io/>`_:
|
79
42
|
|
80
|
-
..
|
81
|
-
- For all users, after acquiring administrative rights:
|
82
|
-
- First installation: ``pip install`` |PYPI_NAME_LITERAL|
|
83
|
-
- Installation update: ``pip install --upgrade`` |PYPI_NAME_LITERAL|
|
84
|
-
- For the current user (no administrative rights required):
|
85
|
-
- First installation: ``pip install --user`` |PYPI_NAME_LITERAL|
|
86
|
-
- Installation update: ``pip install --user --upgrade`` |PYPI_NAME_LITERAL|
|
87
|
-
|
88
43
|
+--------------+-------------------------------------------------------+----------------------------------------------------------+
|
89
44
|
| | For all users (after acquiring administrative rights) | For the current user (no administrative rights required) |
|
90
45
|
+==============+=======================================================+==========================================================+
|
@@ -95,21 +50,75 @@ Otherwise, it can be installed from a command console using `pip <https://pip.py
|
|
95
50
|
|
96
51
|
|
97
52
|
|
98
|
-
|
99
|
-
|
53
|
+
Dependencies
|
54
|
+
============
|
100
55
|
|
101
|
-
The
|
56
|
+
The development relies on several packages:
|
57
|
+
|
58
|
+
- Mandatory: |DEPENDENCIES_MANDATORY|
|
59
|
+
- Optional: |DEPENDENCIES_OPTIONAL|
|
60
|
+
|
61
|
+
The mandatory dependencies, if any, are installed automatically by `pip <https://pip.pypa.io/>`_, if they are not already, as part of the installation of |PROJECT_NAME|.
|
62
|
+
Python distribution platforms or Integrated Development Environments (IDEs) should also take care of this.
|
63
|
+
The optional dependencies, if any, must be installed independently by following the related instructions, for added functionalities of |PROJECT_NAME|.
|
102
64
|
|
103
65
|
|
104
66
|
|
105
67
|
Acknowledgments
|
106
68
|
===============
|
107
69
|
|
108
|
-
|
70
|
+
.. image:: https://img.shields.io/badge/code%20style-black-000000.svg
|
71
|
+
:target: https://github.com/psf/black
|
72
|
+
.. image:: https://img.shields.io/badge/%20imports-isort-%231674b1?style=flat&labelColor=ef8336
|
73
|
+
:target: https://pycqa.github.io/isort/
|
109
74
|
|
110
|
-
The
|
111
|
-
(see ``install_requires`` in ``setup.py``, if present; otherwise ``import`` statements should be searched for).
|
75
|
+
The project is developed with `PyCharm Community <https://www.jetbrains.com/pycharm/>`_.
|
112
76
|
|
113
77
|
The code is formatted by `Black <https://github.com/psf/black/>`_, *The Uncompromising Code Formatter*.
|
114
78
|
|
115
79
|
The imports are ordered by `isort <https://github.com/timothycrosley/isort/>`_... *your imports, so you don't have to*.
|
80
|
+
|
81
|
+
..
|
82
|
+
COPYRIGHT NOTICE
|
83
|
+
|
84
|
+
This software is governed by the CeCILL license under French law and
|
85
|
+
abiding by the rules of distribution of free software. You can use,
|
86
|
+
modify and/ or redistribute the software under the terms of the CeCILL
|
87
|
+
license as circulated by CEA, CNRS and INRIA at the following URL
|
88
|
+
"http://www.cecill.info".
|
89
|
+
|
90
|
+
As a counterpart to the access to the source code and rights to copy,
|
91
|
+
modify and redistribute granted by the license, users are provided only
|
92
|
+
with a limited warranty and the software's author, the holder of the
|
93
|
+
economic rights, and the successive licensors have only limited
|
94
|
+
liability.
|
95
|
+
|
96
|
+
In this respect, the user's attention is drawn to the risks associated
|
97
|
+
with loading, using, modifying and/or developing or reproducing the
|
98
|
+
software by the user in light of its specific status of free software,
|
99
|
+
that may mean that it is complicated to manipulate, and that also
|
100
|
+
therefore means that it is reserved for developers and experienced
|
101
|
+
professionals having in-depth computer knowledge. Users are therefore
|
102
|
+
encouraged to load and test the software's suitability as regards their
|
103
|
+
requirements in conditions enabling the security of their systems and/or
|
104
|
+
data to be ensured and, more generally, to use and operate it in the
|
105
|
+
same conditions as regards security.
|
106
|
+
|
107
|
+
The fact that you are presently reading this means that you have had
|
108
|
+
knowledge of the CeCILL license and that you accept its terms.
|
109
|
+
|
110
|
+
SEE LICENCE NOTICE: file README-LICENCE-utf8.txt at project source root.
|
111
|
+
|
112
|
+
This software is being developed by Eric Debreuve, a CNRS employee and
|
113
|
+
member of team Morpheme.
|
114
|
+
Team Morpheme is a joint team between Inria, CNRS, and UniCA.
|
115
|
+
It is hosted by the Centre Inria d'Université Côte d'Azur, Laboratory
|
116
|
+
I3S, and Laboratory iBV.
|
117
|
+
|
118
|
+
CNRS: https://www.cnrs.fr/index.php/en
|
119
|
+
Inria: https://www.inria.fr/en/
|
120
|
+
UniCA: https://univ-cotedazur.eu/
|
121
|
+
Centre Inria d'Université Côte d'Azur: https://www.inria.fr/en/centre/sophia/
|
122
|
+
I3S: https://www.i3s.unice.fr/en/
|
123
|
+
iBV: http://ibv.unice.fr/
|
124
|
+
Team Morpheme: https://team.inria.fr/morpheme/
|
@@ -1,7 +1,35 @@
|
|
1
|
-
// Copyright CNRS/Inria/
|
2
|
-
// Contributor(s): Eric Debreuve (since 2023
|
3
|
-
//
|
4
|
-
|
1
|
+
// Copyright CNRS/Inria/UniCA
|
2
|
+
// Contributor(s): Eric Debreuve (eric.debreuve@cnrs.fr) since 2023
|
3
|
+
// SEE COPYRIGHT NOTICE BELOW
|
4
|
+
|
5
|
+
:AUTHOR: Eric Debreuve
|
6
|
+
:EMAIL: eric.debreuve@cnrs.fr
|
7
|
+
|
8
|
+
:PROJECT_NAME: Str-to-Obj
|
9
|
+
:SHORT_DESCRIPTION: Convert strings to Python objects guided by (potentially annotated) type hints
|
10
|
+
:KEYWORDS: str, character string, Python object, conversion, type hint, type annotation
|
11
|
+
|
12
|
+
:REPOSITORY_NAME: str-to-obj
|
13
|
+
:REPOSITORY_USER: eric.debreuve
|
14
|
+
:REPOSITORY_SITE: src.koda.cnrs.fr
|
15
|
+
:DOCUMENTATION_SITE: -/wikis/home
|
16
|
+
:SINCE_YEAR: 2023
|
17
|
+
|
18
|
+
:LICENSE_SHORT: CeCILL-2.1
|
19
|
+
:LICENCE_LONG: CEA CNRS Inria Logiciel Libre License, version 2.1
|
20
|
+
:PY_VERSION_MAJOR: 3
|
21
|
+
:PY_VERSION_MIN: 3.11
|
22
|
+
|
23
|
+
:PYPI_NAME: str-to-obj
|
24
|
+
:PYPI_TOPIC: Software Development
|
25
|
+
:PYPI_AUDIENCE: Developers
|
26
|
+
:PYPI_STATUS: 4 - Beta
|
27
|
+
|
28
|
+
:IMPORT_NAME: str_to_obj
|
29
|
+
|
30
|
+
:DEPENDENCIES_OPTIONAL: None
|
31
|
+
|
32
|
+
// COPYRIGHT NOTICE
|
5
33
|
//
|
6
34
|
// This software is governed by the CeCILL license under French law and
|
7
35
|
// abiding by the rules of distribution of free software. You can use,
|
@@ -28,15 +56,19 @@
|
|
28
56
|
//
|
29
57
|
// The fact that you are presently reading this means that you have had
|
30
58
|
// knowledge of the CeCILL license and that you accept its terms.
|
31
|
-
|
32
|
-
:
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
:
|
41
|
-
:
|
42
|
-
:
|
59
|
+
//
|
60
|
+
// SEE LICENCE NOTICE: file README-LICENCE-utf8.txt at project source root.
|
61
|
+
//
|
62
|
+
// This software is being developed by Eric Debreuve, a CNRS employee and
|
63
|
+
// member of team Morpheme.
|
64
|
+
// Team Morpheme is a joint team between Inria, CNRS, and UniCA.
|
65
|
+
// It is hosted by the Centre Inria d'Université Côte d'Azur, Laboratory
|
66
|
+
// I3S, and Laboratory iBV.
|
67
|
+
//
|
68
|
+
// CNRS: https://www.cnrs.fr/index.php/en
|
69
|
+
// Inria: https://www.inria.fr/en/
|
70
|
+
// UniCA: https://univ-cotedazur.eu/
|
71
|
+
// Centre Inria d'Université Côte d'Azur: https://www.inria.fr/en/centre/sophia/
|
72
|
+
// I3S: https://www.i3s.unice.fr/en/
|
73
|
+
// iBV: http://ibv.unice.fr/
|
74
|
+
// Team Morpheme: https://team.inria.fr/morpheme/
|
@@ -0,0 +1,67 @@
|
|
1
|
+
"""
|
2
|
+
Copyright CNRS/Inria/UniCA
|
3
|
+
Contributor(s): Eric Debreuve (eric.debreuve@cnrs.fr) since 2023
|
4
|
+
SEE COPYRIGHT NOTICE BELOW
|
5
|
+
"""
|
6
|
+
|
7
|
+
try:
|
8
|
+
from beartype.claw import beartype_this_package # noqa
|
9
|
+
except ModuleNotFoundError:
|
10
|
+
pass
|
11
|
+
else:
|
12
|
+
import site
|
13
|
+
from pathlib import Path as path_t
|
14
|
+
paths = site.getsitepackages() + [site.getusersitepackages()]
|
15
|
+
folder = path_t(__file__).parent
|
16
|
+
if folder not in paths:
|
17
|
+
beartype_this_package()
|
18
|
+
|
19
|
+
from str_to_obj.main import ObjectFromStr
|
20
|
+
from str_to_obj.runtime.value import INVALID_VALUE
|
21
|
+
from str_to_obj.version import __version__
|
22
|
+
|
23
|
+
"""
|
24
|
+
COPYRIGHT NOTICE
|
25
|
+
|
26
|
+
This software is governed by the CeCILL license under French law and
|
27
|
+
abiding by the rules of distribution of free software. You can use,
|
28
|
+
modify and/ or redistribute the software under the terms of the CeCILL
|
29
|
+
license as circulated by CEA, CNRS and INRIA at the following URL
|
30
|
+
"http://www.cecill.info".
|
31
|
+
|
32
|
+
As a counterpart to the access to the source code and rights to copy,
|
33
|
+
modify and redistribute granted by the license, users are provided only
|
34
|
+
with a limited warranty and the software's author, the holder of the
|
35
|
+
economic rights, and the successive licensors have only limited
|
36
|
+
liability.
|
37
|
+
|
38
|
+
In this respect, the user's attention is drawn to the risks associated
|
39
|
+
with loading, using, modifying and/or developing or reproducing the
|
40
|
+
software by the user in light of its specific status of free software,
|
41
|
+
that may mean that it is complicated to manipulate, and that also
|
42
|
+
therefore means that it is reserved for developers and experienced
|
43
|
+
professionals having in-depth computer knowledge. Users are therefore
|
44
|
+
encouraged to load and test the software's suitability as regards their
|
45
|
+
requirements in conditions enabling the security of their systems and/or
|
46
|
+
data to be ensured and, more generally, to use and operate it in the
|
47
|
+
same conditions as regards security.
|
48
|
+
|
49
|
+
The fact that you are presently reading this means that you have had
|
50
|
+
knowledge of the CeCILL license and that you accept its terms.
|
51
|
+
|
52
|
+
SEE LICENCE NOTICE: file README-LICENCE-utf8.txt at project source root.
|
53
|
+
|
54
|
+
This software is being developed by Eric Debreuve, a CNRS employee and
|
55
|
+
member of team Morpheme.
|
56
|
+
Team Morpheme is a joint team between Inria, CNRS, and UniCA.
|
57
|
+
It is hosted by the Centre Inria d'Université Côte d'Azur, Laboratory
|
58
|
+
I3S, and Laboratory iBV.
|
59
|
+
|
60
|
+
CNRS: https://www.cnrs.fr/index.php/en
|
61
|
+
Inria: https://www.inria.fr/en/
|
62
|
+
UniCA: https://univ-cotedazur.eu/
|
63
|
+
Centre Inria d'Université Côte d'Azur: https://www.inria.fr/en/centre/sophia/
|
64
|
+
I3S: https://www.i3s.unice.fr/en/
|
65
|
+
iBV: http://ibv.unice.fr/
|
66
|
+
Team Morpheme: https://team.inria.fr/morpheme/
|
67
|
+
"""
|
@@ -0,0 +1,58 @@
|
|
1
|
+
"""
|
2
|
+
Copyright CNRS/Inria/UniCA
|
3
|
+
Contributor(s): Eric Debreuve (eric.debreuve@cnrs.fr) since 2023
|
4
|
+
SEE COPYRIGHT NOTICE BELOW
|
5
|
+
"""
|
6
|
+
|
7
|
+
from str_to_obj.catalog.boolean import boolean_mode_e, boolean_t
|
8
|
+
from str_to_obj.catalog.callable import callable_t
|
9
|
+
from str_to_obj.catalog.choices import choices_t
|
10
|
+
from str_to_obj.catalog.collection import collection_t
|
11
|
+
from str_to_obj.catalog.number import number_t
|
12
|
+
from str_to_obj.catalog.path import path_purpose_e, path_t, path_type_e
|
13
|
+
|
14
|
+
"""
|
15
|
+
COPYRIGHT NOTICE
|
16
|
+
|
17
|
+
This software is governed by the CeCILL license under French law and
|
18
|
+
abiding by the rules of distribution of free software. You can use,
|
19
|
+
modify and/ or redistribute the software under the terms of the CeCILL
|
20
|
+
license as circulated by CEA, CNRS and INRIA at the following URL
|
21
|
+
"http://www.cecill.info".
|
22
|
+
|
23
|
+
As a counterpart to the access to the source code and rights to copy,
|
24
|
+
modify and redistribute granted by the license, users are provided only
|
25
|
+
with a limited warranty and the software's author, the holder of the
|
26
|
+
economic rights, and the successive licensors have only limited
|
27
|
+
liability.
|
28
|
+
|
29
|
+
In this respect, the user's attention is drawn to the risks associated
|
30
|
+
with loading, using, modifying and/or developing or reproducing the
|
31
|
+
software by the user in light of its specific status of free software,
|
32
|
+
that may mean that it is complicated to manipulate, and that also
|
33
|
+
therefore means that it is reserved for developers and experienced
|
34
|
+
professionals having in-depth computer knowledge. Users are therefore
|
35
|
+
encouraged to load and test the software's suitability as regards their
|
36
|
+
requirements in conditions enabling the security of their systems and/or
|
37
|
+
data to be ensured and, more generally, to use and operate it in the
|
38
|
+
same conditions as regards security.
|
39
|
+
|
40
|
+
The fact that you are presently reading this means that you have had
|
41
|
+
knowledge of the CeCILL license and that you accept its terms.
|
42
|
+
|
43
|
+
SEE LICENCE NOTICE: file README-LICENCE-utf8.txt at project source root.
|
44
|
+
|
45
|
+
This software is being developed by Eric Debreuve, a CNRS employee and
|
46
|
+
member of team Morpheme.
|
47
|
+
Team Morpheme is a joint team between Inria, CNRS, and UniCA.
|
48
|
+
It is hosted by the Centre Inria d'Université Côte d'Azur, Laboratory
|
49
|
+
I3S, and Laboratory iBV.
|
50
|
+
|
51
|
+
CNRS: https://www.cnrs.fr/index.php/en
|
52
|
+
Inria: https://www.inria.fr/en/
|
53
|
+
UniCA: https://univ-cotedazur.eu/
|
54
|
+
Centre Inria d'Université Côte d'Azur: https://www.inria.fr/en/centre/sophia/
|
55
|
+
I3S: https://www.i3s.unice.fr/en/
|
56
|
+
iBV: http://ibv.unice.fr/
|
57
|
+
Team Morpheme: https://team.inria.fr/morpheme/
|
58
|
+
"""
|