
    Rh$                         d Z ddlZ G d dej                        Z G d dej                        Z G d dej                        Z G d	 d
eej
                        Z G d deej                        Zd Zy)a   Generic Python Character Mapping Codec.

    Use this codec directly rather than through the automatic
    conversion mechanisms supplied by unicode() and .encode().


Written by Marc-Andre Lemburg (mal@lemburg.com).

(c) Copyright CNRI, All Rights Reserved. NO WARRANTY.

    Nc                   <    e Zd Zej                  Zej                  Zy)CodecN)__name__
__module____qualname__codecscharmap_encodeencodecharmap_decodedecode     (/usr/lib/python3.12/encodings/charmap.pyr   r      s     ""F""Fr   r   c                       e Zd ZddZddZy)IncrementalEncoderNc                 R    t         j                  j                  | |       || _        y N)r   r   __init__mappingselferrorsr   s      r   r   zIncrementalEncoder.__init__       !!**48r   c                 ^    t        j                  || j                  | j                        d   S Nr   )r   r	   r   r   r   inputfinals      r   r
   zIncrementalEncoder.encode   $    $$UDKKFqIIr   strictNFr   r   r   r   r
   r   r   r   r   r          Jr   r   c                       e Zd ZddZddZy)IncrementalDecoderNc                 R    t         j                  j                  | |       || _        y r   )r   r&   r   r   r   s      r   r   zIncrementalDecoder.__init__!   r   r   c                 ^    t        j                  || j                  | j                        d   S r   )r   r   r   r   r   s      r   r   zIncrementalDecoder.decode%   r   r   r    r"   r   r   r   r   r   r   r   r   r&   r&       r$   r   r&   c                       e Zd ZddZddZy)StreamWriterNc                 T    t         j                  j                  | ||       || _        y r   )r   r+   r   r   r   streamr   r   s       r   r   zStreamWriter.__init__*   !    $$T&8r   c                 D    t         j                  ||| j                        S r   )r   r
   r   r   r   r   s      r   r
   zStreamWriter.encode.       ||E&66r   r    r!   r#   r   r   r   r+   r+   (       7r   r+   c                       e Zd ZddZddZy)StreamReaderNc                 T    t         j                  j                  | ||       || _        y r   )r   r6   r   r   r-   s       r   r   zStreamReader.__init__3   r/   r   c                 D    t         j                  ||| j                        S r   )r   r   r   r1   s      r   r   zStreamReader.decode7   r2   r   r    r3   r)   r   r   r   r6   r6   1   r4   r   r6   c            	          t        j                  dt        j                  t        j                  t
        t        t        t              S )Ncharmap)namer
   r   incrementalencoderincrementaldecoderstreamwriterstreamreader)	r   	CodecInfor   r
   r   r   r&   r+   r6   r   r   r   getregentryrA   <   s2    ||||--!! r   )__doc__r   r   r   r&   r+   r6   rA   r   r   r   <module>rC      st   
 #FLL #J22 JJ22 J75,, 775,, 7	r   