aboutsummaryrefslogtreecommitdiff
path: root/src/cache/cache_events_impl.rs
diff options
context:
space:
mode:
authoracdenisSK <[email protected]>2017-09-09 10:53:44 +0200
committeracdenisSK <[email protected]>2017-09-09 10:56:29 +0200
commit4be6b9d5008ff8bb3d1fdddff5647a6bb307513c (patch)
tree516b811875ae4cb2b98c308aabb69bc6e7a94fd2 /src/cache/cache_events_impl.rs
parentChange order to avoid subtraction overflow error (#160) (diff)
downloadserenity-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.rs10
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));
+ },
}
}