MCPcopy Index your code
hub / github.com/Rust-API/Rust-API-Bypass-Checker / meet

Method meet

src/analysis/memory/nullness_domain.rs:69–92  ·  view source on GitHub ↗
(&self, other: &Self)

Source from the content-addressed store, hash-verified

67 }
68
69 pub fn meet(&self, other: &Self) -> Self {
70 let all_paths: HashSet<Rc<Path>> = self
71 .value_map
72 .keys()
73 .chain(other.value_map.keys())
74 .cloned()
75 .collect();
76 let mut value_map = HashMap::new();
77 for path in all_paths {
78 match (self.get(&path), other.get(&path)) {
79 (Some(left), Some(right)) if left == right => {
80 value_map.insert(path, left);
81 }
82 (Some(left), None) => {
83 value_map.insert(path, left);
84 }
85 (None, Some(right)) => {
86 value_map.insert(path, right);
87 }
88 _ => {}
89 }
90 }
91 Self { value_map }
92 }
93
94 pub fn widening_with(&self, other: &Self) -> Self {
95 self.join(other)

Callers 2

narrowing_withMethod · 0.45
refineMethod · 0.45

Calls 2

getMethod · 0.45
insertMethod · 0.45

Tested by

no test coverage detected