%PDF- %PDF-
Direktori : /snap/core18/current/usr/lib/python3/dist-packages/__pycache__/ |
Current File : //snap/core18/current/usr/lib/python3/dist-packages/__pycache__/jsonpatch.cpython-36.pyc |
3 ��BY�h � @ s� d Z ddlmZ ddlZddlZddlZddlZddlZddlZddl Z yddl mZmZ W n$ e k r� ddlmZmZ Y nX ddlmZmZ dZdZdZd Ze jdBkr�eefZG dd� de�ZG d d� de�ZG dd� de�ZG dd� dee�Zdd� Zdd� Z e � e_!dCdd�Z"dd� Z#G dd� de$�Z%G dd� de$�Z&G d d!� d!e&�Z'G d"d#� d#e&�Z(G d$d%� d%e&�Z)G d&d'� d'e&�Z*G d(d)� d)e&�Z+G d*d+� d+e&�Z,dDd-d.�Z-d/d0� Z.dId2d3�Z/d4d5� Z0d6d7� Z1d8d9� Z2d:d;� Z3d<d=� Z4d>d?� Z5d@dA� Z6dS )Jz Apply JSON-Patches (RFC 6902) � )�unicode_literalsN)�MutableMapping�MutableSequence)�JsonPointer�JsonPointerExceptionu Stefan Kögl <stefan@skoegl.net>z1.16z0https://github.com/stefankoegl/python-json-patchzModified BSD License� c @ s e Zd ZdZdS )�JsonPatchExceptionzBase Json Patch exceptionN)�__name__� __module__�__qualname__�__doc__� r r �+/usr/lib/python3/dist-packages/jsonpatch.pyr @ s r c @ s e Zd ZdZdS )�InvalidJsonPatchz, Raised if an invalid JSON Patch is created N)r r r r r r r r r D s r c @ s e Zd ZdZdS )�JsonPatchConflicta Raised if patch could not be applied due to conflict situation such as: - attempt to add object key then it already exists; - attempt to operate with nonexistence object key; - attempt to insert value to array at position beyond of it size; - etc. N)r r r r r r r r r H s r c @ s e Zd ZdZdS )�JsonPatchTestFailedz A Test operation failed N)r r r r r r r r r Q s r c C s@ t jt�}x| D ]\}}|| j|� qW tdd� |j� D ��S )z'Convert duplicate keys values to lists.c s s. | ]&\}}|t |�d kr |d n|fV qdS )� r N)�len)�.0�key�valuesr r r � <genexpr>^ s zmultidict.<locals>.<genexpr>)�collections�defaultdict�list�append�dict�items)Z ordered_pairsZmdictr �valuer r r � multidictU s r c C sF t jdkrtjtj�j} ntjtj�j} d| kr6tjS t j tjtd�S )a� adds the object_pairs_hook parameter to json.load when possible The "object_pairs_hook" parameter is used to handle duplicate keys when loading a JSON object. This parameter does not exist in Python 2.6. This methods returns an unmodified json.load for Python 2.6 and a partial function with object_pairs_hook set to multidict for Python versions that support the parameter. r �object_pairs_hook)r )r r )�sys�version_info�inspectZ signature�json�loadZ parametersZ getargspec�args� functools�partialr )r&