Skip to main content

luaur_analysis/methods/
subtyping_environment_try_find_substitution.rs

1use crate::records::subtyping_environment::SubtypingEnvironment;
2use crate::type_aliases::type_id::TypeId;
3
4impl SubtypingEnvironment {
5    pub fn try_find_substitution(&self, ty: TypeId) -> Option<TypeId> {
6        if let Some(it) = self.substitutions.find(&ty) {
7            return Some(*it);
8        }
9
10        if !self.parent.is_null() {
11            return unsafe { (*self.parent).try_find_substitution(ty) };
12        }
13
14        None
15    }
16}