fix: input capturing

This commit is contained in:
Nova
2024-06-07 08:22:51 -04:00
parent f770357010
commit b590e82b05
16 changed files with 67 additions and 61 deletions

View File

@@ -89,16 +89,15 @@ impl AliasList {
self.0.add_raw(node);
}
pub fn get<A: Aspect>(&self, aspect: &A) -> Option<Arc<Node>> {
self.0
.get_valid_contents()
.into_iter()
.filter_map(|n| get_original(n, false))
.find(|node| {
let Ok(aspect2) = node.get_aspect::<A>() else {
return false;
};
Arc::as_ptr(&aspect2) == (aspect as *const A)
})
self.0.get_valid_contents().into_iter().find(|node| {
let Some(node) = get_original(node.clone(), false) else {
return false;
};
let Ok(aspect2) = node.get_aspect::<A>() else {
return false;
};
Arc::as_ptr(&aspect2) == (aspect as *const A)
})
}
pub fn get_aliases(&self) -> Vec<Arc<Node>> {
self.0.get_valid_contents()