diff options
| author | acdenisSK <[email protected]> | 2017-12-27 18:29:34 +0100 |
|---|---|---|
| committer | acdenisSK <[email protected]> | 2017-12-27 18:33:29 +0100 |
| commit | 3a0c8908ce837f6fe64f865a1a7a9de63cbd237c (patch) | |
| tree | a8597bb4a7d49cfd614a85d3f2b5a95d3df9e055 /src/builder/edit_role.rs | |
| parent | Update dependencies (diff) | |
| download | serenity-3a0c8908ce837f6fe64f865a1a7a9de63cbd237c.tar.xz serenity-3a0c8908ce837f6fe64f865a1a7a9de63cbd237c.zip | |
Improve performance of builders even further
By negating hashing altogether.
The increase is around 1000-ish nanoseconds saved.
Diffstat (limited to 'src/builder/edit_role.rs')
| -rw-r--r-- | src/builder/edit_role.rs | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/src/builder/edit_role.rs b/src/builder/edit_role.rs index 88c876f..059653d 100644 --- a/src/builder/edit_role.rs +++ b/src/builder/edit_role.rs @@ -1,7 +1,7 @@ use internal::prelude::*; -use std::collections::HashMap; use model::guild::Role; use model::Permissions; +use super::VecMap; /// A builer to create or edit a [`Role`] for use via a number of model methods. /// @@ -40,14 +40,14 @@ use model::Permissions; /// [`Role`]: ../model/struct.Role.html /// [`Role::edit`]: ../model/struct.Role.html#method.edit #[derive(Clone, Debug, Default)] -pub struct EditRole(pub HashMap<&'static str, Value>); +pub struct EditRole(pub VecMap<&'static str, Value>); impl EditRole { /// Creates a new builder with the values of the given [`Role`]. /// /// [`Role`]: ../model/struct.Role.html pub fn new(role: &Role) -> Self { - let mut map = HashMap::new(); + let mut map = VecMap::with_capacity(8); #[cfg(feature = "utils")] { |