Current File : //usr/lib/python3/dist-packages/boto3/dynamodb/__pycache__/transform.cpython-312.pyc |
�
��em2 � � � d dl Z d dlmZ d dlmZ d dlmZmZ d dlm Z m
Z
d� Z G d� de� Z
d � Z G d
� d� Z G d� d
� Z G d� d� Z G d� d� Zy)� N)�collections_abc)�DocumentModifiedShape)�
ConditionBase�ConditionExpressionBuilder)�TypeDeserializer�TypeSerializerc �0 � | j dt � y )Nr )�insert�DynamoDBHighLevelResource)�base_classes�kwargss �:/usr/lib/python3/dist-packages/boto3/dynamodb/transform.py�register_high_level_interfacer s � �����4�5� c � � e Zd ZdZd� Zy)�_ForgetfulDictz�A dictionary that discards any items set on it. For use as `memo` in
`copy.deepcopy()` when every instance of a repeated object in the deepcopied
data structure should result in a separate copy.
c � � y �N� )�self�key�values r �__setitem__z_ForgetfulDict.__setitem__ s � �r N)�__name__�
__module__�__qualname__�__doc__r r r r r r s � ��
r r c �@ � t j | t � �� S )N)�memo)�copy�deepcopyr )�paramsr
s r �copy_dynamodb_paramsr# # s � ��=�=��n�&6�7�7r c � � � e Zd Z� fd�Z� xZS )r c � �� t �| � |i |�� | j j j j j dt d�� t � | _ | j j j j j d| j j d�� | j j j j j d| j j d�� | j j j j j d| j j d�� t d d
dd�
� }t dddd�
� }t dddd�
� }| j j j j j d|j d�� | j j j j j d|j d�� | j j j j j d|j d�� y )Nzprovide-client-params.dynamodbzdynamodb-create-params-copy)� unique_idzbefore-parameter-build.dynamodbzdynamodb-condition-expressionzdynamodb-attr-value-inputzafter-call.dynamodbzdynamodb-attr-value-output�AttributeValuezvalid DynamoDB typez�- The value of the attribute. The valid value types are listed in the :ref:`DynamoDB Reference Guide<ref_valid_dynamodb_types>`.z`'string'|123|Binary(b'bytes')|True|None|set(['string'])|set([123])|set([Binary(b'bytes')])|[]|{})�new_type�new_description�new_example_value�
KeyExpressionz?condition from :py:class:`boto3.dynamodb.conditions.Key` methodz�The condition(s) a key(s) must meet. Valid conditions are listed in the :ref:`DynamoDB Reference Guide<ref_dynamodb_conditions>`.zKey('mykey').eq('myvalue')�ConditionExpressionz@condition from :py:class:`boto3.dynamodb.conditions.Attr` methodz�The condition(s) an attribute(s) must meet. Valid conditions are listed in the :ref:`DynamoDB Reference Guide<ref_dynamodb_conditions>`.z!Attr('myattribute').eq('myvalue')z"docs.*.dynamodb.*.complete-sectionzdynamodb-attr-value-docszdynamodb-key-expression-docszdynamodb-cond-expression-docs)�super�__init__�meta�client�events�registerr# �TransformationInjector� _injector�inject_condition_expressions�inject_attribute_value_input�inject_attribute_value_outputr �(replace_documentation_for_matching_shape)r �argsr
�attr_value_shape_docs�key_expression_shape_docs�con_expression_shape_docs� __class__s �r r. z"DynamoDBHighLevelResource.__init__( s �� �
���$�)�&�)�
� � �����$�$�-�-�,� �3� .�
� 0�1���
� � �����$�$�-�-�-��N�N�7�7�5� .�
�
� � �����$�$�-�-�-��N�N�7�7�1� .�
�
� � �����$�$�-�-�!��N�N�8�8�2� .�
� !6��*�M�
>�!
�� %:���L� ?�%
�!� %:�!��L� F�%
�!�
� � �����$�$�-�-�0�!�J�J�0� .�
�
� � �����$�$�-�-�0�%�N�N�4� .�
�
� � �����$�$�-�-�0�%�N�N�5� .�
r )r r r r. �
__classcell__)r= s @r r r '