diff options
| author | acdenisSK <[email protected]> | 2017-09-09 10:53:44 +0200 |
|---|---|---|
| committer | acdenisSK <[email protected]> | 2017-09-09 10:56:29 +0200 |
| commit | 4be6b9d5008ff8bb3d1fdddff5647a6bb307513c (patch) | |
| tree | 516b811875ae4cb2b98c308aabb69bc6e7a94fd2 /src/cache/cache_events_impl.rs | |
| parent | Change order to avoid subtraction overflow error (#160) (diff) | |
| download | serenity-4be6b9d5008ff8bb3d1fdddff5647a6bb307513c.tar.xz serenity-4be6b9d5008ff8bb3d1fdddff5647a6bb307513c.zip | |
Implement categories
Diffstat (limited to 'src/cache/cache_events_impl.rs')
| -rw-r--r-- | src/cache/cache_events_impl.rs | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/src/cache/cache_events_impl.rs b/src/cache/cache_events_impl.rs index 23fa314..64dbfde 100644 --- a/src/cache/cache_events_impl.rs +++ b/src/cache/cache_events_impl.rs @@ -112,6 +112,9 @@ impl CacheEventsImpl for super::Cache { let ch = self.private_channels.insert(id, channel.clone()); ch.map(Channel::Private) }, + Channel::Category(ref category) => { + self.categories.insert(category.read().unwrap().id, category.clone()).map(Channel::Category) + }, } } @@ -123,6 +126,8 @@ impl CacheEventsImpl for super::Cache { // anymore. Channel::Private(_) | Channel::Group(_) => unreachable!(), + // TODO: Fix this later. + Channel::Category(_) => unreachable!(), }; let (guild_id, channel_id) = channel.with(|channel| (channel.guild_id, channel.id)); @@ -219,6 +224,11 @@ impl CacheEventsImpl for super::Cache { .get_mut(&channel.read().unwrap().id) .map(|private| private.clone_from(channel)); }, + Channel::Category(ref category) => { + self.categories + .get_mut(&category.read().unwrap().id) + .map(|c| c.clone_from(category)); + }, } } |