diff options
author | Christian Poveda <31802960+pvdrz@users.noreply.github.com> | 2022-10-04 20:56:55 -0500 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-10-04 20:56:55 -0500 |
commit | 73ce4bc9a546cc765714d5e4e333e636e03e360e (patch) | |
tree | b5954c6680b243c0b1671a80ea973ef90877e462 /bindgen/codegen/postprocessing/sort_semantically.rs | |
parent | a900f8f863d1313ad76603234aaeea22bb9ba7b3 (diff) | |
parent | 0296f9e86c7756e718b6b82836ce1e09b5f8d08a (diff) |
Merge pull request #2284 from ferrous-systems/bindgen-as-workspace
Bindgen as a workspace
Diffstat (limited to 'bindgen/codegen/postprocessing/sort_semantically.rs')
-rw-r--r-- | bindgen/codegen/postprocessing/sort_semantically.rs | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/bindgen/codegen/postprocessing/sort_semantically.rs b/bindgen/codegen/postprocessing/sort_semantically.rs new file mode 100644 index 00000000..96596cb0 --- /dev/null +++ b/bindgen/codegen/postprocessing/sort_semantically.rs @@ -0,0 +1,24 @@ +use syn::Item; + +pub(super) fn sort_semantically(items: &mut [Item]) { + items.sort_by_key(|item| match item { + Item::Type(_) => 0, + Item::Struct(_) => 1, + Item::Const(_) => 2, + Item::Fn(_) => 3, + Item::Enum(_) => 4, + Item::Union(_) => 5, + Item::Static(_) => 6, + Item::Trait(_) => 7, + Item::TraitAlias(_) => 8, + Item::Impl(_) => 9, + Item::Mod(_) => 10, + Item::Use(_) => 11, + Item::Verbatim(_) => 12, + Item::ExternCrate(_) => 13, + Item::ForeignMod(_) => 14, + Item::Macro(_) => 15, + Item::Macro2(_) => 16, + _ => 18, + }); +} |