Make unmarshal methods not on the struct, that was stupid.

This commit is contained in:
Chris Rhodes 2016-01-11 17:39:25 -08:00
parent 3acc68d3ef
commit fce9a7dedc
2 changed files with 66 additions and 66 deletions

View file

@ -115,7 +115,7 @@ func (s *Session) Request(method, urlStr string, data interface{}) (response []b
return return
} }
func (s *Session) unmarshal(data []byte, v interface{}) error { func unmarshal(data []byte, v interface{}) error {
err := json.Unmarshal(data, v) err := json.Unmarshal(data, v)
if err != nil { if err != nil {
return ErrJSONUnmarshal return ErrJSONUnmarshal
@ -145,7 +145,7 @@ func (s *Session) Login(email string, password string) (token string, err error)
Token string `json:"token"` Token string `json:"token"`
}{} }{}
err = s.unmarshal(response, &temp) err = unmarshal(response, &temp)
if err != nil { if err != nil {
return return
} }
@ -172,7 +172,7 @@ func (s *Session) Register(username string) (token string, err error) {
Token string `json:"token"` Token string `json:"token"`
}{} }{}
err = s.unmarshal(response, &temp) err = unmarshal(response, &temp)
if err != nil { if err != nil {
return return
} }
@ -214,7 +214,7 @@ func (s *Session) User(userID string) (st *User, err error) {
return return
} }
err = s.unmarshal(body, &st) err = unmarshal(body, &st)
return return
} }
@ -257,7 +257,7 @@ func (s *Session) UserUpdate(email, password, username, avatar, newPassword stri
return return
} }
err = s.unmarshal(body, &st) err = unmarshal(body, &st)
return return
} }
@ -269,7 +269,7 @@ func (s *Session) UserSettings() (st *Settings, err error) {
return return
} }
err = s.unmarshal(body, &st) err = unmarshal(body, &st)
return return
} }
@ -282,7 +282,7 @@ func (s *Session) UserChannels() (st []*Channel, err error) {
return return
} }
err = s.unmarshal(body, &st) err = unmarshal(body, &st)
return return
} }
@ -299,7 +299,7 @@ func (s *Session) UserChannelCreate(recipientID string) (st *Channel, err error)
return return
} }
err = s.unmarshal(body, &st) err = unmarshal(body, &st)
return return
} }
@ -311,7 +311,7 @@ func (s *Session) UserGuilds() (st []*Guild, err error) {
return return
} }
err = s.unmarshal(body, &st) err = unmarshal(body, &st)
return return
} }
@ -328,7 +328,7 @@ func (s *Session) Guild(guildID string) (st *Guild, err error) {
return return
} }
err = s.unmarshal(body, &st) err = unmarshal(body, &st)
return return
} }
@ -345,7 +345,7 @@ func (s *Session) GuildCreate(name string) (st *Guild, err error) {
return return
} }
err = s.unmarshal(body, &st) err = unmarshal(body, &st)
return return
} }
@ -363,7 +363,7 @@ func (s *Session) GuildEdit(guildID, name string) (st *Guild, err error) {
return return
} }
err = s.unmarshal(body, &st) err = unmarshal(body, &st)
return return
} }
@ -376,7 +376,7 @@ func (s *Session) GuildDelete(guildID string) (st *Guild, err error) {
return return
} }
err = s.unmarshal(body, &st) err = unmarshal(body, &st)
return return
} }
@ -390,7 +390,7 @@ func (s *Session) GuildBans(guildID string) (st []*User, err error) {
return return
} }
err = s.unmarshal(body, &st) err = unmarshal(body, &st)
return return
} }
@ -439,7 +439,7 @@ func (s *Session) GuildChannels(guildID string) (st []*Channel, err error) {
return return
} }
err = s.unmarshal(body, &st) err = unmarshal(body, &st)
return return
} }
@ -460,7 +460,7 @@ func (s *Session) GuildChannelCreate(guildID, name, ctype string) (st *Channel,
return return
} }
err = s.unmarshal(body, &st) err = unmarshal(body, &st)
return return
} }
@ -472,7 +472,7 @@ func (s *Session) GuildInvites(guildID string) (st []*Invite, err error) {
return return
} }
err = s.unmarshal(body, &st) err = unmarshal(body, &st)
return return
} }
@ -494,7 +494,7 @@ func (s *Session) GuildInviteCreate(guildID string, i *Invite) (st *Invite, err
return return
} }
err = s.unmarshal(body, &st) err = unmarshal(body, &st)
return return
} }
@ -506,7 +506,7 @@ func (s *Session) GuildRoles(guildID string) (st []*Role, err error) {
return return
} }
err = s.unmarshal(body, &st) err = unmarshal(body, &st)
return // TODO return pointer return // TODO return pointer
} }
@ -519,7 +519,7 @@ func (s *Session) GuildRoleCreate(guildID string) (st *Role, err error) {
return return
} }
err = s.unmarshal(body, &st) err = unmarshal(body, &st)
return return
} }
@ -539,7 +539,7 @@ func (s *Session) GuildRoleEdit(guildID, roleID, name string, color int, hoist b
return return
} }
err = s.unmarshal(body, &st) err = unmarshal(body, &st)
return return
} }
@ -552,7 +552,7 @@ func (s *Session) GuildRoleReorder(guildID string, roles []Role) (st []*Role, er
return return
} }
err = s.unmarshal(body, &st) err = unmarshal(body, &st)
return return
} }
@ -577,7 +577,7 @@ func (s *Session) Channel(channelID string) (st *Channel, err error) {
return return
} }
err = s.unmarshal(body, &st) err = unmarshal(body, &st)
return return
} }
@ -595,7 +595,7 @@ func (s *Session) ChannelEdit(channelID, name string) (st *Channel, err error) {
return return
} }
err = s.unmarshal(body, &st) err = unmarshal(body, &st)
return return
} }
@ -608,7 +608,7 @@ func (s *Session) ChannelDelete(channelID string) (st *Channel, err error) {
return return
} }
err = s.unmarshal(body, &st) err = unmarshal(body, &st)
return return
} }
@ -650,7 +650,7 @@ func (s *Session) ChannelMessages(channelID string, limit int, beforeID int, aft
return return
} }
err = s.unmarshal(body, &st) err = unmarshal(body, &st)
return return
} }
@ -681,7 +681,7 @@ func (s *Session) ChannelMessageSend(channelID string, content string) (st *Mess
return return
} }
err = s.unmarshal(response, &st) err = unmarshal(response, &st)
return return
} }
@ -700,7 +700,7 @@ func (s *Session) ChannelMessageEdit(channelID, messageID, content string) (st *
return return
} }
err = s.unmarshal(response, &st) err = unmarshal(response, &st)
return return
} }
@ -720,7 +720,7 @@ func (s *Session) ChannelInvites(channelID string) (st []*Invite, err error) {
return return
} }
err = s.unmarshal(body, &st) err = unmarshal(body, &st)
return return
} }
@ -742,7 +742,7 @@ func (s *Session) ChannelInviteCreate(channelID string, i Invite) (st *Invite, e
return return
} }
err = s.unmarshal(body, &st) err = unmarshal(body, &st)
return return
} }
@ -783,7 +783,7 @@ func (s *Session) Invite(inviteID string) (st *Invite, err error) {
return return
} }
err = s.unmarshal(body, &st) err = unmarshal(body, &st)
return return
} }
@ -796,7 +796,7 @@ func (s *Session) InviteDelete(inviteID string) (st *Invite, err error) {
return return
} }
err = s.unmarshal(body, &st) err = unmarshal(body, &st)
return return
} }
@ -809,7 +809,7 @@ func (s *Session) InviteAccept(inviteID string) (st *Invite, err error) {
return return
} }
err = s.unmarshal(body, &st) err = unmarshal(body, &st)
return return
} }
@ -825,7 +825,7 @@ func (s *Session) VoiceRegions() (st []*VoiceRegion, err error) {
return return
} }
err = s.unmarshal(body, &st) err = unmarshal(body, &st)
return return
} }
@ -837,7 +837,7 @@ func (s *Session) VoiceICE() (st *VoiceICE, err error) {
return return
} }
err = s.unmarshal(body, &st) err = unmarshal(body, &st)
return return
} }
@ -857,7 +857,7 @@ func (s *Session) Gateway() (gateway string, err error) {
URL string `json:"url"` URL string `json:"url"`
}{} }{}
err = s.unmarshal(response, &temp) err = unmarshal(response, &temp)
if err != nil { if err != nil {
return return
} }

