aboutsummaryrefslogtreecommitdiff
path: root/src/model/user.rs
diff options
context:
space:
mode:
authorZeyla Hellyer <[email protected]>2017-12-16 08:39:36 -0800
committerZeyla Hellyer <[email protected]>2017-12-16 08:45:26 -0800
commitbcd16dddb8cc3086a13524c79676f3a8bebbc524 (patch)
tree42d254fb4738df957c4b7d9e5766d1cb5bd47323 /src/model/user.rs
parentFix guild deserialization tests (diff)
downloadserenity-bcd16dddb8cc3086a13524c79676f3a8bebbc524.tar.xz
serenity-bcd16dddb8cc3086a13524c79676f3a8bebbc524.zip
Break up the model module
The `model` module has historically been one giant module re-exporting all of the model types, which is somewhere around 100 types. This can be a lot to look at for a new user and somewhat overwhelming, especially with a large number of fine-grained imports from the module. The module is now neatly split up into submodules, mostly like it has been internally since the early versions of the library. The submodules are: - application - channel - error - event - gateway - guild - id - invite - misc - permissions - prelude - user - voice - webhook Each submodule contains types that are "owned" by the module. For example, the `guild` submodule contains, but not limited to, Emoji, AuditLogsEntry, Role, and Member. `channel` contains, but not limited to, Attachment, Embed, Message, and Reaction. Upgrade path: Instead of glob importing the models via `use serenity::model::*;`, instead glob import via the prelude: ```rust use serenity::model::prelude::*; ``` Instead of importing from the root model module: ```rust use serenity::model::{Guild, Message, OnlineStatus, Role, User}; ``` instead import from the submodules like so: ```rust use serenity::model::channel::Message; use serenity::model::guild::{Guild, Role}; use serenity::model::user::{OnlineStatus, User}; ```
Diffstat (limited to 'src/model/user.rs')
-rw-r--r--src/model/user.rs14
1 files changed, 8 insertions, 6 deletions
diff --git a/src/model/user.rs b/src/model/user.rs
index 2732f2b..6068da1 100644
--- a/src/model/user.rs
+++ b/src/model/user.rs
@@ -1,7 +1,9 @@
+//! User information-related models.
+
use serde_json;
use std::fmt;
use super::utils::deserialize_u16;
-use super::*;
+use super::prelude::*;
use internal::prelude::*;
use model::misc::Mentionable;
@@ -159,7 +161,7 @@ impl CurrentUser {
/// #
/// # let mut cache = CACHE.write();
///
- /// use serenity::model::permissions::Permissions;
+ /// use serenity::model::Permissions;
///
/// // assuming the cache has been unlocked
/// let url = match cache.user.invite_url(Permissions::empty()) {
@@ -408,7 +410,7 @@ impl User {
///
/// ```rust,no_run
/// # use serenity::prelude::*;
- /// # use serenity::model::*;
+ /// # use serenity::model::prelude::*;
/// #
/// use serenity::model::Permissions;
/// use serenity::CACHE;
@@ -611,7 +613,7 @@ impl User {
///
/// ```rust,no_run
/// # use serenity::prelude::*;
- /// # use serenity::model::*;
+ /// # use serenity::model::prelude::*;
/// #
/// struct Handler;
///
@@ -623,7 +625,7 @@ impl User {
///
/// let mut client = Client::new("token", Handler).unwrap();
/// #
- /// use serenity::model::UserId;
+ /// use serenity::model::id::UserId;
/// use serenity::CACHE;
/// use std::thread;
/// use std::time::Duration;
@@ -680,7 +682,7 @@ impl User {
///
/// ```rust,no_run
/// # use serenity::prelude::*;
- /// # use serenity::model::*;
+ /// # use serenity::model::prelude::*;
/// #
/// use serenity::utils::MessageBuilder;
/// use serenity::utils::ContentModifier::Bold;