##// END OF EJS Templates
match: strengthen visit_children_set invariant, Recursive means "all files"...
match: strengthen visit_children_set invariant, Recursive means "all files" My previous interpretation of "Recursive" was too relaxed: I thought it instructed the caller to do something like this: > you can stop calling `visit_children_set` because you'll need to descend into > every directory recursively, but you should still check every file if it > matches or not Whereas the real instruction seems to be: > I guarantee that everything in this subtree matches, you can stop > querying the matcher for all files and dirs altogether. The evidence to support this: - the test actually passes with the stronger invariant, revealing no exceptions from this rule - the implementation of `visit_children_set` for `DifferenceMatcher` clearly relies on this requirement, so it must hold for that not to lead to bugs.

File last commit:

r46277:57b5452a default
r52464:74230abb stable
Show More
Cargo.toml
28 lines | 819 B | text/plain | TOMLLexer
[package]
name = "hgcli"
version = "0.1.0"
build = "build.rs"
authors = ["Gregory Szorc <gregory.szorc@gmail.com>"]
edition = "2018"
license = "GPL-2.0"
readme = "README.md"
[[bin]]
name = "hg"
path = "src/main.rs"
[dependencies]
jemallocator-global = { version = "0.3", optional = true }
[dependencies.pyembed]
git = "https://github.com/indygreg/PyOxidizer.git"
rev = "4697fb25918dfad6dc73288daeea501063963a08"
default-features = false
[features]
default = ["build-mode-pyoxidizer-exe"]
jemalloc = ["jemallocator-global", "pyembed/jemalloc"]
build-mode-pyoxidizer-exe = ["pyembed/build-mode-pyoxidizer-exe"]
build-mode-prebuilt-artifacts = ["pyembed/build-mode-prebuilt-artifacts"]
cpython-link-unresolved-static = ["pyembed/cpython-link-unresolved-static"]
cpython-link-default = ["pyembed/cpython-link-default"]