File: //lib64/python3.9/__pycache__/xdrlib.cpython-39.pyc
a
    �DOg  �                   @   st   d Z ddlZddlmZ ddlmZ g d�ZG dd� de�ZG dd	� d	e�Z	d
d� Z
G dd
� d
�ZG dd� d�ZdS )zRImplements (a subset of) Sun XDR -- eXternal Data Representation.
See: RFC 1014
�    N)�BytesIO��wraps)�Error�Packer�Unpacker�ConversionErrorc                   @   s(   e Zd ZdZdd� Zdd� Zdd� ZdS )	r   z�Exception class for this module. Use:
    except xdrlib.Error as var:
        # var has the Error instance for the exception
    Public ivars:
        msg -- contains the message
    c                 C   s
   || _ d S �N)�msg)�selfr
   � r   �/usr/lib64/python3.9/xdrlib.py�__init__   s    zError.__init__c                 C   s
   t | j�S r	   )�reprr
   �r   r   r   r
   �__repr__   s    zError.__repr__c                 C   s
   t | j�S r	   )�strr
   r   r   r   r
   �__str__   s    z
Error.__str__N)�__name__�
__module__�__qualname__�__doc__r   r   r   r   r   r   r
   r      s   	r   c                   @   s   e Zd ZdS )r   N)r   r   r   r   r   r   r
   r       s   r   c                    s   t � �� fdd��}|S )z5 Wrap any raised struct.errors in a ConversionError. c              
      sH   z� | |�W S  t jyB } zt|jd �d �W Y d }~n
d }~0 0 d S �Nr   )�struct�errorr   �args)r   �value�e��functionr   r
   �result&