Skip to content

Commit

Permalink
Deduplicate required interfaces (#3487)
Browse files Browse the repository at this point in the history
  • Loading branch information
kennykerr authored Feb 14, 2025
1 parent c9177f7 commit a650e7d
Show file tree
Hide file tree
Showing 2 changed files with 7 additions and 5 deletions.
5 changes: 3 additions & 2 deletions crates/libs/bindgen/src/types/class.rs
Original file line number Diff line number Diff line change
Expand Up @@ -21,8 +21,7 @@ impl Class {
}

pub fn write(&self, writer: &Writer) -> TokenStream {
let mut required_interfaces = self.required_interfaces();
required_interfaces.sort();
let required_interfaces = self.required_interfaces();
let type_name = self.def.type_name();
let name = to_ident(type_name.name());
let (class_cfg, cfg) = self.write_cfg(writer);
Expand Down Expand Up @@ -330,6 +329,8 @@ impl Class {
}
}

set.sort();
set.dedup();
set
}

Expand Down
7 changes: 4 additions & 3 deletions crates/libs/bindgen/src/types/interface.rs
Original file line number Diff line number Diff line change
Expand Up @@ -81,9 +81,7 @@ impl Interface {
let type_name = self.def.type_name();
let methods = self.get_methods(writer);

let mut required_interfaces = self.required_interfaces();
required_interfaces.sort();

let required_interfaces = self.required_interfaces();
let name = self.write_name(writer);

let vtbl_name = self.write_vtbl_name(writer);
Expand Down Expand Up @@ -555,6 +553,9 @@ impl Interface {
}
let mut set = vec![];
walk(self, &mut set);

set.sort();
set.dedup();
set
}
}
Expand Down

0 comments on commit a650e7d

Please sign in to comment.