
    1)i                    *   d dl mZ d dlZd dlmZ ddlmZmZ daddZ	ddZ
 G d d	ej                        Zdd
Z ej                  ej                  ee
        ej                   ej                  e        ej"                  ej                  d       y)    )annotationsN)IO   )Image	ImageFilec                    | a y)z_
    Install application-specific BUFR image handler.

    :param handler: Handler object.
    N_handler)handlers    [/var/www/html/spbu.com/backend/venv/lib/python3.12/site-packages/PIL/BufrStubImagePlugin.pyregister_handlerr      s	     H    c                $    | j                  d      S )N)s   BUFRs   ZCZC)
startswith)prefixs    r   _acceptr   #   s    /00r   c                  $    e Zd ZdZdZddZddZy)BufrStubImageFileBUFRc                    | j                   J t        | j                   j                  d            sd}t        |      | j                   j	                  dt
        j                         d| _        d| _        y )N   zNot a BUFR fileF)r   r   )	fpr   readSyntaxErrorseekosSEEK_CUR_mode_size)selfmsgs     r   _openzBufrStubImageFile._open+   s\    ww"""tww||A'#Cc""R% 

r   c                    t         S )Nr	   )r"   s    r   _loadzBufrStubImageFile._load7   s    r   N)returnNone)r'   ImageFile.StubHandler | None)__name__
__module____qualname__formatformat_descriptionr$   r&    r   r   r   r   '   s    F
r   r   c                x    t         t        t         d      sd}t        |      t         j                  | ||       y )NsavezBUFR save handler not installed)r
   hasattrOSErrorr1   )imr   filenamer#   s       r   _saver6   ;   s0    wx8/clMM"b(#r   z.bufr)r   r)   r'   r(   )r   bytesr'   bool)r4   zImage.Imager   z	IO[bytes]r5   zstr | bytesr'   r(   )
__future__r   r   typingr    r   r   r
   r   r   StubImageFiler   r6   register_openr-   register_saveregister_extensionr/   r   r   <module>r@      s    # 	  1	// ($   %,,.? I   %,,e 4   *117 ;r   