View file

@ -164,8 +164,8 @@ func (s *Session) Listen() (err error) {
// Not sure how needed this is and where it would be best to call it. // Not sure how needed this is and where it would be best to call it.
// somewhere. // somewhere.
func (s *Session) unmarshalEvent(event *Event, i interface{}) (err error) { func unmarshalEvent(event *Event, i interface{}) (err error) {
if err = s.unmarshal(event.RawData, i); err != nil { if err = unmarshal(event.RawData, i); err != nil {
fmt.Println(event.Type, err) fmt.Println(event.Type, err)
printJSON(event.RawData) // TODO: Better error loggingEvent. printJSON(event.RawData) // TODO: Better error loggingEvent.
} }
@ -186,7 +186,7 @@ func (s *Session) event(messageType int, message []byte) (err error) {
} }
var e *Event var e *Event
if err = s.unmarshal(message, &e); err != nil { if err = unmarshal(message, &e); err != nil {
fmt.Println(err) fmt.Println(err)
return return
} }
@ -195,7 +195,7 @@ func (s *Session) event(messageType int, message []byte) (err error) {
case "READY": case "READY":
var st *Ready var st *Ready
if err = s.unmarshalEvent(e, &st); err == nil { if err = unmarshalEvent(e, &st); err == nil {
if s.StateEnabled { if s.StateEnabled {
s.State.OnReady(st) s.State.OnReady(st)
} }
@ -210,21 +210,21 @@ func (s *Session) event(messageType int, message []byte) (err error) {
case "VOICE_SERVER_UPDATE": case "VOICE_SERVER_UPDATE":
// TEMP CODE FOR TESTING VOICE // TEMP CODE FOR TESTING VOICE
var st *VoiceServerUpdate var st *VoiceServerUpdate
if err = s.unmarshalEvent(e, &st); err == nil { if err = unmarshalEvent(e, &st); err == nil {
s.onVoiceServerUpdate(st) s.onVoiceServerUpdate(st)
} }
return return
case "VOICE_STATE_UPDATE": case "VOICE_STATE_UPDATE":
// TEMP CODE FOR TESTING VOICE // TEMP CODE FOR TESTING VOICE
var st *VoiceState var st *VoiceState
if err = s.unmarshalEvent(e, &st); err == nil { if err = unmarshalEvent(e, &st); err == nil {
s.onVoiceStateUpdate(st) s.onVoiceStateUpdate(st)
} }
return return
case "USER_UPDATE": case "USER_UPDATE":
if s.OnUserUpdate != nil { if s.OnUserUpdate != nil {
var st *User var st *User
if err = s.unmarshalEvent(e, &st); err == nil { if err = unmarshalEvent(e, &st); err == nil {
s.OnUserUpdate(s, st) s.OnUserUpdate(s, st)
} }
return return
@ -232,7 +232,7 @@ func (s *Session) event(messageType int, message []byte) (err error) {
case "PRESENCE_UPDATE": case "PRESENCE_UPDATE":
if s.OnPresenceUpdate != nil { if s.OnPresenceUpdate != nil {
var st *PresenceUpdate var st *PresenceUpdate
if err = s.unmarshalEvent(e, &st); err == nil { if err = unmarshalEvent(e, &st); err == nil {
s.OnPresenceUpdate(s, st) s.OnPresenceUpdate(s, st)
} }
return return
@ -240,7 +240,7 @@ func (s *Session) event(messageType int, message []byte) (err error) {
case "TYPING_START": case "TYPING_START":
if s.OnTypingStart != nil { if s.OnTypingStart != nil {
var st *TypingStart var st *TypingStart
if err = s.unmarshalEvent(e, &st); err == nil { if err = unmarshalEvent(e, &st); err == nil {
s.OnTypingStart(s, st) s.OnTypingStart(s, st)
} }
return return
@ -253,7 +253,7 @@ func (s *Session) event(messageType int, message []byte) (err error) {
case "MESSAGE_CREATE": case "MESSAGE_CREATE":
if s.OnMessageCreate != nil { if s.OnMessageCreate != nil {
var st *Message var st *Message
if err = s.unmarshalEvent(e, &st); err == nil { if err = unmarshalEvent(e, &st); err == nil {
s.OnMessageCreate(s, st) s.OnMessageCreate(s, st)
} }
return return
@ -261,7 +261,7 @@ func (s *Session) event(messageType int, message []byte) (err error) {
case "MESSAGE_UPDATE": case "MESSAGE_UPDATE":
if s.OnMessageUpdate != nil { if s.OnMessageUpdate != nil {
var st *Message var st *Message
if err = s.unmarshalEvent(e, &st); err == nil { if err = unmarshalEvent(e, &st); err == nil {
s.OnMessageUpdate(s, st) s.OnMessageUpdate(s, st)
} }
return return
@ -269,7 +269,7 @@ func (s *Session) event(messageType int, message []byte) (err error) {
case "MESSAGE_DELETE": case "MESSAGE_DELETE":
if s.OnMessageDelete != nil { if s.OnMessageDelete != nil {
var st *MessageDelete var st *MessageDelete
if err = s.unmarshalEvent(e, &st); err == nil { if err = unmarshalEvent(e, &st); err == nil {
s.OnMessageDelete(s, st) s.OnMessageDelete(s, st)
} }
return return
@ -277,7 +277,7 @@ func (s *Session) event(messageType int, message []byte) (err error) {
case "MESSAGE_ACK": case "MESSAGE_ACK":
if s.OnMessageAck != nil { if s.OnMessageAck != nil {
var st *MessageAck var st *MessageAck
if err = s.unmarshalEvent(e, &st); err == nil { if err = unmarshalEvent(e, &st); err == nil {
s.OnMessageAck(s, st) s.OnMessageAck(s, st)
} }
return return
@ -287,7 +287,7 @@ func (s *Session) event(messageType int, message []byte) (err error) {
break break
} }
var st *Channel var st *Channel
if err = s.unmarshalEvent(e, &st); err == nil { if err = unmarshalEvent(e, &st); err == nil {
if s.StateEnabled { if s.StateEnabled {
s.State.ChannelAdd(st) s.State.ChannelAdd(st)
} }
@ -303,7 +303,7 @@ func (s *Session) event(messageType int, message []byte) (err error) {
break break
} }
var st *Channel var st *Channel
if err = s.unmarshalEvent(e, &st); err == nil { if err = unmarshalEvent(e, &st); err == nil {
if s.StateEnabled { if s.StateEnabled {
s.State.ChannelAdd(st) s.State.ChannelAdd(st)
} }
@ -319,7 +319,7 @@ func (s *Session) event(messageType int, message []byte) (err error) {
break break
} }
var st *Channel var st *Channel
if err = s.unmarshalEvent(e, &st); err == nil { if err = unmarshalEvent(e, &st); err == nil {
if s.StateEnabled { if s.StateEnabled {
s.State.ChannelRemove(st) s.State.ChannelRemove(st)
} }
@ -335,7 +335,7 @@ func (s *Session) event(messageType int, message []byte) (err error) {
break break
} }
var st *Guild var st *Guild
if err = s.unmarshalEvent(e, &st); err == nil { if err = unmarshalEvent(e, &st); err == nil {
if s.StateEnabled { if s.StateEnabled {
s.State.GuildAdd(st) s.State.GuildAdd(st)
} }
@ -351,7 +351,7 @@ func (s *Session) event(messageType int, message []byte) (err error) {
break break
} }
var st *Guild var st *Guild
if err = s.unmarshalEvent(e, &st); err == nil { if err = unmarshalEvent(e, &st); err == nil {
if s.StateEnabled { if s.StateEnabled {
s.State.GuildAdd(st) s.State.GuildAdd(st)
} }
@ -367,7 +367,7 @@ func (s *Session) event(messageType int, message []byte) (err error) {
break break
} }
var st *Guild var st *Guild
if err = s.unmarshalEvent(e, &st); err == nil { if err = unmarshalEvent(e, &st); err == nil {
if s.StateEnabled { if s.StateEnabled {
s.State.GuildRemove(st) s.State.GuildRemove(st)
} }
@ -383,7 +383,7 @@ func (s *Session) event(messageType int, message []byte) (err error) {
break break
} }
var st *Member var st *Member
if err = s.unmarshalEvent(e, &st); err == nil { if err = unmarshalEvent(e, &st); err == nil {
if s.StateEnabled { if s.StateEnabled {
s.State.MemberAdd(st) s.State.MemberAdd(st)
} }
@ -399,7 +399,7 @@ func (s *Session) event(messageType int, message []byte) (err error) {
break break
} }
var st *Member var st *Member
if err = s.unmarshalEvent(e, &st); err == nil { if err = unmarshalEvent(e, &st); err == nil {
if s.StateEnabled { if s.StateEnabled {
s.State.MemberRemove(st) s.State.MemberRemove(st)
} }
@ -415,7 +415,7 @@ func (s *Session) event(messageType int, message []byte) (err error) {
break break
} }
var st *Member var st *Member
if err = s.unmarshalEvent(e, &st); err == nil { if err = unmarshalEvent(e, &st); err == nil {
if s.StateEnabled { if s.StateEnabled {
s.State.MemberAdd(st) s.State.MemberAdd(st)
} }
@ -429,7 +429,7 @@ func (s *Session) event(messageType int, message []byte) (err error) {
case "GUILD_ROLE_CREATE": case "GUILD_ROLE_CREATE":
if s.OnGuildRoleCreate != nil { if s.OnGuildRoleCreate != nil {
var st *GuildRole var st *GuildRole
if err = s.unmarshalEvent(e, &st); err == nil { if err = unmarshalEvent(e, &st); err == nil {
s.OnGuildRoleCreate(s, st) s.OnGuildRoleCreate(s, st)
} }
return return
@ -437,7 +437,7 @@ func (s *Session) event(messageType int, message []byte) (err error) {
case "GUILD_ROLE_UPDATE": case "GUILD_ROLE_UPDATE":
if s.OnGuildRoleUpdate != nil { if s.OnGuildRoleUpdate != nil {
var st *GuildRole var st *GuildRole
if err = s.unmarshalEvent(e, &st); err == nil { if err = unmarshalEvent(e, &st); err == nil {
s.OnGuildRoleUpdate(s, st) s.OnGuildRoleUpdate(s, st)
} }
return return
@ -445,7 +445,7 @@ func (s *Session) event(messageType int, message []byte) (err error) {
case "GUILD_ROLE_DELETE": case "GUILD_ROLE_DELETE":
if s.OnGuildRoleDelete != nil { if s.OnGuildRoleDelete != nil {
var st *GuildRoleDelete var st *GuildRoleDelete
if err = s.unmarshalEvent(e, &st); err == nil { if err = unmarshalEvent(e, &st); err == nil {
s.OnGuildRoleDelete(s, st) s.OnGuildRoleDelete(s, st)
} }
return return
@ -453,7 +453,7 @@ func (s *Session) event(messageType int, message []byte) (err error) {
case "GUILD_INTEGRATIONS_UPDATE": case "GUILD_INTEGRATIONS_UPDATE":
if s.OnGuildIntegrationsUpdate != nil { if s.OnGuildIntegrationsUpdate != nil {
var st *GuildIntegrationsUpdate var st *GuildIntegrationsUpdate
if err = s.unmarshalEvent(e, &st); err == nil { if err = unmarshalEvent(e, &st); err == nil {
s.OnGuildIntegrationsUpdate(s, st) s.OnGuildIntegrationsUpdate(s, st)
} }
return return
@ -461,7 +461,7 @@ func (s *Session) event(messageType int, message []byte) (err error) {
case "GUILD_BAN_ADD": case "GUILD_BAN_ADD":
if s.OnGuildBanAdd != nil { if s.OnGuildBanAdd != nil {
var st *GuildBan var st *GuildBan
if err = s.unmarshalEvent(e, &st); err == nil { if err = unmarshalEvent(e, &st); err == nil {
s.OnGuildBanAdd(s, st) s.OnGuildBanAdd(s, st)
} }
return return
@ -469,7 +469,7 @@ func (s *Session) event(messageType int, message []byte) (err error) {
case "GUILD_BAN_REMOVE": case "GUILD_BAN_REMOVE":
if s.OnGuildBanRemove != nil { if s.OnGuildBanRemove != nil {
var st *GuildBan var st *GuildBan
if err = s.unmarshalEvent(e, &st); err == nil { if err = unmarshalEvent(e, &st); err == nil {
s.OnGuildBanRemove(s, st) s.OnGuildBanRemove(s, st)
} }
return return
@ -479,7 +479,7 @@ func (s *Session) event(messageType int, message []byte) (err error) {
break break
} }
var st *GuildEmojisUpdate var st *GuildEmojisUpdate
if err = s.unmarshalEvent(e, &st); err == nil { if err = unmarshalEvent(e, &st); err == nil {
if s.StateEnabled { if s.StateEnabled {
s.State.EmojisAdd(st.GuildID, st.Emojis) s.State.EmojisAdd(st.GuildID, st.Emojis)
} }
@ -493,7 +493,7 @@ func (s *Session) event(messageType int, message []byte) (err error) {
case "USER_SETTINGS_UPDATE": case "USER_SETTINGS_UPDATE":
if s.OnUserSettingsUpdate != nil { if s.OnUserSettingsUpdate != nil {
var st map[string]interface{} var st map[string]interface{}
if err = s.unmarshalEvent(e, &st); err == nil { if err = unmarshalEvent(e, &st); err == nil {
s.OnUserSettingsUpdate(s, st) s.OnUserSettingsUpdate(s, st)
} }
return return