orionis 0.296.0__py3-none-any.whl → 0.297.0__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.
Files changed (28) hide show
  1. orionis/metadata/framework.py +1 -1
  2. orionis/services/introspection/exceptions/reflection_attribute_error.py +26 -0
  3. orionis/services/introspection/instances/entities/class_attributes.py +20 -0
  4. orionis/services/introspection/instances/entities/class_method.py +41 -0
  5. orionis/services/introspection/instances/entities/class_property.py +24 -0
  6. orionis/services/introspection/instances/reflection_instance.py +1323 -0
  7. orionis/support/abstracts/entities/__init__.py +0 -0
  8. orionis/support/helpers/__init__.py +0 -0
  9. orionis/support/introspection/instances/contracts/reflection_instance.py +1 -1
  10. orionis/support/introspection/instances/reflection_instance.py +1 -1
  11. {orionis-0.296.0.dist-info → orionis-0.297.0.dist-info}/METADATA +1 -1
  12. {orionis-0.296.0.dist-info → orionis-0.297.0.dist-info}/RECORD +24 -21
  13. tests/support/inspection/fakes/fake_reflect_instance.py +20 -1
  14. orionis/support/introspection/instances/entities/class_attributes.py +0 -11
  15. orionis/support/introspection/instances/entities/class_method.py +0 -18
  16. orionis/support/introspection/instances/entities/class_parsed.py +0 -18
  17. orionis/support/introspection/instances/entities/class_property.py +0 -13
  18. /orionis/services/introspection/{abstracts → instances}/__init__.py +0 -0
  19. /orionis/services/introspection/{abstracts → instances}/entities/__init__.py +0 -0
  20. /orionis/{services/introspection/helpers → support/abstracts}/__init__.py +0 -0
  21. /orionis/{services/introspection → support}/abstracts/entities/abstract_class_attributes.py +0 -0
  22. /orionis/{services/introspection → support}/abstracts/reflect_abstract.py +0 -0
  23. /orionis/{services/introspection → support}/helpers/functions.py +0 -0
  24. /orionis/{services/introspection → support}/reflection.py +0 -0
  25. {orionis-0.296.0.dist-info → orionis-0.297.0.dist-info}/WHEEL +0 -0
  26. {orionis-0.296.0.dist-info → orionis-0.297.0.dist-info}/licenses/LICENCE +0 -0
  27. {orionis-0.296.0.dist-info → orionis-0.297.0.dist-info}/top_level.txt +0 -0
  28. {orionis-0.296.0.dist-info → orionis-0.297.0.dist-info}/zip-safe +0 -0
@@ -5,7 +5,7 @@
5
5
  NAME = "orionis"
6
6
 
7
7
  # Current version of the framework
8
- VERSION = "0.296.0"
8
+ VERSION = "0.297.0"
9
9
 
10
10
  # Full name of the author or maintainer of the project
11
11
  AUTHOR = "Raul Mauricio Uñate Castro"
@@ -0,0 +1,26 @@
1
+ class ReflectionAttributeError(Exception):
2
+ """
3
+ Base class for all reflection-related exceptions.
4
+ """
5
+
6
+ def __init__(self, msg: str):
7
+ """
8
+ Initialize the exception with a custom error message.
9
+
10
+ Parameters
11
+ ----------
12
+ msg : str
13
+ The error message describing the exception.
14
+ """
15
+ super().__init__(msg)
16
+
17
+ def __str__(self) -> str:
18
+ """
19
+ Return a string representation of the exception, including the class name and the first argument.
20
+
21
+ Returns
22
+ -------
23
+ str
24
+ A formatted string with the exception class name and the first argument.
25
+ """
26
+ return f"{self.__class__.__name__}: {self.args[0]}"
@@ -0,0 +1,20 @@
1
+ from dataclasses import dataclass
2
+ from typing import Any, Dict
3
+
4
+ @dataclass(frozen=True, kw_only=True)
5
+ class ClassAttributes:
6
+ """
7
+ Represents the attributes of a class instance.
8
+
9
+ Parameters
10
+ ----------
11
+ public : dict of str to Any
12
+ Public attributes of the class instance.
13
+ private : dict of str to Any
14
+ Private attributes of the class instance.
15
+ protected : dict of str to Any
16
+ Protected attributes of the class instance.
17
+ """
18
+ public: Dict[str, Any]
19
+ private: Dict[str, Any]
20
+ protected: Dict[str, Any]
@@ -0,0 +1,41 @@
1
+ from dataclasses import dataclass
2
+ from typing import List
3
+
4
+ @dataclass(frozen=False, kw_only=True)
5
+ class ClassMethod:
6
+ """
7
+ Represents the methods of a class instance.
8
+
9
+ Attributes
10
+ ----------
11
+ public : List[str]
12
+ List of public method names.
13
+ private : List[str]
14
+ List of private method names.
15
+ protected : List[str]
16
+ List of protected method names.
17
+ static : List[str]
18
+ List of static method names.
19
+ asynchronous : List[str]
20
+ List of asynchronous method names.
21
+ synchronous : List[str]
22
+ List of synchronous method names.
23
+ class_methods : List[str]
24
+ List of class method names.
25
+ asynchronous_static : List[str]
26
+ List of asynchronous static method names.
27
+ synchronous_static : List[str]
28
+ List of synchronous static method names.
29
+ magic : List[str]
30
+ List of magic method names.
31
+ """
32
+ public: List[str]
33
+ private: List[str]
34
+ protected: List[str]
35
+ static: List[str]
36
+ asynchronous: List[str]
37
+ synchronous: List[str]
38
+ class_methods: List[str]
39
+ asynchronous_static: List[str]
40
+ synchronous_static: List[str]
41
+ magic: List[str]
@@ -0,0 +1,24 @@
1
+ from dataclasses import dataclass
2
+ import inspect
3
+ from typing import Any
4
+
5
+ @dataclass(frozen=True, kw_only=True)
6
+ class ClassProperty:
7
+ """
8
+ Represents a property of a class with its metadata.
9
+
10
+ Parameters
11
+ ----------
12
+ name : str
13
+ The name of the property.
14
+ value : Any
15
+ The value assigned to the property.
16
+ signature : inspect.Signature
17
+ The signature of the property, typically used for callable properties.
18
+ doc : str
19
+ The documentation string associated with the property.
20
+ """
21
+ name: str
22
+ value: Any
23
+ signature: inspect.Signature
24
+ doc: str