parent
b02b3d205e
commit
af9f413b49
@ -321,22 +321,16 @@ fn recursive_collect_superclass(objects:&mut std::vec::Vec<rbx_dom_weak::types::
|
|||||||
}
|
}
|
||||||
|
|
||||||
fn get_partial_path(dom:&rbx_dom_weak::WeakDom,instance:&rbx_dom_weak::Instance)->String{
|
fn get_partial_path(dom:&rbx_dom_weak::WeakDom,instance:&rbx_dom_weak::Instance)->String{
|
||||||
struct ParentIter<'a>{
|
let mut names:Vec<_>=core::iter::successors(
|
||||||
dom:&'a rbx_dom_weak::WeakDom,
|
Some(instance),
|
||||||
instance:Option<&'a rbx_dom_weak::Instance>,
|
|i|dom.get_by_ref(i.parent())
|
||||||
}
|
).map(
|
||||||
impl<'a> Iterator for ParentIter<'a>{
|
|i|i.name.as_str()
|
||||||
type Item=&'a rbx_dom_weak::Instance;
|
).collect();
|
||||||
fn next(&mut self)->Option<Self::Item>{
|
// discard the name of the root object
|
||||||
let parent=self.instance.map(|i|i.parent()).and_then(|p|self.dom.get_by_ref(p));
|
names.pop();
|
||||||
core::mem::replace(&mut self.instance,parent)
|
names.reverse();
|
||||||
}
|
names.join(".")
|
||||||
}
|
|
||||||
|
|
||||||
let mut tragic:Vec<_>=ParentIter{dom,instance:Some(instance)}.map(|i|i.name.as_str()).collect();
|
|
||||||
tragic.pop();
|
|
||||||
tragic.reverse();
|
|
||||||
tragic.join(".")
|
|
||||||
}
|
}
|
||||||
|
|
||||||
fn get_script_refs(dom:&rbx_dom_weak::WeakDom)->Vec<rbx_dom_weak::types::Ref>{
|
fn get_script_refs(dom:&rbx_dom_weak::WeakDom)->Vec<rbx_dom_weak::types::Ref>{
|
||||||
|
Loading…
x
Reference in New Issue
Block a user