mercurial/pure/parsers.py
changeset 47012 d55b71393907
parent 46974 3c9208702db3
child 47034 0d8ff1f4ab0c
equal deleted inserted replaced
46992:5fa019ceb499 47012:d55b71393907
     8 from __future__ import absolute_import
     8 from __future__ import absolute_import
     9 
     9 
    10 import struct
    10 import struct
    11 import zlib
    11 import zlib
    12 
    12 
    13 from ..node import nullid, nullrev
    13 from ..node import (
       
    14     nullrev,
       
    15     sha1nodeconstants,
       
    16 )
    14 from .. import (
    17 from .. import (
    15     pycompat,
    18     pycompat,
    16     util,
    19     util,
    17 )
    20 )
    18 
    21 
    48     # Size of a C unsigned long long int, platform independent
    51     # Size of a C unsigned long long int, platform independent
    49     big_int_size = struct.calcsize(b'>Q')
    52     big_int_size = struct.calcsize(b'>Q')
    50     # Size of a C long int, platform independent
    53     # Size of a C long int, platform independent
    51     int_size = struct.calcsize(b'>i')
    54     int_size = struct.calcsize(b'>i')
    52     # An empty index entry, used as a default value to be overridden, or nullrev
    55     # An empty index entry, used as a default value to be overridden, or nullrev
    53     null_item = (0, 0, 0, -1, -1, -1, -1, nullid)
    56     null_item = (0, 0, 0, -1, -1, -1, -1, sha1nodeconstants.nullid)
    54 
    57 
    55     @util.propertycache
    58     @util.propertycache
    56     def entry_size(self):
    59     def entry_size(self):
    57         return self.index_format.size
    60         return self.index_format.size
    58 
    61 
    62         util.nouideprecwarn(msg, b'5.3', stacklevel=2)
    65         util.nouideprecwarn(msg, b'5.3', stacklevel=2)
    63         return self._nodemap
    66         return self._nodemap
    64 
    67 
    65     @util.propertycache
    68     @util.propertycache
    66     def _nodemap(self):
    69     def _nodemap(self):
    67         nodemap = nodemaputil.NodeMap({nullid: nullrev})
    70         nodemap = nodemaputil.NodeMap({sha1nodeconstants.nullid: nullrev})
    68         for r in range(0, len(self)):
    71         for r in range(0, len(self)):
    69             n = self[r][7]
    72             n = self[r][7]
    70             nodemap[n] = r
    73             nodemap[n] = r
    71         return nodemap
    74         return nodemap
    72 
    75 
   244     return cls(data, inline), (0, data)
   247     return cls(data, inline), (0, data)
   245 
   248 
   246 
   249 
   247 class Index2Mixin(object):
   250 class Index2Mixin(object):
   248     index_format = revlog_constants.INDEX_ENTRY_V2
   251     index_format = revlog_constants.INDEX_ENTRY_V2
   249     null_item = (0, 0, 0, -1, -1, -1, -1, nullid, 0, 0)
   252     null_item = (0, 0, 0, -1, -1, -1, -1, sha1nodeconstants.nullid, 0, 0)
   250 
   253 
   251     def replace_sidedata_info(self, i, sidedata_offset, sidedata_length):
   254     def replace_sidedata_info(self, i, sidedata_offset, sidedata_length):
   252         """
   255         """
   253         Replace an existing index entry's sidedata offset and length with new
   256         Replace an existing index entry's sidedata offset and length with new
   254         ones.
   257         ones.