abstract-utilities 0.2.2.442__py3-none-any.whl → 0.2.2.688__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 abstract-utilities might be problematic. Click here for more details.

Files changed (236) hide show
  1. abstract_utilities/__init__.py +25 -16
  2. abstract_utilities/circular_import_finder.py +222 -0
  3. abstract_utilities/circular_import_finder2.py +118 -0
  4. abstract_utilities/class_utils/__init__.py +7 -0
  5. abstract_utilities/class_utils/abstract_classes.py +144 -0
  6. abstract_utilities/class_utils/caller_utils.py +92 -0
  7. abstract_utilities/class_utils/class_utils.py +109 -0
  8. abstract_utilities/class_utils/function_utils.py +153 -0
  9. abstract_utilities/class_utils/global_utils.py +71 -0
  10. abstract_utilities/class_utils/imports/__init__.py +2 -0
  11. abstract_utilities/class_utils/imports/imports.py +2 -0
  12. abstract_utilities/class_utils/imports/utils.py +40 -0
  13. abstract_utilities/class_utils/module_utils.py +63 -0
  14. abstract_utilities/class_utils.py +0 -1
  15. abstract_utilities/directory_utils/__init__.py +2 -0
  16. abstract_utilities/directory_utils/directory_utils.py +94 -0
  17. abstract_utilities/directory_utils/imports/__init__.py +2 -0
  18. abstract_utilities/directory_utils/imports/imports.py +1 -0
  19. abstract_utilities/directory_utils/imports/module_imports.py +2 -0
  20. abstract_utilities/directory_utils/name_utils.py +43 -0
  21. abstract_utilities/directory_utils/size_utils.py +57 -0
  22. abstract_utilities/directory_utils/src/__init__.py +4 -0
  23. abstract_utilities/directory_utils/src/directory_utils.py +110 -0
  24. abstract_utilities/directory_utils/src/name_utils.py +43 -0
  25. abstract_utilities/directory_utils/src/size_utils.py +57 -0
  26. abstract_utilities/directory_utils/src/utils.py +116 -0
  27. abstract_utilities/directory_utils/utils.py +116 -0
  28. abstract_utilities/dynimport.py +1 -1
  29. abstract_utilities/env_utils/imports/imports.py +5 -3
  30. abstract_utilities/error_utils/__init__.py +2 -0
  31. abstract_utilities/error_utils/error_utils.py +25 -0
  32. abstract_utilities/error_utils/imports/__init__.py +2 -0
  33. abstract_utilities/error_utils/imports/imports.py +1 -0
  34. abstract_utilities/error_utils/imports/module_imports.py +1 -0
  35. abstract_utilities/file_utils/__init__.py +1 -2
  36. abstract_utilities/file_utils/file_utils/__init__.py +2 -0
  37. abstract_utilities/file_utils/file_utils/file_utils.py +3 -3
  38. abstract_utilities/file_utils/file_utils/find_collect.py +154 -0
  39. abstract_utilities/file_utils/file_utils/imports/__init__.py +3 -0
  40. abstract_utilities/file_utils/file_utils/imports/constants.py +39 -0
  41. abstract_utilities/file_utils/file_utils/imports/file_functions.py +10 -0
  42. abstract_utilities/file_utils/file_utils/imports/imports.py +39 -0
  43. abstract_utilities/file_utils/file_utils/imports/module_imports.py +14 -0
  44. abstract_utilities/file_utils/file_utils/imports.py +9 -0
  45. abstract_utilities/file_utils/file_utils/type_checks.py +92 -0
  46. abstract_utilities/file_utils/imports/__init__.py +1 -2
  47. abstract_utilities/file_utils/imports/classes.py +59 -55
  48. abstract_utilities/file_utils/imports/clean_imps.py +158 -0
  49. abstract_utilities/file_utils/imports/constants.py +84 -4
  50. abstract_utilities/file_utils/imports/file_functions.py +1 -1
  51. abstract_utilities/file_utils/imports/imports.py +40 -8
  52. abstract_utilities/file_utils/imports/module_imports.py +4 -5
  53. abstract_utilities/file_utils/module_imports.py +12 -0
  54. abstract_utilities/file_utils/src/__init__.py +7 -0
  55. abstract_utilities/file_utils/src/file_filters/__init__.py +1 -0
  56. abstract_utilities/file_utils/src/file_filters/ensure_utils.py +490 -0
  57. abstract_utilities/file_utils/src/file_filters/filter_params.py +150 -0
  58. abstract_utilities/file_utils/src/file_filters/filter_utils.py +78 -0
  59. abstract_utilities/file_utils/src/file_filters/predicate_utils.py +44 -0
  60. abstract_utilities/file_utils/src/file_filters.py +177 -0
  61. abstract_utilities/file_utils/src/file_reader.py +543 -0
  62. abstract_utilities/file_utils/src/file_utils.py +156 -0
  63. abstract_utilities/file_utils/src/filter_params.py +197 -0
  64. abstract_utilities/file_utils/src/find_collect.py +200 -0
  65. abstract_utilities/file_utils/src/find_content.py +210 -0
  66. abstract_utilities/file_utils/src/initFunctionsGen.py +293 -0
  67. abstract_utilities/file_utils/src/initFunctionsGens.py +280 -0
  68. abstract_utilities/file_utils/src/map_utils.py +29 -0
  69. abstract_utilities/file_utils/src/pdf_utils.py +300 -0
  70. abstract_utilities/file_utils/src/reader_utils/__init__.py +4 -0
  71. abstract_utilities/file_utils/src/reader_utils/directory_reader.py +53 -0
  72. abstract_utilities/file_utils/src/reader_utils/file_reader.py +543 -0
  73. abstract_utilities/file_utils/src/reader_utils/file_readers.py +376 -0
  74. abstract_utilities/file_utils/src/reader_utils/imports.py +18 -0
  75. abstract_utilities/file_utils/src/reader_utils/pdf_utils.py +300 -0
  76. abstract_utilities/file_utils/src/type_checks.py +91 -0
  77. abstract_utilities/file_utils (2)/__init__.py +2 -0
  78. abstract_utilities/file_utils (2)/imports/__init__.py +2 -0
  79. abstract_utilities/file_utils (2)/imports/constants.py +118 -0
  80. abstract_utilities/file_utils (2)/imports/imports/__init__.py +3 -0
  81. abstract_utilities/file_utils (2)/imports/imports/constants.py +119 -0
  82. abstract_utilities/file_utils (2)/imports/imports/imports.py +46 -0
  83. abstract_utilities/file_utils (2)/imports/imports/module_imports.py +8 -0
  84. abstract_utilities/file_utils (2)/imports/utils/__init__.py +3 -0
  85. abstract_utilities/file_utils (2)/imports/utils/classes.py +379 -0
  86. abstract_utilities/file_utils (2)/imports/utils/clean_imps.py +155 -0
  87. abstract_utilities/file_utils (2)/imports/utils/filter_utils.py +341 -0
  88. abstract_utilities/file_utils (2)/src/__init__.py +8 -0
  89. abstract_utilities/file_utils (2)/src/file_filters.py +155 -0
  90. abstract_utilities/file_utils (2)/src/file_reader.py +604 -0
  91. abstract_utilities/file_utils (2)/src/find_collect.py +258 -0
  92. abstract_utilities/file_utils (2)/src/initFunctionsGen.py +286 -0
  93. abstract_utilities/file_utils (2)/src/map_utils.py +28 -0
  94. abstract_utilities/file_utils (2)/src/pdf_utils.py +300 -0
  95. abstract_utilities/hash_utils/__init__.py +2 -0
  96. abstract_utilities/hash_utils/hash_utils.py +5 -0
  97. abstract_utilities/hash_utils/imports/__init__.py +2 -0
  98. abstract_utilities/hash_utils/imports/imports.py +1 -0
  99. abstract_utilities/hash_utils/imports/module_imports.py +0 -0
  100. abstract_utilities/history_utils/__init__.py +2 -0
  101. abstract_utilities/history_utils/history_utils.py +37 -0
  102. abstract_utilities/history_utils/imports/__init__.py +2 -0
  103. abstract_utilities/history_utils/imports/imports.py +1 -0
  104. abstract_utilities/history_utils/imports/module_imports.py +0 -0
  105. abstract_utilities/import_utils/__init__.py +2 -0
  106. abstract_utilities/import_utils/circular_import_finder.py +222 -0
  107. abstract_utilities/import_utils/circular_import_finder2.py +118 -0
  108. abstract_utilities/import_utils/imports/__init__.py +4 -0
  109. abstract_utilities/import_utils/imports/constants.py +2 -0
  110. abstract_utilities/import_utils/imports/imports.py +4 -0
  111. abstract_utilities/import_utils/imports/init_imports.py +3 -0
  112. abstract_utilities/import_utils/imports/module_imports.py +9 -0
  113. abstract_utilities/import_utils/imports/utils.py +30 -0
  114. abstract_utilities/import_utils/src/__init__.py +8 -0
  115. abstract_utilities/import_utils/src/clean_imports.py +278 -0
  116. abstract_utilities/import_utils/src/dot_utils.py +80 -0
  117. abstract_utilities/import_utils/src/extract_utils.py +46 -0
  118. abstract_utilities/import_utils/src/import_functions.py +110 -0
  119. abstract_utilities/import_utils/src/import_utils.py +349 -0
  120. abstract_utilities/import_utils/src/layze_import_utils/__init__.py +2 -0
  121. abstract_utilities/import_utils/src/layze_import_utils/lazy_utils.py +41 -0
  122. abstract_utilities/import_utils/src/layze_import_utils/nullProxy.py +37 -0
  123. abstract_utilities/import_utils/src/nullProxy.py +30 -0
  124. abstract_utilities/import_utils/src/package_utils/__init__.py +139 -0
  125. abstract_utilities/import_utils/src/package_utils/context_utils.py +27 -0
  126. abstract_utilities/import_utils/src/package_utils/import_collectors.py +53 -0
  127. abstract_utilities/import_utils/src/package_utils/path_utils.py +28 -0
  128. abstract_utilities/import_utils/src/package_utils/safe_import.py +27 -0
  129. abstract_utilities/import_utils/src/package_utils.py +140 -0
  130. abstract_utilities/import_utils/src/package_utilss/__init__.py +139 -0
  131. abstract_utilities/import_utils/src/package_utilss/context_utils.py +27 -0
  132. abstract_utilities/import_utils/src/package_utilss/import_collectors.py +53 -0
  133. abstract_utilities/import_utils/src/package_utilss/path_utils.py +28 -0
  134. abstract_utilities/import_utils/src/package_utilss/safe_import.py +27 -0
  135. abstract_utilities/import_utils/src/pkg_utils.py +194 -0
  136. abstract_utilities/import_utils/src/sysroot_utils.py +112 -0
  137. abstract_utilities/imports.py +21 -0
  138. abstract_utilities/json_utils/__init__.py +2 -0
  139. abstract_utilities/json_utils/imports/__init__.py +2 -0
  140. abstract_utilities/json_utils/imports/imports.py +2 -0
  141. abstract_utilities/json_utils/imports/module_imports.py +5 -0
  142. abstract_utilities/json_utils/json_utils.py +777 -0
  143. abstract_utilities/list_utils/__init__.py +2 -0
  144. abstract_utilities/list_utils/imports/__init__.py +2 -0
  145. abstract_utilities/list_utils/imports/imports.py +1 -0
  146. abstract_utilities/list_utils/imports/module_imports.py +0 -0
  147. abstract_utilities/list_utils/list_utils.py +202 -0
  148. abstract_utilities/log_utils/__init__.py +5 -0
  149. abstract_utilities/log_utils/abstractLogManager.py +64 -0
  150. abstract_utilities/log_utils/call_response.py +68 -0
  151. abstract_utilities/log_utils/imports/__init__.py +2 -0
  152. abstract_utilities/log_utils/imports/imports.py +7 -0
  153. abstract_utilities/log_utils/imports/module_imports.py +2 -0
  154. abstract_utilities/log_utils/log_file.py +162 -0
  155. abstract_utilities/log_utils/logger_callable.py +49 -0
  156. abstract_utilities/math_utils/__init__.py +2 -0
  157. abstract_utilities/math_utils/imports/__init__.py +2 -0
  158. abstract_utilities/math_utils/imports/imports.py +2 -0
  159. abstract_utilities/math_utils/imports/module_imports.py +1 -0
  160. abstract_utilities/math_utils/math_utils.py +208 -0
  161. abstract_utilities/parse_utils/__init__.py +2 -0
  162. abstract_utilities/parse_utils/imports/__init__.py +3 -0
  163. abstract_utilities/parse_utils/imports/constants.py +10 -0
  164. abstract_utilities/parse_utils/imports/imports.py +2 -0
  165. abstract_utilities/parse_utils/imports/module_imports.py +4 -0
  166. abstract_utilities/parse_utils/parse_utils.py +539 -0
  167. abstract_utilities/path_utils/__init__.py +2 -0
  168. abstract_utilities/path_utils/imports/__init__.py +3 -0
  169. abstract_utilities/path_utils/imports/imports.py +1 -0
  170. abstract_utilities/path_utils/imports/module_imports.py +8 -0
  171. abstract_utilities/path_utils/path_utils.py +248 -0
  172. abstract_utilities/path_utils.py +95 -14
  173. abstract_utilities/read_write_utils/__init__.py +1 -0
  174. abstract_utilities/read_write_utils/imports/__init__.py +2 -0
  175. abstract_utilities/read_write_utils/imports/imports.py +2 -0
  176. abstract_utilities/read_write_utils/imports/module_imports.py +5 -0
  177. abstract_utilities/read_write_utils/read_write_utils.py +439 -0
  178. abstract_utilities/read_write_utils.py +218 -10
  179. abstract_utilities/robust_reader/imports/imports.py +0 -9
  180. abstract_utilities/robust_readers/import_utils/__init__.py +1 -0
  181. abstract_utilities/robust_readers/import_utils/clean_imports.py +175 -0
  182. abstract_utilities/robust_readers/initFuncGen.py +10 -2
  183. abstract_utilities/safe_utils/__init__.py +2 -0
  184. abstract_utilities/safe_utils/imports/__init__.py +3 -0
  185. abstract_utilities/safe_utils/imports/imports.py +2 -0
  186. abstract_utilities/safe_utils/imports/module_imports.py +2 -0
  187. abstract_utilities/safe_utils/safe_utils.py +166 -0
  188. abstract_utilities/ssh_utils/__init__.py +3 -1
  189. abstract_utilities/ssh_utils/classes.py +0 -1
  190. abstract_utilities/ssh_utils/cmd_utils.py +207 -0
  191. abstract_utilities/ssh_utils/imports/__init__.py +3 -0
  192. abstract_utilities/ssh_utils/imports/imports.py +5 -0
  193. abstract_utilities/ssh_utils/imports/module_imports.py +6 -0
  194. abstract_utilities/ssh_utils/imports/utils.py +189 -0
  195. abstract_utilities/ssh_utils/imports.py +1 -2
  196. abstract_utilities/ssh_utils/pexpect_utils.py +11 -18
  197. abstract_utilities/ssh_utils/type_checks.py +92 -0
  198. abstract_utilities/string_clean.py +40 -1
  199. abstract_utilities/string_utils/__init__.py +4 -0
  200. abstract_utilities/string_utils/clean_utils.py +28 -0
  201. abstract_utilities/string_utils/eat_utils.py +103 -0
  202. abstract_utilities/string_utils/imports/__init__.py +3 -0
  203. abstract_utilities/string_utils/imports/imports.py +2 -0
  204. abstract_utilities/string_utils/imports/module_imports.py +2 -0
  205. abstract_utilities/string_utils/imports/utils.py +81 -0
  206. abstract_utilities/string_utils/replace_utils.py +27 -0
  207. abstract_utilities/string_utils.py +51 -0
  208. abstract_utilities/thread_utils/__init__.py +2 -0
  209. abstract_utilities/thread_utils/imports/__init__.py +2 -0
  210. abstract_utilities/thread_utils/imports/imports.py +2 -0
  211. abstract_utilities/thread_utils/imports/module_imports.py +2 -0
  212. abstract_utilities/thread_utils/thread_utils.py +140 -0
  213. abstract_utilities/time_utils/__init__.py +2 -0
  214. abstract_utilities/time_utils/imports/__init__.py +2 -0
  215. abstract_utilities/time_utils/imports/imports.py +3 -0
  216. abstract_utilities/time_utils/imports/module_imports.py +1 -0
  217. abstract_utilities/time_utils/time_utils.py +392 -0
  218. abstract_utilities/type_utils/__init__.py +7 -0
  219. abstract_utilities/type_utils/alpha_utils.py +59 -0
  220. abstract_utilities/type_utils/get_type.py +120 -0
  221. abstract_utilities/type_utils/imports/__init__.py +3 -0
  222. abstract_utilities/type_utils/imports/constants.py +134 -0
  223. abstract_utilities/type_utils/imports/imports.py +4 -0
  224. abstract_utilities/type_utils/imports/module_imports.py +25 -0
  225. abstract_utilities/type_utils/is_type.py +455 -0
  226. abstract_utilities/type_utils/make_type.py +126 -0
  227. abstract_utilities/type_utils/mime_types.py +68 -0
  228. abstract_utilities/type_utils/num_utils.py +19 -0
  229. abstract_utilities/type_utils/type_utils.py +104 -0
  230. abstract_utilities/type_utils.py +25 -1
  231. {abstract_utilities-0.2.2.442.dist-info → abstract_utilities-0.2.2.688.dist-info}/METADATA +1 -1
  232. abstract_utilities-0.2.2.688.dist-info/RECORD +288 -0
  233. imports/__init__.py +36 -0
  234. abstract_utilities-0.2.2.442.dist-info/RECORD +0 -82
  235. {abstract_utilities-0.2.2.442.dist-info → abstract_utilities-0.2.2.688.dist-info}/WHEEL +0 -0
  236. {abstract_utilities-0.2.2.442.dist-info → abstract_utilities-0.2.2.688.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,126 @@
1
+ from .imports import *
2
+ from .alpha_utils import *
3
+ from .num_utils import *
4
+ from .is_type import *
5
+ def make_list(obj:any) -> list:
6
+ """
7
+ Converts the input object to a list. If the object is already a list, it is returned as is.
8
+
9
+ Args:
10
+ obj: The object to convert.
11
+
12
+ Returns:
13
+ list: The object as a list.
14
+ """
15
+ if isinstance(obj,str):
16
+ if ',' in obj:
17
+ obj = obj.split(',')
18
+ if isinstance(obj,set) or isinstance(obj,tuple):
19
+ return list(obj)
20
+ if isinstance(obj, list):
21
+ return obj
22
+ return [obj]
23
+ def get_if_None(obj,default):
24
+ return obj if obj != None else default
25
+ def dict_check_conversion(obj:any) -> Union[dict,any]:
26
+ """
27
+ Converts the input object to a dictionary if possible.
28
+
29
+ Args:
30
+ obj: The object to convert.
31
+
32
+ Returns:
33
+ The object converted to a dictionary if possible, otherwise the original object.
34
+ """
35
+ import json
36
+
37
+ if is_dict_or_convertable(obj):
38
+ if is_dict(obj):
39
+ return obj
40
+ return json.loads(obj)
41
+
42
+ return obj
43
+
44
+
45
+ def make_list_lower(ls: list) -> list:
46
+ """
47
+ Converts all elements in a list to lowercase. Ignores None values.
48
+
49
+ Args:
50
+ ls: The list to convert.
51
+
52
+ Returns:
53
+ list: The list with all strings converted to lowercase.
54
+ """
55
+ return [item.lower() if is_instance(item, str) else item for item in ls]
56
+
57
+
58
+ def make_float(obj:Union[str,float,int]) -> float:
59
+ """
60
+ Converts the input object to a float.
61
+
62
+ Args:
63
+ x: The object to convert.
64
+
65
+ Returns:
66
+ float: The float representation of the object.
67
+ """
68
+ try:
69
+ return float(obj)
70
+ except (TypeError, ValueError):
71
+ return 1.0
72
+
73
+ def make_bool(obj: Union[bool, int, str]) -> Union[bool, str]:
74
+ """
75
+ Converts the input object to a boolean representation if possible.
76
+
77
+ The function attempts to convert various objects, including integers and strings, to their boolean equivalents.
78
+ If the conversion is not possible, the original object is returned.
79
+
80
+ Args:
81
+ obj: The object to be converted.
82
+
83
+ Returns:
84
+ bool or original type: The boolean representation of the object if conversion is possible. Otherwise, it returns the original object.
85
+
86
+ Examples:
87
+ make_bool("true") -> True
88
+ make_bool(1) -> True
89
+ make_bool("0") -> False
90
+ make_bool(2) -> 2
91
+ """
92
+ if is_instance(obj, bool):
93
+ return obj
94
+ if is_instance(obj, int):
95
+ if obj == 0:
96
+ return False
97
+ if obj == 1:
98
+ return True
99
+ if is_instance(obj, str):
100
+ if obj.lower() in ['0', "false"]:
101
+ return False
102
+ if obj.lower() in ['1', "true"]:
103
+ return True
104
+ return obj
105
+
106
+ def make_str(obj: any) -> str:
107
+ """
108
+ Converts the input object to a string.
109
+
110
+ Args:
111
+ obj: The object to convert.
112
+
113
+ Returns:
114
+ str: The string representation of the object.
115
+ """
116
+ return str(obj)
117
+ def convert_to_number(value):
118
+ value_str = str(value)
119
+ if is_number(value_str):
120
+ return float(value_str) if '.' in value_str else int(value_str)
121
+ return value_str
122
+
123
+ def makeInt(obj):
124
+ if is_number(obj):
125
+ return int(obj)
126
+ return obj
@@ -0,0 +1,68 @@
1
+ from .imports import *
2
+ # A big, but by no means exhaustive, map of extensions to mime‐types by category:
3
+ def get_media_map(categories=None):
4
+ """
5
+ Return a sub‐dict of MEDIA_TYPES for the given categories.
6
+ If categories is None or empty, return the whole MEDIA_TYPES.
7
+ """
8
+ if not categories:
9
+ return MEDIA_TYPES
10
+ cats = {str(c) for c in categories}
11
+ return {c: MEDIA_TYPES[c] for c in cats if c in MEDIA_TYPES}
12
+
13
+
14
+ def get_media_exts(categories=None):
15
+ """
16
+ Return a flat, sorted list of all extensions for the given categories.
17
+ """
18
+ media_map = get_media_map(categories)
19
+ return sorted({ext for exts in media_map.values() for ext in exts})
20
+
21
+
22
+ def confirm_type(path_or_ext, categories=None,**kwargs):
23
+ """
24
+ Given a file‐path or extension, return its media category (e.g. "image"), or None.
25
+ """
26
+ categories = categories or kwargs.get('media_types')
27
+ ext = Path(path_or_ext).suffix.lower()
28
+ media_map = get_media_map(categories)
29
+ for category, exts in media_map.items():
30
+ if ext in exts:
31
+ return category
32
+ return None
33
+
34
+
35
+ def is_media_type(path_or_ext, categories=None,**kwargs):
36
+ """
37
+ True if the given file‐path or extension belongs to one of the categories.
38
+ """
39
+ categories = categories or kwargs.get('media_types')
40
+ return confirm_type(path_or_ext, categories) is not None
41
+
42
+
43
+ def get_mime_type(path_or_ext):
44
+ """
45
+ Look up the MIME type by extension in MIME_TYPES; fall back to octet‐stream.
46
+ """
47
+ ext = Path(path_or_ext).suffix.lower()
48
+ for mapping in MIME_TYPES.values():
49
+ if ext in mapping:
50
+ return mapping[ext]
51
+ return 'application/octet-stream'
52
+
53
+
54
+ def get_all_file_types(categories=None, directory=None,**kwargs):
55
+ """
56
+ Recursively glob for files under `directory` whose extension belongs to `categories`.
57
+ Returns a list of full paths.
58
+ """
59
+ categories = categories or kwargs.get('media_types')
60
+ base = Path(directory)
61
+ if not base.is_dir():
62
+ return []
63
+ wanted = get_media_map(categories)
64
+ return [
65
+ str(p)
66
+ for p in base.rglob('*')
67
+ if p.is_file() and Path(p).suffix.lower() in {e for exts in wanted.values() for e in exts}
68
+ ]
@@ -0,0 +1,19 @@
1
+ from .imports import *
2
+ def get_num_list() -> list:
3
+ """
4
+ Generates a list of numbers as strings.
5
+
6
+ Returns:
7
+ list: A list of numbers as strings.
8
+ """
9
+ return list('0123456789')
10
+
11
+ def getInts(string=False,listObj=False):
12
+ obj=12345678909
13
+ if string:
14
+ obj = str(obj)
15
+ if listObj:
16
+ obj = list(obj)
17
+ return obj
18
+
19
+
@@ -0,0 +1,104 @@
1
+ """
2
+ type_utils.py
3
+
4
+ This module provides a collection of utility functions for type checking and conversion.
5
+ It includes functions to determine the type of an object, check if an object is a specific type,
6
+ and perform type conversions. These functions help simplify the process of handling different
7
+ types of data and ensure consistent behavior across different data types.
8
+
9
+ Usage:
10
+ import abstract_utilities.type_utils as type_utils
11
+
12
+ Functions:
13
+ - is_iterable(obj: any) -> bool
14
+ - is_number(obj: any) -> bool
15
+ - is_str(obj: any) -> bool
16
+ - is_int(obj: any) -> bool
17
+ - is_float(obj: any) -> bool
18
+ - is_bool(obj: any) -> bool
19
+ - is_list(obj: any) -> bool
20
+ - is_tuple(obj: any) -> bool
21
+ - is_set(obj: any) -> bool
22
+ - is_dict(obj: any) -> bool
23
+ - is_frozenset(obj: any) -> bool
24
+ - is_bytearray(obj: any) -> bool
25
+ - is_bytes(obj: any) -> bool
26
+ - is_memoryview(obj: any) -> bool
27
+ - is_range(obj: any) -> bool
28
+ - is_enumerate(obj: any) -> bool
29
+ - is_zip(obj: any) -> bool
30
+ - is_filter(obj: any) -> bool
31
+ - is_map(obj: any) -> bool
32
+ - is_property(obj: any) -> bool
33
+ - is_slice(obj: any) -> bool
34
+ - is_super(obj: any) -> bool
35
+ - is_type(obj: any) -> bool
36
+ - is_Exception(obj: any) -> bool
37
+ - is_none(obj: any) -> bool
38
+ - is_str_convertible_dict(obj: any) -> bool
39
+ - is_dict_or_convertable(obj: any) -> bool
40
+ - dict_check_conversion(obj: any) -> Union[dict, any]
41
+ - make_list(obj: any) -> list
42
+ - make_list_lower(ls: list) -> list
43
+ - make_float(obj: Union[str, float, int]) -> float
44
+ - make_bool(obj: Union[bool, int, str]) -> Union[bool, str]
45
+ - make_str(obj: any) -> str
46
+ - get_obj_obj(obj_type: str, obj: any) -> any
47
+ - get_len_or_num(obj: any) -> int
48
+ - get_types_list() -> list
49
+ - det_bool_F(obj: (tuple or list or bool) = False) -> bool
50
+ - det_bool_T(obj: (tuple or list or bool) = False) -> bool
51
+ - T_or_F_obj_eq(event: any = '', obj: any = '') -> bool
52
+
53
+ This module is part of the `abstract_utilities` package.
54
+
55
+ Author: putkoff
56
+ Date: 05/31/2023
57
+ Version: 0.1.2
58
+ """
59
+
60
+
61
+
62
+
63
+
64
+
65
+
66
+
67
+
68
+ # Function: is_number
69
+ # Function: is_str
70
+ # Function: is_int
71
+ # Function: get_type
72
+ # Function: is_float
73
+ # Function: is_object
74
+ # Function: is_bool
75
+ # Function: is_list
76
+ # Function: is_tuple
77
+ # Function: is_set
78
+ # Function: is_dict
79
+ # Function: is_frozenset
80
+ # Function: is_bytearray
81
+ # Function: is_bytes
82
+ # Function: is_memoryview
83
+ # Function: is_range
84
+ # Function: is_enumerate
85
+ # Function: is_zip
86
+ # Function: is_filter
87
+ # Function: is_map
88
+ # Function: is_property
89
+ # Function: is_slice
90
+ # Function: is_super
91
+ # Function: is_type
92
+ # Function: is_Exception
93
+ # Function: is_none
94
+ # Function: is_str_convertible_dict
95
+ # Function: is_dict_or_convertable
96
+ # Function: dict_check_conversion
97
+ # Function: make_list
98
+ # Function: make_list_lower
99
+ # Function: make_float
100
+ # Function: make_bool
101
+ # Function: make_str
102
+ # Function: get_obj_obj
103
+ # Function: get_len_or_num
104
+ # Function: get_types_list
@@ -60,6 +60,7 @@ import os
60
60
  from pathlib import Path
61
61
  from typing import Union
62
62
  from .list_utils import make_list
63
+
63
64
  # A big, but by no means exhaustive, map of extensions to mime‐types by category:
64
65
  MIME_TYPES = {
65
66
  'image': {
@@ -936,7 +937,30 @@ def is_any_instance(value):
936
937
  for each in [dict, list, int, float]:
937
938
  if is_instance(value, each):
938
939
  return True
939
-
940
+ def getAlphas(lower=True,capitalize=False,listObj=False):
941
+ obj = ''
942
+ alphas = 'abcdefghijklmoprstuvwxyz'
943
+ if lower:
944
+ obj+=alphas
945
+ if capitalize:
946
+ obj+=alphas.upper()
947
+ if listObj:
948
+ obj = list(obj)
949
+ return obj
950
+ def getInts(string=False,listObj=False):
951
+ obj=12345678909
952
+ if string:
953
+ obj = str(obj)
954
+ if listObj:
955
+ obj = list(obj)
956
+ return obj
957
+ def get_alpha_ints(ints=True,alpha=True,lower=True,capitalize=True,string=True,listObj=True):
958
+ objs = [] if listObj else ""
959
+ if ints:
960
+ objs+=getInts(string=string,listObj=listObj)
961
+ if alpha:
962
+ objs+=getAlphas(lower=lower,capitalize=capitalize,listObj=listObj)
963
+ return objs
940
964
  # Function: is_number
941
965
  # Function: is_str
942
966
  # Function: is_int
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: abstract_utilities
3
- Version: 0.2.2.442
3
+ Version: 0.2.2.688
4
4
  Summary: abstract_utilities is a collection of utility modules providing a variety of functions to aid in tasks such as data comparison, list manipulation, JSON handling, string manipulation, mathematical computations, and time operations.
5
5
  Home-page: https://github.com/AbstractEndeavors/abstract_utilities
6
6
  Author: putkoff