Skip to main content

luaur_analysis/methods/
subtyping_environment_lookup_generic_pack.rs

1use crate::records::subtyping_environment::SubtypingEnvironment;
2use crate::type_aliases::lookup_result::LookupResult;
3use crate::type_aliases::type_pack_id::TypePackId;
4
5impl SubtypingEnvironment {
6    pub fn lookup_generic_pack(&self, tp: TypePackId) -> LookupResult {
7        let result = self.mapped_generic_packs.lookup_generic_pack(tp);
8        if result.get_if::<TypePackId>().is_some() {
9            result
10        } else if !self.parent.is_null() {
11            unsafe { (*self.parent).lookup_generic_pack(tp) }
12        } else {
13            result
14        }
15    }
16}