Don't unmarshall if it won't be used.

This commit is contained in:
Chris Rhodes 2016-01-08 10:24:29 -08:00
parent 59ed5b0b40
commit c842676deb

View file

@ -251,6 +251,9 @@ func (s *Session) event(messageType int, message []byte) (err error) {
return
}
case "CHANNEL_CREATE":
if !s.StateEnabled && s.OnChannelCreate == nil {
return
}
var st Channel
if err = unmarshalEvent(e, &st); err == nil {
if s.StateEnabled {
@ -262,6 +265,9 @@ func (s *Session) event(messageType int, message []byte) (err error) {
}
return
case "CHANNEL_UPDATE":
if !s.StateEnabled && s.OnChannelUpdate == nil {
return
}
var st Channel
if err = unmarshalEvent(e, &st); err == nil {
if s.StateEnabled {
@ -273,6 +279,9 @@ func (s *Session) event(messageType int, message []byte) (err error) {
}
return
case "CHANNEL_DELETE":
if !s.StateEnabled && s.OnChannelDelete == nil {
return
}
var st Channel
if err = unmarshalEvent(e, &st); err == nil {
if s.StateEnabled {
@ -284,6 +293,9 @@ func (s *Session) event(messageType int, message []byte) (err error) {
}
return
case "GUILD_CREATE":
if !s.StateEnabled && s.OnGuildCreate == nil {
return
}
var st Guild
if err = unmarshalEvent(e, &st); err == nil {
if s.StateEnabled {
@ -295,6 +307,9 @@ func (s *Session) event(messageType int, message []byte) (err error) {
}
return
case "GUILD_UPDATE":
if !s.StateEnabled && s.OnGuildUpdate == nil {
return
}
var st Guild
if err = unmarshalEvent(e, &st); err == nil {
if s.StateEnabled {
@ -306,6 +321,9 @@ func (s *Session) event(messageType int, message []byte) (err error) {
}
return
case "GUILD_DELETE":
if !s.StateEnabled && s.OnGuildDelete == nil {
return
}
var st Guild
if err = unmarshalEvent(e, &st); err == nil {
if s.StateEnabled {
@ -317,6 +335,9 @@ func (s *Session) event(messageType int, message []byte) (err error) {
}
return
case "GUILD_MEMBER_ADD":
if !s.StateEnabled && s.OnGuildMemberAdd == nil {
return
}
var st Member
if err = unmarshalEvent(e, &st); err == nil {
if s.StateEnabled {
@ -329,6 +350,9 @@ func (s *Session) event(messageType int, message []byte) (err error) {
return
case "GUILD_MEMBER_REMOVE":
var st Member
if !s.StateEnabled && s.OnGuildMemberRemove == nil {
return
}
if err = unmarshalEvent(e, &st); err == nil {
if s.StateEnabled {
s.State.MemberRemove(&st)
@ -339,6 +363,9 @@ func (s *Session) event(messageType int, message []byte) (err error) {
}
return
case "GUILD_MEMBER_UPDATE":
if !s.StateEnabled && s.OnGuildMemberUpdate == nil {
return
}
var st Member
if err = unmarshalEvent(e, &st); err == nil {
if s.StateEnabled {
@ -398,6 +425,9 @@ func (s *Session) event(messageType int, message []byte) (err error) {
return
}
case "GUILD_EMOJIS_UPDATE":
if !s.StateEnabled && s.OnGuildEmojisUpdate == nil {
return
}
var st GuildEmojisUpdate
if err = unmarshalEvent(e, &st); err == nil {
if s.StateEnabled {