관리-도구
편집 파일: hbisect.pyc
� Hq�Qc @ s� d d l Z d d l Z d d l m Z d d l m Z m Z d d l Z d � Z d � Z d � Z d � Z d � Z d � Z d S( i����N( t _( t shortt hexc s� � j � t g | d D] } � j | � ^ q � } � � f d � } t } | | d | d � \ } } | s� t } | | d | d � \ } } n � j | � } | st | d � d k r� t | d � d k r� t j t d � � � n t j t d � | t | � f � � n i } t j | g � } g } x� | r�| j � } | | g k r8| j | � x` � | � D]O } | d k rt| | k r�| | j | � q�| g | | <| j | � qtqtWq8q8W| j � t | � } g | D]$ } | | k r�| | k r�| ^ q�} | d k s(| rQg | D] } � j | � ^ q/d | f S| d } d } d } t � } xB| D]:} | | k r�| j | j | g � � qwn | | p�| g } d | | <t | � } | | } t | | � } | | k r!| | k r!| } | } | | k r!Pq!n | | k rX| | k rX| j | j | g � � qwn xV | j | g � D]B } | | r�t t | | | � � | | <qk| | g | | <qkWqwW| d k s�t � � j | � } | g | | f S( s� find the next node (if any) for testing during a bisect search. returns a (nodes, number, good) tuple. 'nodes' is the final result of the bisect if 'number' is 0. Otherwise 'number' indicates the remaining possible candidates for the search and 'nodes' contains the next bisect target. 'good' is True if bisect is searching for a first good changeset, False if searching for a first bad one. t skipc sp t g | D] } � j | � ^ q � } g | D] } � j | � ^ q/ } t | � } d g t � � d } x | D] } g | | <qt WxO � j | d � D]: } x1 � | � D]# } | | g k r� g | | <q� q� Wq� Wx | D] } d | | <q� WxT � j t � � | � D]: } | | d k rx! � | � D] } d | | <q1WqqW| | d k rf| d f S| | f S( Ni ( t mint revt Nonet lent revs( t badt goodt nt badrevt goodrevst goodrevt ancestorsR t prev( t changelogt clparents( s7 /usr/lib64/python2.7/site-packages/mercurial/hbisect.pyt buildancestors s&