Judgment may_be_remote
judgment_fn! {
/// True if `goal` may be implemented in a crate that is not the current one.
/// This could be a downstream crate that we cannot see, or it could be a future
/// (semver-compatible) version of an upstream crate.
///
/// Note that per RFC #2451, upstream crates are not permitted to add blanket impls
/// and so new upstream impls for local types cannot be added.
pub fn may_be_remote(
_decls: Program,
env: Env,
assumptions: Predicates,
goal: TraitRef,
) => Constraints {
/* rules omitted */
}
}
Source: crates/formality-rust/src/prove/is_local.rs:42
The number on each rule’s conclusion is positive coverage; the number on each premise is negative coverage. Click a number to browse the tests.
may be defined downstream| Line | Coverage | Source |
|---|---|---|
| 59 | ✗ | (may_be_downstream_trait_ref(decls, env, assumptions, goal) => c) |
| ──────── ("may be defined downstream") | ||
| 61 | ✗ | (may_be_remote(decls, env, assumptions, goal) => c) |
may be added by upstream in a minor release| Line | Coverage | Source |
|---|---|---|
| 67 | ✗ | (may_not_be_provable(env, assumptions, goal, |env, assumptions, goal| is_local_trait_ref(decls, &env, assumptions, goal)) => c) |
| ──────── ("may be added by upstream in a minor release") | ||
| 69 | ✗ | (may_be_remote(decls, env, assumptions, goal) => c) |