Merge remote-tracking branch 'origin/master' into rojo-open

This commit is contained in:
= 2026-10-02 11:52:50 -07:00
commit 63a370e624
10 changed files with 4431 additions and 1691 deletions

View file

@ -304,7 +304,7 @@ fn find_descriptor(
return Some(descriptor);
}
current_class_name = class.superclass.as_deref()?;
current_class_name = class.superclass?;
}
}

View file

@ -481,7 +481,7 @@ fn get_property_filter(project: &Project, new_inst: &Instance) -> Option<UstrSet
}
let class = database.classes.get(current_class_name)?;
if let Some(super_class) = class.superclass.as_ref() {
if let Some(super_class) = class.superclass {
current_class_name = super_class;
} else {
break;

View file

@ -101,7 +101,7 @@ fn should_property_serialize(class_name: &str, prop_name: &str) -> bool {
}
kind => unimplemented!("unknown property kind {kind:?}"),
};
} else if let Some(super_class) = class_data.superclass.as_ref() {
} else if let Some(super_class) = class_data.superclass {
current_class_name = super_class;
} else {
break;

View file

@ -8,10 +8,8 @@ use rbx_dom_weak::{
ustr, Instance, Ustr, WeakDom,
};
use crate::{
multimap::MultiMap, syncback::snapshot::inst_path, REF_ID_ATTRIBUTE_NAME,
REF_POINTER_ATTRIBUTE_PREFIX,
};
use crate::syncback::snapshot::inst_path;
use crate::{multimap::MultiMap, REF_ID_ATTRIBUTE_NAME, REF_POINTER_ATTRIBUTE_PREFIX};
pub struct RefLinks {
/// A map of referents to each of their Ref properties.

View file

@ -222,19 +222,7 @@ pub fn filter_out_property(inst: &Instance, prop_name: &str) -> bool {
}
pub fn inst_path(dom: &WeakDom, referent: Ref) -> String {
let mut path = Vec::new();
let mut inst = dom.get_by_ref(referent);
while let Some(instance) = inst {
path.push(instance.name.as_str());
inst = dom.get_by_ref(instance.parent());
}
// This is to avoid the root's name from appearing in the path. Not
// optimal, but should be fine.
path.pop();
path.reverse();
path.join("/")
dom.full_path_of(referent, "/")
}
#[cfg(test)]