mergestate: use collections.defaultdict(dict) for _stateextras
I want to use this _stateextras more in upcoming patches to store some commit
time related information. Using defaultdict will help in cleaner code around
checking whether a file exists or not.
Differential Revision: https://phab.mercurial-scm.org/D8919
--- a/mercurial/mergestate.py Mon Aug 03 23:41:50 2020 -0700
+++ b/mercurial/mergestate.py Mon Aug 10 15:09:44 2020 +0530
@@ -1,5 +1,6 @@
from __future__ import absolute_import
+import collections
import errno
import shutil
import struct
@@ -194,7 +195,7 @@
def reset(self, node=None, other=None, labels=None):
self._state = {}
- self._stateextras = {}
+ self._stateextras = collections.defaultdict(dict)
self._local = None
self._other = None
self._labels = labels
@@ -220,7 +221,7 @@
of on disk file.
"""
self._state = {}
- self._stateextras = {}
+ self._stateextras = collections.defaultdict(dict)
self._local = None
self._other = None
for var in ('localctx', 'otherctx'):
@@ -626,7 +627,7 @@
yield f
def extras(self, filename):
- return self._stateextras.setdefault(filename, {})
+ return self._stateextras[filename]
def _resolve(self, preresolve, dfile, wctx):
"""rerun merge process for file path `dfile`.