##// END OF EJS Templates
dirstate: document dirstatemap interface...
Mark Thomas -
r35077:a0520226 default
parent child Browse files
Show More
@@ -127,8 +127,7 b' class dirstate(object):'
127 127
128 128 @propertycache
129 129 def _map(self):
130 '''Return the dirstate contents as a map from filename to
131 (state, mode, size, time).'''
130 """Return the dirstate contents (see documentation for dirstatemap)."""
132 131 self._map = dirstatemap(self._ui, self._opener, self._root)
133 132 return self._map
134 133
@@ -1196,6 +1195,44 b' class dirstate(object):'
1196 1195 self._opener.unlink(backupname)
1197 1196
1198 1197 class dirstatemap(object):
1198 """Map encapsulating the dirstate's contents.
1199
1200 The dirstate contains the following state:
1201
1202 - `identity` is the identity of the dirstate file, which can be used to
1203 detect when changes have occurred to the dirstate file.
1204
1205 - `parents` is a pair containing the parents of the working copy. The
1206 parents are updated by calling `setparents`.
1207
1208 - the state map maps filenames to tuples of (state, mode, size, mtime),
1209 where state is a single character representing 'normal', 'added',
1210 'removed', or 'merged'. It is accessed by treating the dirstate as a
1211 dict.
1212
1213 - `copymap` maps destination filenames to their source filename.
1214
1215 The dirstate also provides the following views onto the state:
1216
1217 - `nonnormalset` is a set of the filenames that have state other
1218 than 'normal', or are normal but have an mtime of -1 ('normallookup').
1219
1220 - `otherparentset` is a set of the filenames that are marked as coming
1221 from the second parent when the dirstate is currently being merged.
1222
1223 - `dirs` is a set-like object containing all the directories that contain
1224 files in the dirstate, excluding any files that are marked as removed.
1225
1226 - `filefoldmap` is a dict mapping normalized filenames to the denormalized
1227 form that they appear as in the dirstate.
1228
1229 - `dirfoldmap` is a dict mapping normalized directory names to the
1230 denormalized form that they appear as in the dirstate.
1231
1232 Once instantiated, the nonnormalset, otherparentset, dirs, filefoldmap and
1233 dirfoldmap views must be maintained by the caller.
1234 """
1235
1199 1236 def __init__(self, ui, opener, root):
1200 1237 self._ui = ui
1201 1238 self._opener = opener
General Comments 0
You need to be logged in to leave comments. Login now