equal
deleted
inserted
replaced
9 from i18n import gettext as _ |
9 from i18n import gettext as _ |
10 from demandload import * |
10 from demandload import * |
11 demandload(globals(), "array bisect struct") |
11 demandload(globals(), "array bisect struct") |
12 |
12 |
13 class manifestdict(dict): |
13 class manifestdict(dict): |
14 def __init__(self, mapping={}, flags={}): |
14 def __init__(self, mapping=None, flags=None): |
|
15 if mapping is None: mapping = {} |
|
16 if flags is None: flags = {} |
15 dict.__init__(self, mapping) |
17 dict.__init__(self, mapping) |
16 self._flags = flags |
18 self._flags = flags |
17 def flags(self, f): |
19 def flags(self, f): |
18 return self._flags.get(f, "") |
20 return self._flags.get(f, "") |
19 def execf(self, f): |
21 def execf(self, f): |
25 def rawset(self, f, entry): |
27 def rawset(self, f, entry): |
26 self[f] = bin(entry[:40]) |
28 self[f] = bin(entry[:40]) |
27 fl = entry[40:-1] |
29 fl = entry[40:-1] |
28 if fl: self._flags[f] = fl |
30 if fl: self._flags[f] = fl |
29 def set(self, f, execf=False, linkf=False): |
31 def set(self, f, execf=False, linkf=False): |
30 if execf: self._flags[f] = "x" |
32 if linkf: self._flags[f] = "l" |
31 if linkf: self._flags[f] = "x" |
33 elif execf: self._flags[f] = "x" |
|
34 else: self._flags[f] = "" |
32 def copy(self): |
35 def copy(self): |
33 return manifestdict(dict.copy(self), dict.copy(self._flags)) |
36 return manifestdict(dict.copy(self), dict.copy(self._flags)) |
34 |
37 |
35 class manifest(revlog): |
38 class manifest(revlog): |
36 def __init__(self, opener, defversion=REVLOGV0): |
39 def __init__(self, opener, defversion=REVLOGV0): |