Files
discord-retokenizer/discord/structs.go
2022-12-09 23:26:38 -06:00

61 lines
1.6 KiB
Go

package discord
import "encoding/json"
type User struct {
ID string `json:"id"`
Username string `json:"username"`
Discriminator string `json:"discriminator"`
Avatar string `json:"avatar"`
Bot bool `json:"bot"`
System bool `json:"system"`
Mfa_enabled bool `json:"mfa_enabled"`
Banner string `json:"banner"`
Accent_color int `json:"accent_color"`
Locale string `json:"locale"`
Verified bool `json:"verified"`
Email string `json:"email"`
Flags int `json:"flags"`
Premium_type int `json:"premium_type"`
Public_flags int `json:"public_flags"`
}
type SimpleUser struct {
ID string `json:"id"`
Username string `json:"username"`
Discriminator string `json:"discriminator"`
Avatar string `json:"avatar"`
Bot bool `json:"bot"`
Banner string `json:"banner"`
AccentColor int `json:"accent_color"`
Verified bool `json:"verified"`
}
func (u User) Simplify() SimpleUser {
return SimpleUser{
ID: u.ID,
Username: u.Username,
Discriminator: u.Discriminator,
Avatar: u.Avatar,
Bot: u.Bot,
Banner: u.Banner,
AccentColor: u.Accent_color,
Verified: u.Verified,
}
}
func (u User) MarshalBinary() ([]byte, error) {
return json.Marshal(u)
}
func (u *User) UnmarshalBinary(data []byte) error {
return json.Unmarshal(data, u)
}
func (u SimpleUser) MarshalBinary() ([]byte, error) {
return json.Marshal(u)
}
func (u *SimpleUser) UnmarshalBinary(data []byte) error {
return json.Unmarshal(data, u)
}