Edit File: cells.cpython-311.pyc
� Q�d� � �6 � d dl Z d dlmZ d dlmZmZ ddlmZ e j d� � j Z ed� � ded efd �� � Z e fdedeegef d efd�Z ed� � � ded efd�� � Z ed� � � ded efd�� � Zdeded efd�Zddededed ee fd�Zedk rd e ed� � � � edd� � D ] Z ee� � � eddd� � D ]*Z e ede� � dz � � edez � � �)dS dS ) � N)� lru_cache)�Callable�List� )�CELL_WIDTHSu ^[ -o ˿Ͱ-҂]*$i �text�returnc �L �� t �t �fd�| D � � � � }|S )a/ Get the number of cells required to display text. This method always caches, which may use up a lot of memory. It is recommended to use `cell_len` over this method. Args: text (str): Text to display. Returns: int: Get the number of cells required to display text. c 3 �. �K � | ]} �|� � V � �d S �N� ��.0� character� _get_sizes ��g/builddir/build/BUILD/cloudlinux-venv-1.0.2/venv/lib/python3.11/site-packages/pip/_vendor/rich/cells.py� <genexpr>z"cached_cell_len.<locals>.<genexpr> �- �� � � �@�@�i�Y�Y�y�)�)�@�@�@�@�@�@� )�get_character_cell_size�sum)r � total_sizer s @r �cached_cell_lenr s2 �� � (�I��@�@�@�@�4�@�@�@�@�@�J��r � _cell_lenc � �� t | � � dk r || � � S t �t �fd�| D � � � � }|S )z�Get the number of cells required to display text. Args: text (str): Text to display. Returns: int: Get the number of cells required to display text. i c 3 �. �K � | ]} �|� � V � �d S r r r s �r r zcell_len.<locals>.<genexpr>) r r )�lenr r )r r r r s @r �cell_lenr sO �� � �4�y�y�3����y�����'�I��@�@�@�@�4�@�@�@�@�@�J��r )�maxsizer c �: � t t | � � � � S )z�Get the cell size of a character. Args: character (str): A single character. Returns: int: Number of cells (0, 1 or 2) occupied by that character. )�_get_codepoint_cell_size�ord)r s r r r - s � � $�C� �N�N�3�3�3r � codepointc �� � t }d}t |� � dz }||z dz } || \ }}}| |k r|dz }n| |k r|dz }n |dk rdn|S ||k rn ||z dz }�>dS )z�Get the cell size of a character. Args: codepoint (int): Codepoint of a character. Returns: int: Number of cells (0, 1 or 2) occupied by that character. r r � T���)r r )r# �_table�lower_bound�upper_bound�index�start�end�widths r r! r! : s� � � �F��K��f�+�+��/�K� �;� &�1�,�E� 1�"�5�M���s�E��u����!�)�K�K� ��_�_��!�)�K�K�����1�1��.���$�$���{�*�q�0�� 1� �1r �totalc �� � t | � � r*t | � � }||k r| d||z z z S | d|� S |dk rdS t | � � }||k r| S ||k r| d||z z z S d}t | � � } ||z dz }| d|dz � }t |� � }||dz k r&t |d � � dk r |dd� dz S ||k r|S ||k r|}n|}�g) z?Set the length of a string to fit within given number of cells.� Nr � Tr% r r&