comparison mercurial/manifest.py @ 39321:52860f52ed13

manifest: rename manifestlog._revlog to _rootstore Because it may not be a revlog. Differential Revision: https://phab.mercurial-scm.org/D4393
author Gregory Szorc <gregory.szorc@gmail.com>
date Wed, 15 Aug 2018 19:58:06 +0000
parents 57301ba47e66
children 5886384d1ac5
comparison
equal deleted inserted replaced
39320:57301ba47e66 39321:52860f52ed13
1505 usetreemanifest = opts.get('treemanifest', usetreemanifest) 1505 usetreemanifest = opts.get('treemanifest', usetreemanifest)
1506 cachesize = opts.get('manifestcachesize', cachesize) 1506 cachesize = opts.get('manifestcachesize', cachesize)
1507 1507
1508 self._treemanifests = usetreemanifest 1508 self._treemanifests = usetreemanifest
1509 1509
1510 self._revlog = repo._constructmanifest() 1510 self._rootstore = repo._constructmanifest()
1511 self._revlog._setupmanifestcachehooks(repo) 1511 self._rootstore._setupmanifestcachehooks(repo)
1512 self._narrowmatch = repo.narrowmatch() 1512 self._narrowmatch = repo.narrowmatch()
1513 1513
1514 # A cache of the manifestctx or treemanifestctx for each directory 1514 # A cache of the manifestctx or treemanifestctx for each directory
1515 self._dirmancache = {} 1515 self._dirmancache = {}
1516 self._dirmancache[''] = util.lrucachedict(cachesize) 1516 self._dirmancache[''] = util.lrucachedict(cachesize)
1535 1535
1536 if not self._narrowmatch.always(): 1536 if not self._narrowmatch.always():
1537 if not self._narrowmatch.visitdir(tree[:-1] or '.'): 1537 if not self._narrowmatch.visitdir(tree[:-1] or '.'):
1538 return excludeddirmanifestctx(tree, node) 1538 return excludeddirmanifestctx(tree, node)
1539 if tree: 1539 if tree:
1540 if self._revlog._treeondisk: 1540 if self._rootstore._treeondisk:
1541 if verify: 1541 if verify:
1542 # Side-effect is LookupError is raised if node doesn't 1542 # Side-effect is LookupError is raised if node doesn't
1543 # exist. 1543 # exist.
1544 self.getstorage(tree).rev(node) 1544 self.getstorage(tree).rev(node)
1545 1545
1549 _("cannot ask for manifest directory '%s' in a flat " 1549 _("cannot ask for manifest directory '%s' in a flat "
1550 "manifest") % tree) 1550 "manifest") % tree)
1551 else: 1551 else:
1552 if verify: 1552 if verify:
1553 # Side-effect is LookupError is raised if node doesn't exist. 1553 # Side-effect is LookupError is raised if node doesn't exist.
1554 self._revlog.rev(node) 1554 self._rootstore.rev(node)
1555 1555
1556 if self._treemanifests: 1556 if self._treemanifests:
1557 m = treemanifestctx(self, '', node) 1557 m = treemanifestctx(self, '', node)
1558 else: 1558 else:
1559 m = manifestctx(self, node) 1559 m = manifestctx(self, node)
1565 self._dirmancache[tree] = mancache 1565 self._dirmancache[tree] = mancache
1566 mancache[node] = m 1566 mancache[node] = m
1567 return m 1567 return m
1568 1568
1569 def getstorage(self, tree): 1569 def getstorage(self, tree):
1570 return self._revlog.dirlog(tree) 1570 return self._rootstore.dirlog(tree)
1571 1571
1572 def clearcaches(self, clear_persisted_data=False): 1572 def clearcaches(self, clear_persisted_data=False):
1573 self._dirmancache.clear() 1573 self._dirmancache.clear()
1574 self._revlog.clearcaches(clear_persisted_data=clear_persisted_data) 1574 self._rootstore.clearcaches(clear_persisted_data=clear_persisted_data)
1575 1575
1576 def rev(self, node): 1576 def rev(self, node):
1577 return self._revlog.rev(node) 1577 return self._rootstore.rev(node)
1578 1578
1579 @interfaceutil.implementer(repository.imanifestrevisionwritable) 1579 @interfaceutil.implementer(repository.imanifestrevisionwritable)
1580 class memmanifestctx(object): 1580 class memmanifestctx(object):
1581 def __init__(self, manifestlog): 1581 def __init__(self, manifestlog):
1582 self._manifestlog = manifestlog 1582 self._manifestlog = manifestlog