Dynamo conversion
async_boto.utils.dynamo_conversion
DYNAMODB_ENCODERS
module-attribute
DYNAMODB_ENCODERS = {bool: lambda v: {'BOOL': v}, str: serialize_as_string, int: serialize_as_number, float: serialize_as_number, type(None): lambda v: {'NULL': True}, list: serialize_list, tuple: serialize_list, dict: serialize_dict, set: serialize_set, Set: serialize_set, bytes: lambda b: {'B': b}, bytearray: lambda ba: {'B': bytes(ba)}, Decimal: serialize_as_number, date: lambda d: serialize_as_string(isoformat()), datetime: lambda d: serialize_as_string(isoformat()), time: lambda d: serialize_as_string(isoformat()), timedelta: lambda td: serialize_as_number(total_seconds()), Enum: lambda o: serialize_as_string(value), UUID: serialize_as_string}
DYNAMODB_TYPES
module-attribute
DYNAMODB_TYPES = {'NULL': lambda v, serialize: None, 'BOOL': lambda v, serialize: v, 'N': lambda v, serialize: Decimal(v), 'S': lambda v, serialize: v, 'B': lambda v, serialize: v, 'NS': lambda v, serialize: set(Decimal(item) for item in v), 'SS': lambda v, serialize: set(v), 'BS': lambda v, serialize: set(v), 'L': lambda v, serialize: [serialize(item) for item in v], 'M': lambda v, serialize: {k_: serialize(v_)for (k_, v_) in items()}}
example_dict
module-attribute
example_dict = {'id': '123', 'name': 'Item Name', 'price': 19.99, 'tags': ['tag1', 'tag2'], 'details': {'color': 'red', 'size': 'M'}, 'is_available': True, 'quantity': None}
serialize_dict
serialize_dict(v, serialize)
Source code in async_boto/utils/dynamo_conversion.py
9 10 | |
serialize_list
serialize_list(v, serialize)
Source code in async_boto/utils/dynamo_conversion.py
13 14 | |
serialize_set
serialize_set(v)
Source code in async_boto/utils/dynamo_conversion.py
17 18 19 20 21 22 23 24 25 26 27 28 29 30 | |
serialize_as_string
serialize_as_string(v)
Source code in async_boto/utils/dynamo_conversion.py
33 34 | |
serialize_as_number
serialize_as_number(v)
Source code in async_boto/utils/dynamo_conversion.py
37 38 | |
decode_dynamodb_primative
decode_dynamodb_primative(value)
Source code in async_boto/utils/dynamo_conversion.py
77 78 79 80 81 82 83 84 85 86 | |
decode_dynamodb_json
decode_dynamodb_json(v)
Source code in async_boto/utils/dynamo_conversion.py
89 90 91 92 93 94 95 96 97 98 99 | |
to_dynamodb_json
to_dynamodb_json(python_dict)
Convert a Python dictionary to a DynamoDB JSON format.
:param python_dict: The Python dictionary to convert. :return: A dictionary in DynamoDB JSON format.
Source code in async_boto/utils/dynamo_conversion.py
102 103 104 105 106 107 108 109 110 111 112 113 114 115 | |
from_dynamodb_json
from_dynamodb_json(dynamodb_json)
Convert a DynamoDB JSON format dictionary back to a Python dictionary.
:param dynamodb_json: A dictionary in DynamoDB JSON format. :return: A Python dictionary.
Source code in async_boto/utils/dynamo_conversion.py
118 119 120 121 122 123 124 125 126 127 128 | |