File: //usr/lib/python3/dist-packages/hamcrest/library/number/__pycache__/iscloseto.cpython-310.pyc
o
(]^�
� @ s� d dl mZ d dlmZ d dlmZmZmZ d dlm Z d dl
mZ d dlm
Z
dZdZd Zeeef Zd
edefdd
�ZG dd� de e �Zed
edede
e fdd��Zed
edede
e fdd��Zdd� ZdS )� )�Decimal)�fabs)�Any�Union�overload)�BaseMatcher)�Description)�MatcherzJon ReidzCopyright 2011 hamcrest.orgzBSD, see License.txt�value�returnc C sN t | tttf�r
dS z
t| �d d d }W dS ty! Y dS Y dS )zKConfirm that 'value' can be treated numerically; duck-test accordingly
Tr � F)�
isinstance�float�complex�intr �ArithmeticError)r
�_� r �C/usr/lib/python3/dist-packages/hamcrest/library/number/iscloseto.py� isnumeric s r c sv e Zd Zdededdfdd�Zdedefdd �Zdedefd
d�Zdede ddf� fd
d�Z
de ddfdd�Z� ZS )� IsCloseTor
�deltar Nc C s0 t |�std��t |�std��|| _|| _d S )NzIsCloseTo value must be numericzIsCloseTo delta must be numeric)r � TypeErrorr
r )�selfr
r r r r �__init__ s
zIsCloseTo.__init__�itemc C s t |�sdS | �|�| jkS )NF)r �_diffr �r r r r r �_matches) s zIsCloseTo._matchesc C s t || j �S �N)r r
r r r r r . s zIsCloseTo._diff�mismatch_descriptionc sB t |�stt| ��||� d S | �|�}|�|��d��|� d S )Nz
differed by )r �superr �describe_mismatchr �append_description_of�append_text)r r r �actual_delta�� __class__r r r"