HEX
Server: Apache
System: Linux pdx1-shared-a1-38 6.6.104-grsec-jammy+ #3 SMP Tue Sep 16 00:28:11 UTC 2025 x86_64
User: mmickelson (3396398)
PHP: 8.1.31
Disabled: NONE
Upload Files
File: //usr/lib/python3/dist-packages/mercurial/revlogutils/__pycache__/revlogv0.cpython-310.pyc
o

�]Lby�@s�ddlmZddlmZddlmZddlmZddlm	Z	mZm
Z
mZmZddlm
Zd	d
�Zdd�ZGd
d�de�Zdd�ZdS)�)�absolute_import�)�sha1nodeconstants�)�INDEX_ENTRY_V0)�_)�error�node�pycompat�revlogutils�util)�nodemapcCst|d?�S)N���int��q�r�@/usr/lib/python3/dist-packages/mercurial/revlogutils/revlogv0.py�	getoffset�rcCst|d@�S)Ni��rrrrr�gettype!rrc	s�eZdZdZejZejdde	j
e	j
e	j
e	j
ejd�Z
ejdd��Zdd�Zdd�Zd	d
�Z�fdd�Z�fd
d�Zdd�Zdd�Zdd�Zdd�Z�ZS)�revlogoldindexr��data_offset�data_compressed_length�data_delta_base�link_rev�parent_rev_1�parent_rev_2�node_idcCs>t�tjtji�}tdt|��D]}||d}|||<q|S)Nr�)�nodemaputil�NodeMapr�nullidr	�nullrev�range�len)�selfr
�r�nrrr�_nodemap2s

zrevlogoldindex._nodemapcCs
||jvS)z*return True if the node exist in the index�r+�r(r	rrr�has_node:s
zrevlogoldindex.has_nodecCs
|j|S)zQreturn a revision for a node

        If the node is unknown, raise a RevlogErrorr,r-rrr�rev>s
zrevlogoldindex.revcCs|j�|�S)zIreturn a revision for a node

        If the node is unknown, return None)r+�getr-rrr�get_revDszrevlogoldindex.get_revcs&t|�|j|d<tt|��|�dS)Nr!)r'r+�superr�append)r(�tup��	__class__rrr3Jszrevlogoldindex.appendcsbt|t�r|jdkr|jdurtd��t�|jt|��D]
}|j	||d=qt
t|��|�dS)N���s.deleting slices only supports a:-1 with step 1r!)
�
isinstance�slice�stop�step�
ValueErrorr
�xrange�startr'r+r2r�__delitem__)r(�ir)r5rrr?Ns
zrevlogoldindex.__delitem__cCs|j�dd�dS)Nr+)�__dict__�pop)r(rrr�clearcachesUszrevlogoldindex.clearcachescCs|dkr|jSt�||�S)Nr7)�	null_item�list�__getitem__)r(r@rrrrFXszrevlogoldindex.__getitem__cCsdS)z!pack header information in binary�r)r(�headerrrr�pack_header]szrevlogoldindex.pack_headercCsn||}t|d�rt�td���t|d�|d|d|d||dd||dd|df}tj|�S)	z4return the raw binary string representing a revisionrs'index entry flags need revlog version 1r���r!�)rr�RevlogErrorrrr�pack)r(r/�entry�e2rrr�entry_binaryas�
�
	zrevlogoldindex.entry_binary)�__name__�
__module__�__qualname__�rust_ext_compatr�size�
entry_sizerrPr	r%rr$rDr�
propertycacher+r.r/r1r3r?rCrFrIrR�
__classcell__rrr5rr%s.�

rc
Cs�tj}g}t�tjtji�}d}}t|�}|||krf||||�}||7}t�|�}	t	j
|	d|	d|	d|	d|�|	dtj�|�|	dtj�|	dd�}
|�|
�|||	d<|d7}|||kst
|�}|dfS)	NrrrrJrKrLrMr)rrWr"r#r	r$r%r'�unpackrrPr0r3r)�data�inline�s�indexr
r*�off�l�cur�erQrrr�parse_index_v0ts0
�
	�rdN)�
__future__rr	r�	constantsr�i18nr�rr
rrr
r"rrrErrdrrrr�<module>sO