unreal-sdk: fix recursive infinite loop, filter out default objects
This commit is contained in:
parent
2b8d3942da
commit
e9675b91bc
|
@ -246,7 +246,7 @@ impl Class {
|
|||
override_name: Some(format!("{}{}", field.name, n)),
|
||||
..field
|
||||
},
|
||||
|field: &ClassField| -> String { field.name.clone() },
|
||||
|field: &ClassField| -> String { field.unique_name().to_string() },
|
||||
)
|
||||
.collect();
|
||||
|
||||
|
@ -257,7 +257,7 @@ impl Class {
|
|||
override_name: Some(format!("{}{}", field.name, n)),
|
||||
..field
|
||||
},
|
||||
|field: &ClassMethod| -> String { field.name.clone() },
|
||||
|field: &ClassMethod| -> String { field.unique_name().to_string() },
|
||||
)
|
||||
.collect();
|
||||
|
||||
|
@ -320,7 +320,7 @@ impl ClassMethod {
|
|||
override_name: Some(format!("{}{}", field.name, n)),
|
||||
..field
|
||||
},
|
||||
|field: &ClassField| -> String { field.name.clone() },
|
||||
|field: &ClassField| -> String { field.unique_name().to_string() },
|
||||
)
|
||||
.collect();
|
||||
|
||||
|
@ -346,6 +346,12 @@ impl Package {
|
|||
let types = self
|
||||
.children
|
||||
.par_iter()
|
||||
// filter out anon or default objects
|
||||
.filter(|obj| {
|
||||
obj.get_name()
|
||||
.map(|name| !default_or_anon(&name))
|
||||
.unwrap_or(false)
|
||||
})
|
||||
.filter_map(|&object| -> Option<UnrealType> {
|
||||
let ty = match AnyObject::from_object(object) {
|
||||
AnyObject::Field(field) => match AnyField::from_field(field) {
|
||||
|
|
Loading…
Reference in a new issue