pub fn standard_diff_stub(
cx: &Cx,
left: &LanguageProfile,
right: &LanguageProfile,
) -> Result<ProfileDiff>Expand description
Diff left against right, gated on standard_diff_capability.
Compares reader, lowering, eval-policy, organs, numeric tower, capabilities,
unsupported forms, and conformance tests, returning a ProfileDiff.
ยงExamples
use std::sync::Arc;
use sim_kernel::{Cx, DefaultFactory, NoopEvalPolicy, Symbol};
use sim_lib_standard_core::{LanguageProfile, standard_diff_capability, standard_diff_stub};
let mut cx = Cx::new(Arc::new(NoopEvalPolicy), Arc::new(DefaultFactory));
cx.grant(standard_diff_capability());
let left = LanguageProfile::new(Symbol::qualified("lang", "a/v1"))
.with_reader(Symbol::qualified("codec", "lisp"));
let right = LanguageProfile::new(Symbol::qualified("lang", "b/v1"))
.with_reader(Symbol::qualified("codec", "json"));
assert!(standard_diff_stub(&cx, &left, &left).unwrap().is_same());
assert!(!standard_diff_stub(&cx, &left, &right).unwrap().is_same());