aboutsummaryrefslogtreecommitdiff
path: root/src/model/application.rs
Commit message (Collapse)AuthorAgeFilesLines
* Fix all the dead links in the docsErk-2018-08-091-1/+1
|
* Refactor imports/exports to use nested groups and better formattingacdenisSK2018-03-291-3/+5
|
* Implement or derive Serialize on all modelsZeyla Hellyer2018-01-011-3/+3
|
* Break up the model moduleZeyla Hellyer2017-12-161-0/+84
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}; ```