46 |
46 |
47 # Bits of the `flags` byte inside a node in the file format |
47 # Bits of the `flags` byte inside a node in the file format |
48 DIRSTATE_V2_WDIR_TRACKED = 1 << 0 |
48 DIRSTATE_V2_WDIR_TRACKED = 1 << 0 |
49 DIRSTATE_V2_P1_TRACKED = 1 << 1 |
49 DIRSTATE_V2_P1_TRACKED = 1 << 1 |
50 DIRSTATE_V2_P2_INFO = 1 << 2 |
50 DIRSTATE_V2_P2_INFO = 1 << 2 |
51 DIRSTATE_V2_HAS_MODE_AND_SIZE = 1 << 3 |
51 DIRSTATE_V2_MODE_EXEC_PERM = 1 << 3 |
52 DIRSTATE_V2_HAS_MTIME = 1 << 4 |
52 DIRSTATE_V2_MODE_IS_SYMLINK = 1 << 4 |
53 DIRSTATE_V2_DIRECTORY = 1 << 5 |
53 DIRSTATE_V2_HAS_FALLBACK_EXEC = 1 << 5 |
54 DIRSTATE_V2_MODE_EXEC_PERM = 1 << 6 |
54 DIRSTATE_V2_FALLBACK_EXEC = 1 << 6 |
55 DIRSTATE_V2_MODE_IS_SYMLINK = 1 << 7 |
55 DIRSTATE_V2_HAS_FALLBACK_SYMLINK = 1 << 7 |
56 DIRSTATE_V2_EXPECTED_STATE_IS_MODIFIED = 1 << 8 |
56 DIRSTATE_V2_FALLBACK_SYMLINK = 1 << 8 |
57 DIRSTATE_V2_ALL_UNKNOWN_RECORDED = 1 << 9 |
57 DIRSTATE_V2_EXPECTED_STATE_IS_MODIFIED = 1 << 9 |
58 DIRSTATE_V2_ALL_IGNORED_RECORDED = 1 << 10 |
58 DIRSTATE_V2_HAS_MODE_AND_SIZE = 1 << 10 |
59 DIRSTATE_V2_HAS_FALLBACK_EXEC = 1 << 11 |
59 DIRSTATE_V2_HAS_MTIME = 1 << 11 |
60 DIRSTATE_V2_FALLBACK_EXEC = 1 << 12 |
60 DIRSTATE_V2_MTIME_SECOND_AMBIGUOUS = 1 << 12 |
61 DIRSTATE_V2_HAS_FALLBACK_SYMLINK = 1 << 13 |
61 DIRSTATE_V2_DIRECTORY = 1 << 13 |
62 DIRSTATE_V2_FALLBACK_SYMLINK = 1 << 14 |
62 DIRSTATE_V2_ALL_UNKNOWN_RECORDED = 1 << 14 |
63 DIRSTATE_V2_MTIME_SECOND_AMBIGUOUS = 1 << 15 |
63 DIRSTATE_V2_ALL_IGNORED_RECORDED = 1 << 15 |
64 |
64 |
65 |
65 |
66 @attr.s(slots=True, init=False) |
66 @attr.s(slots=True, init=False) |
67 class DirstateItem(object): |
67 class DirstateItem(object): |
68 """represent a dirstate entry |
68 """represent a dirstate entry |