comparison rust/hg-core/src/dirstate_tree/dispatch.rs @ 47122:e3cebe96c0fc

dirstate-tree: Add "non normal" and "from other parent" sets Unlike the other DirstateMap implementation, these sets are not materialized separately in memory. Instead we traverse the main tree. Differential Revision: https://phab.mercurial-scm.org/D10492
author Simon Sapin <simon.sapin@octobus.net>
date Fri, 09 Apr 2021 13:13:19 +0200
parents 5d62243c7732
children 33e5511b571a
comparison
equal deleted inserted replaced
47121:7dfc598ddcfe 47122:e3cebe96c0fc
43 43
44 fn clear_ambiguous_times(&mut self, filenames: Vec<HgPathBuf>, now: i32); 44 fn clear_ambiguous_times(&mut self, filenames: Vec<HgPathBuf>, now: i32);
45 45
46 fn non_normal_entries_contains(&mut self, key: &HgPath) -> bool; 46 fn non_normal_entries_contains(&mut self, key: &HgPath) -> bool;
47 47
48 fn non_normal_entries_remove(&mut self, key: &HgPath) -> bool; 48 fn non_normal_entries_remove(&mut self, key: &HgPath);
49 49
50 fn non_normal_or_other_parent_paths( 50 fn non_normal_or_other_parent_paths(
51 &mut self, 51 &mut self,
52 ) -> Box<dyn Iterator<Item = &HgPathBuf> + '_>; 52 ) -> Box<dyn Iterator<Item = &HgPathBuf> + '_>;
53 53
177 let (non_normal, _other_parent) = 177 let (non_normal, _other_parent) =
178 self.get_non_normal_other_parent_entries(); 178 self.get_non_normal_other_parent_entries();
179 non_normal.contains(key) 179 non_normal.contains(key)
180 } 180 }
181 181
182 fn non_normal_entries_remove(&mut self, key: &HgPath) -> bool { 182 fn non_normal_entries_remove(&mut self, key: &HgPath) {
183 self.non_normal_entries_remove(key) 183 self.non_normal_entries_remove(key)
184 } 184 }
185 185
186 fn non_normal_or_other_parent_paths( 186 fn non_normal_or_other_parent_paths(
187 &mut self, 187 &mut self,