Skip to main content

luaur_analysis/functions/
is_subclass_normalize.rs

1use crate::functions::get_type_alt_j::get_type_id;
2use crate::records::extern_type::ExternType;
3use luaur_common::macros::luau_assert::LUAU_ASSERT;
4
5pub fn is_subclass_type_id_type_id(
6    test: crate::type_aliases::type_id::TypeId,
7    parent: crate::type_aliases::type_id::TypeId,
8) -> bool {
9    let test_ctv = unsafe { get_type_id::<ExternType>(test) };
10    let parent_ctv = unsafe { get_type_id::<ExternType>(parent) };
11
12    LUAU_ASSERT!(!test_ctv.is_null());
13    LUAU_ASSERT!(!parent_ctv.is_null());
14
15    unsafe {
16        crate::functions::is_subclass_type::is_subclass_extern_type_extern_type(
17            &*test_ctv,
18            &*parent_ctv,
19        )
20    }
21}