equal
deleted
inserted
replaced
244 |
244 |
245 pub fn has_narrow(&self) -> bool { |
245 pub fn has_narrow(&self) -> bool { |
246 self.requirements.contains(requirements::NARROW_REQUIREMENT) |
246 self.requirements.contains(requirements::NARROW_REQUIREMENT) |
247 } |
247 } |
248 |
248 |
|
249 pub fn has_nodemap(&self) -> bool { |
|
250 self.requirements |
|
251 .contains(requirements::NODEMAP_REQUIREMENT) |
|
252 } |
|
253 |
249 fn dirstate_file_contents(&self) -> Result<Vec<u8>, HgError> { |
254 fn dirstate_file_contents(&self) -> Result<Vec<u8>, HgError> { |
250 Ok(self |
255 Ok(self |
251 .hg_vfs() |
256 .hg_vfs() |
252 .read("dirstate") |
257 .read("dirstate") |
253 .io_not_found_as_none()? |
258 .io_not_found_as_none()? |
343 ) -> Result<RefMut<OwningDirstateMap>, DirstateError> { |
348 ) -> Result<RefMut<OwningDirstateMap>, DirstateError> { |
344 self.dirstate_map.get_mut_or_init(self) |
349 self.dirstate_map.get_mut_or_init(self) |
345 } |
350 } |
346 |
351 |
347 fn new_changelog(&self) -> Result<Changelog, HgError> { |
352 fn new_changelog(&self) -> Result<Changelog, HgError> { |
348 let use_nodemap = self |
353 Changelog::open(&self.store_vfs(), self.has_nodemap()) |
349 .requirements |
|
350 .contains(requirements::NODEMAP_REQUIREMENT); |
|
351 Changelog::open(&self.store_vfs(), use_nodemap) |
|
352 } |
354 } |
353 |
355 |
354 pub fn changelog(&self) -> Result<Ref<Changelog>, HgError> { |
356 pub fn changelog(&self) -> Result<Ref<Changelog>, HgError> { |
355 self.changelog.get_or_init(self) |
357 self.changelog.get_or_init(self) |
356 } |
358 } |
358 pub fn changelog_mut(&self) -> Result<RefMut<Changelog>, HgError> { |
360 pub fn changelog_mut(&self) -> Result<RefMut<Changelog>, HgError> { |
359 self.changelog.get_mut_or_init(self) |
361 self.changelog.get_mut_or_init(self) |
360 } |
362 } |
361 |
363 |
362 fn new_manifestlog(&self) -> Result<Manifestlog, HgError> { |
364 fn new_manifestlog(&self) -> Result<Manifestlog, HgError> { |
363 let use_nodemap = self |
365 Manifestlog::open(&self.store_vfs(), self.has_nodemap()) |
364 .requirements |
|
365 .contains(requirements::NODEMAP_REQUIREMENT); |
|
366 Manifestlog::open(&self.store_vfs(), use_nodemap) |
|
367 } |
366 } |
368 |
367 |
369 pub fn manifestlog(&self) -> Result<Ref<Manifestlog>, HgError> { |
368 pub fn manifestlog(&self) -> Result<Ref<Manifestlog>, HgError> { |
370 self.manifestlog.get_or_init(self) |
369 self.manifestlog.get_or_init(self) |
371 } |
370 } |