in src/sagemaker_core/main/utils.py [0:0]
def serialize(value: Any) -> Any:
"""
Serialize an object recursively by converting all objects to JSON-serializable types
Args:
value (Any): The object to be serialized
Returns:
Any: The serialized object
"""
if value is None or isinstance(value, Unassigned):
return None
elif isinstance(value, Dict):
# if the value is a dict, use _serialize_dict() to serialize it recursively
return _serialize_dict(value)
elif isinstance(value, List):
# if the value is a dict, use _serialize_list() to serialize it recursively
return _serialize_list(value)
elif is_not_primitive(value):
# if the value is a dict, use _serialize_shape() to serialize it recursively
return _serialize_shape(value)
else:
return value