serializable_mixin
T = TypeVar('T', bound='SerializableMixin')
module-attribute
SerializableMixin
Bases: Generic[T]
Source code in griptape/mixins/serializable_mixin.py
29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 |
|
module_name = field(default=Factory(lambda self: self.__class__.__module__, takes_self=True), kw_only=True, metadata={'serializable': False})
class-attribute
instance-attribute
type = field(default=Factory(lambda self: self.__class__.__name__, takes_self=True), kw_only=True, metadata={'serializable': True})
class-attribute
instance-attribute
__str__()
_import_cls_rec(module_name, class_name)
classmethod
Imports a class given a module name and class name.
Will recursively traverse up the module's path until it finds a
package that it can import class_name
from.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
module_name
|
str
|
The module name. |
required |
class_name
|
str
|
The class name. |
required |
Returns:
Type | Description |
---|---|
type
|
The imported class if found. Raises |
Source code in griptape/mixins/serializable_mixin.py
from_dict(data, *, types_overrides=None, serializable_overrides=None)
classmethod
Source code in griptape/mixins/serializable_mixin.py
from_json(data, *, types_overrides=None, serializable_overrides=None)
classmethod
Source code in griptape/mixins/serializable_mixin.py
get_schema(subclass_name=None, *, module_name=None, types_overrides=None, serializable_overrides=None)
classmethod
Generates a Marshmallow schema for the class.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
subclass_name
|
Optional[str]
|
An optional subclass name. Required if the class is abstract. |
None
|
module_name
|
Optional[str]
|
An optional module name. Defaults to the class's module. |
None
|
types_overrides
|
Optional[dict[str, type]]
|
An optional dictionary of field names to override type. |
None
|
serializable_overrides
|
Optional[dict[str, bool]]
|
An optional dictionary of field names to override serializable status. |
None
|
Source code in griptape/mixins/serializable_mixin.py
to_dict(*, types_overrides=None, serializable_overrides=None)
Source code in griptape/mixins/serializable_mixin.py
to_json(*, types_overrides=None, serializable_overrides=None)
Source code in griptape/mixins/serializable_mixin.py
_default(_self, obj)
Fallback method for JSONEncoder to handle custom serialization.