B
    &‹dL  ã               @   sF   d dl Z e  d¡ZG dd„ deƒZG dd„ deƒZG dd„ deƒZdS )	é    Nz	[\.\[\]]+c               @   s   e Zd ZdZdS )ÚJsonSchemaExceptionz7
    Base exception of ``fastjsonschema`` library.
    N)Ú__name__Ú
__module__Ú__qualname__Ú__doc__© r   r   úf/work/yifan.wang/ringdown/master-ringdown-env/lib/python3.7/site-packages/fastjsonschema/exceptions.pyr      s   r   c                   s:   e Zd ZdZd	‡ fdd„	Zedd„ ƒZedd„ ƒZ‡  ZS )
ÚJsonSchemaValueExceptionaÏ  
    Exception raised by validation function. Available properties:

     * ``message`` containing human-readable information what is wrong (e.g. ``data.property[index] must be smaller than or equal to 42``),
     * invalid ``value`` (e.g. ``60``),
     * ``name`` of a path in the data structure (e.g. ``data.property[index]``),
     * ``path`` as an array in the data structure (e.g. ``['data', 'property', 'index']``),
     * the whole ``definition`` which the ``value`` has to fulfil (e.g. ``{'type': 'number', 'maximum': 42}``),
     * ``rule`` which the ``value`` is breaking (e.g. ``maximum``)
     * and ``rule_definition`` (e.g. ``42``).

    .. versionchanged:: 2.14.0
        Added all extra properties.
    Nc                s.   t ƒ  |¡ || _|| _|| _|| _|| _d S )N)ÚsuperÚ__init__ÚmessageÚvalueÚnameÚ
definitionÚrule)Úselfr   r   r   r   r   )Ú	__class__r   r   r      s    z!JsonSchemaValueException.__init__c             C   s   dd„ t  | j¡D ƒS )Nc             S   s   g | ]}|d kr|‘qS )Ú r   )Ú.0Úitemr   r   r   ú
<listcomp>'   s    z1JsonSchemaValueException.path.<locals>.<listcomp>)ÚSPLIT_REÚsplitr   )r   r   r   r   Úpath%   s    zJsonSchemaValueException.pathc             C   s   | j r| jsd S | j | j ¡S )N)r   r   Úget)r   r   r   r   Úrule_definition)   s    z(JsonSchemaValueException.rule_definition)NNNN)	r   r   r   r   r   Úpropertyr   r   Ú__classcell__r   r   )r   r   r	      s   r	   c               @   s   e Zd ZdZdS )ÚJsonSchemaDefinitionExceptionz?
    Exception raised by generator of validation function.
    N)r   r   r   r   r   r   r   r   r   0   s   r   )ÚreÚcompiler   Ú
ValueErrorr   r	   r   r   r   r   r   Ú<module>   s   
#