o
    Žõ±jg  ã                   @   s6   d dl Z d dlZd dlZd dlZG dd„ de jƒZdS )é    Nc                   @   s   e Zd ZdZdd„ ZdS )ÚUniversalEncoderz”
	Used to override the default json encoder to provide a direct serialization for formats
	that the default json encoder is incapable to serialize
	c                 C   sb   t |tjƒr
| ¡ S t |tjƒr|jS t |ttjtj	fƒr!t
|ƒS t|dƒr*| ¡ S tj | |¡S )NÚto_dict)Ú
isinstanceÚdatetimeÚ	isoformatÚenumÚEnumÚvalueÚ	ExceptionÚ	ipaddressÚIPv4AddressÚIPv6AddressÚstrÚhasattrr   ÚjsonÚJSONEncoderÚdefault)ÚselfÚobj© r   ú”/root/aizidognhua/tmp/workspace/projects/ec89d86c-575f-41c9-af57-ac45cbdbf775/venv/lib/python3.10/site-packages/aiosmb/commons/utils/univeraljson.pyr      s   
zUniversalEncoder.defaultN)Ú__name__Ú
__module__Ú__qualname__Ú__doc__r   r   r   r   r   r      s    r   )r   r   r   r   r   r   r   r   r   r   Ú<module>   s
    