
     iR                     T    d dl mZ ddlmZ d dlZd dlZ G d dej                  ZdS )    )safeEval   )DefaultTableNc                   B    e Zd ZdZd Zd Zd Zd Zd Zd Z	d Z
d	 Zd
S )table__c_v_tzControl Value Table

    The Control Value Table holds a list of values that can be referenced
    by TrueType font instructions.

    See also https://learn.microsoft.com/en-us/typography/opentype/spec/cvt
    c                     t          j         d          }|                    |           t          j        dk    r|                                 || _        d S )Nhbig)array	frombytessys	byteorderbyteswapvalues)selfdatattFontr   s       g/srv/www/vhosts/g4struct/public_html/venv/lib/python3.11/site-packages/fontTools/ttLib/tables/_c_v_t.py	decompileztable__c_v_t.decompile   sM    S!!=E!!OO    c                     t          | d          sdS | j        d d          }t          j        dk    r|                                 |                                S )Nr   r   r
   )hasattrr   r   r   r   tobytes)r   r   r   s      r   compileztable__c_v_t.compile   sU    tX&& 	3QQQ=E!!OO~~r   c                     t          | j                  D ]1\  }}|                    d||           |                                 2d S )Ncv)valueindex)	enumerater   	simpletagnewline)r   writerr   ir   s        r   toXMLztable__c_v_t.toXML   sW    !$+.. 	 	HAuTa888NN	 	r   c                 X   t          | d          st          j        d          | _        |dk    rzt          |d                   }t          |d                   }t	          d|z   t          | j                  z
            D ]}| j                            d           || j        |<   d S d S )Nr   r	   r   r   r   r   r   )r   r   r   r   rangelenappend)r   nameattrscontentr   r   r   r#   s           r   fromXMLztable__c_v_t.fromXML$   s    tX&& 	++c**DK4<<U7^,,EU7^,,E1u9s4;'7'7788 & &""1%%%%!&DK <r   c                 *    t          | j                  S N)r'   r   )r   s    r   __len__ztable__c_v_t.__len__.   s    4;r   c                     | j         |         S r.   r   r   r   s     r   __getitem__ztable__c_v_t.__getitem__1   s    {5!!r   c                     || j         |<   d S r.   r1   )r   r   r   s      r   __setitem__ztable__c_v_t.__setitem__4   s    "Er   c                     | j         |= d S r.   r1   r2   s     r   __delitem__ztable__c_v_t.__delitem__7   s    Kr   N)__name__
__module____qualname____doc__r   r   r$   r,   r/   r3   r5   r7    r   r   r   r      s                  
' ' '     " " "# # #    r   r   )fontTools.misc.textToolsr    r   r   r   r   r<   r   r   <module>r?      sr    - - - - - -       



 1 1 1 1 1<, 1 1 1 1 1r   