MCPcopy Create free account
hub / github.com/argumentcomputer/ix / all

Method all

crates/common/src/env.rs:891–899  ·  view source on GitHub ↗

Constructs a dependent function type (forall / Pi).

(n: Name, t: Expr, b: Expr, bi: BinderInfo)

Source from the content-addressed store, hash-verified

889 hasher.update(&[EAPP]);
890 hasher.update(f.get_hash().as_bytes());
891 hasher.update(a.get_hash().as_bytes());
892 Expr(Arc::new(ExprData::App(f, a, hasher.finalize())))
893 }
894
895 /// Constructs a lambda abstraction `fun (n : t) => b`.
896 pub fn lam(n: Name, t: Expr, b: Expr, bi: BinderInfo) -> Self {
897 let mut hasher = blake3::Hasher::new();
898 hasher.update(&[ELAM]);
899 hasher.update(n.get_hash().as_bytes());
900 hasher.update(t.get_hash().as_bytes());
901 hasher.update(b.get_hash().as_bytes());
902 hasher.update(&[binder_info_tag(&bi)]);

Callers 10

is_identityMethod · 0.45
is_identityMethod · 0.45
adapt_split_minorFunction · 0.45
find_source_rec_targetFunction · 0.45
compute_aux_permFunction · 0.45
try_detect_nested_fvarFunction · 0.45

Calls 5

binder_info_tagFunction · 0.85
as_bytesMethod · 0.80
get_hashMethod · 0.80
finalizeMethod · 0.80
ExprClass · 0.70

Tested by

no test coverage detected