Versions in this module Expand all Collapse all v4 v4.0.6 Apr 11, 2022 Changes in this version type MemberFields + Pending bool v4.0.5 Apr 11, 2022 Changes in this version type MemberFields + Avatar string type MemberState + Pending bool v4.0.4 Sep 6, 2021 v4.0.3 Sep 1, 2021 v4.0.2 Aug 27, 2021 v4.0.1 Aug 25, 2021 Changes in this version type GuildSet + func (gs *GuildSet) GetChannelOrThread(id int64) *ChannelState v4.0.0 Aug 25, 2021 Changes in this version + const AllPermissions + const ChannelPermsMask + func ApplyChannelPermissions(perms int64, guildID int64, overwrites []discordgo.PermissionOverwrite, ...) int64 + func CalculateBasePermissions(guildID int64, ownerID int64, guildRoles []discordgo.Role, memberID int64, ...) (perms int64) + func CalculatePermissions(g *GuildState, guildRoles []discordgo.Role, ...) (perms int64) + func IsChannelNotFound(e error) (bool, int64) + func IsGuildNotFound(e error) (bool, int64) + func IsRoleAbove(a, b *discordgo.Role) bool + type ChannelState struct + Bitrate int + GuildID int64 + ID int64 + Icon string + NSFW bool + Name string + OwnerID int64 + ParentID int64 + PermissionOverwrites []discordgo.PermissionOverwrite + Position int + RateLimitPerUser int + ThreadMetadata *discordgo.ThreadMetadata + Topic string + Type discordgo.ChannelType + UserLimit int + func ChannelStateFromDgo(c *discordgo.Channel) ChannelState + func (c *ChannelState) IsPrivate() bool + type Channels []ChannelState + func (r Channels) Len() int + func (r Channels) Less(i, j int) bool + func (r Channels) Swap(i, j int) + type ErrChannelNotFound struct + ChannelID int64 + func (e *ErrChannelNotFound) Error() string + type ErrGuildNotFound struct + GuildID int64 + func (e *ErrGuildNotFound) Error() string + type GuildSet struct + Channels []ChannelState + Emojis []discordgo.Emoji + Roles []discordgo.Role + Threads []ChannelState + VoiceStates []discordgo.VoiceState + func GuildSetFromGuild(guild *discordgo.Guild) *GuildSet + func (gs *GuildSet) GetChannel(id int64) *ChannelState + func (gs *GuildSet) GetEmoji(id int64) *discordgo.Emoji + func (gs *GuildSet) GetMemberPermissions(channelID int64, memberID int64, roles []int64) (perms int64, err error) + func (gs *GuildSet) GetRole(id int64) *discordgo.Role + func (gs *GuildSet) GetThread(id int64) *ChannelState + func (gs *GuildSet) GetVoiceState(userID int64) *discordgo.VoiceState + type GuildState struct + AfkChannelID int64 + AfkTimeout int + Available bool + DefaultMessageNotifications int + Description string + ExplicitContentFilter discordgo.ExplicitContentFilterLevel + Features []string + ID int64 + Icon string + Large bool + MaxMembers int + MaxPresences int + MemberCount int64 + MfaLevel discordgo.MfaLevel + Name string + OwnerID int64 + PreferredLocale string + Region string + Splash string + SystemChannelID string + Unavailable bool + VerificationLevel discordgo.VerificationLevel + WidgetChannelID string + WidgetEnabled bool + func GuildStateFromDgo(guild *discordgo.Guild) *GuildState + type LightGame struct + Details string + Name string + State string + Type discordgo.GameType + URL string + type MemberFields struct + JoinedAt discordgo.Timestamp + Nick string + Roles []int64 + type MemberState struct + GuildID int64 + Member *MemberFields + Presence *PresenceFields + User discordgo.User + func MemberStateFromMember(member *discordgo.Member) *MemberState + func MemberStateFromPresence(p *discordgo.PresenceUpdate) *MemberState + func (ms *MemberState) DgoMember() *discordgo.Member + type MessageState struct + Attachments []discordgo.MessageAttachment + Author discordgo.User + ChannelID int64 + Content string + Deleted bool + Embeds []discordgo.MessageEmbed + GuildID int64 + ID int64 + Member *discordgo.Member + MentionRoles []int64 + Mentions []discordgo.User + ParsedCreatedAt time.Time + ParsedEditedAt time.Time + func MessageStateFromDgo(m *discordgo.Message) *MessageState + func (m *MessageState) ContentWithMentionsReplaced() string + type MessagesQuery struct + After int64 + Before int64 + Buf []*MessageState + IncludeDeleted bool + Limit int + type PresenceFields struct + Game *LightGame + Status PresenceStatus + type PresenceStatus int32 + const StatusDoNotDisturb + const StatusIdle + const StatusInvisible + const StatusNotSet + const StatusOffline + const StatusOnline + type Roles []discordgo.Role + func (r Roles) Len() int + func (r Roles) Less(i, j int) bool + func (r Roles) Swap(i, j int) + type StateTracker interface + GetGuild func(guildID int64) *GuildSet + GetMember func(guildID int64, memberID int64) *MemberState + GetMessages func(guildID int64, channelID int64, query *MessagesQuery) []*MessageState + GetShardGuilds func(shardID int64) []*GuildSet + IterateMembers func(guildID int64, f func(chunk []*MemberState) bool) Other modules containing this package github.com/jonas747/dstate github.com/jonas747/dstate/v2 github.com/jonas747/dstate/v3