calamity-0.3.0.0: A library for writing discord bots in haskell
Safe HaskellNone
LanguageHaskell2010

Calamity.Types.Model.Guild

Description

Discord Guilds

Documentation

data Guild Source #

Instances

Instances details
Eq Guild Source # 
Instance details

Defined in Calamity.Types.Model.Guild.Guild

Methods

(==) :: Guild -> Guild -> Bool #

(/=) :: Guild -> Guild -> Bool #

Show Guild Source # 
Instance details

Defined in Calamity.Types.Model.Guild.Guild

Methods

showsPrec :: Int -> Guild -> ShowS #

show :: Guild -> String #

showList :: [Guild] -> ShowS #

Generic Guild Source # 
Instance details

Defined in Calamity.Types.Model.Guild.Guild

Associated Types

type Rep Guild :: Type -> Type #

Methods

from :: Guild -> Rep Guild x #

to :: Rep Guild x -> Guild #

FromJSON Guild Source # 
Instance details

Defined in Calamity.Types.Model.Guild.Guild

NFData Guild Source # 
Instance details

Defined in Calamity.Types.Model.Guild.Guild

Methods

rnf :: Guild -> () #

TextShow Guild Source # 
Instance details

Defined in Calamity.Types.Model.Guild.Guild

Updateable Guild Source # 
Instance details

Defined in Calamity.Internal.Updateable

Associated Types

type Updated Guild Source #

PermissionsIn' Guild Source #

A Member's Permissions in a guild are just their roles

Instance details

Defined in Calamity.Utils.Permissions

Methods

permissionsIn' :: forall (r :: EffectRow) u. (BotC r, HasID User u) => Guild -> u -> Sem r Permissions Source #

PermissionsIn Guild Source #

A Member's Permissions in a guild are just their roles

Instance details

Defined in Calamity.Utils.Permissions

HasID Guild UpdatedGuild Source # 
Instance details

Defined in Calamity.Types.Model.Guild.Guild

HasID Guild Guild Source # 
Instance details

Defined in Calamity.Types.Model.Guild.Guild

HasID Guild Presence Source # 
Instance details

Defined in Calamity.Types.Model.Presence.Presence

HasID Guild VoiceChannel Source # 
Instance details

Defined in Calamity.Types.Model.Channel.Guild.Voice

HasID Guild TextChannel Source # 
Instance details

Defined in Calamity.Types.Model.Channel.Guild.Text

HasID Guild GuildChannel Source # 
Instance details

Defined in Calamity.Types.Model.Channel.Guild

HasID Guild UnavailableGuild Source # 
Instance details

Defined in Calamity.Types.Model.Guild.UnavailableGuild

HasID Guild BanData Source # 
Instance details

Defined in Calamity.Types.Model.Guild.Ban

Member (CacheEff :: (Type -> Type) -> Type -> Type) r => ParameterParser Guild c r

ParameterParser for guilds, this only looks in the cache. Use Snowflake Guild and use upgrade if you want to allow fetching from http.

Instance details

Defined in Calamity.Commands.CalamityParsers

Associated Types

type ParserResult Guild

Methods

parameterInfo :: ParameterInfo

parameterDescription :: Text

parse :: Sem (ParserEffs c r) (ParserResult Guild)

HasID Guild (Partial Guild) Source # 
Instance details

Defined in Calamity.Types.Model.Guild.Guild

Upgradeable Guild (Snowflake Guild) Source # 
Instance details

Defined in Calamity.Types.Upgradeable

Methods

upgrade :: forall (r :: EffectRow). BotC r => Snowflake Guild -> Sem r (Maybe Guild) Source #

Upgradeable Member (Snowflake Guild, Snowflake Member) Source # 
Instance details

Defined in Calamity.Types.Upgradeable

Methods

upgrade :: forall (r :: EffectRow). BotC r => (Snowflake Guild, Snowflake Member) -> Sem r (Maybe Member) Source #

Upgradeable Role (Snowflake Guild, Snowflake Role) Source # 
Instance details

Defined in Calamity.Types.Upgradeable

Methods

upgrade :: forall (r :: EffectRow). BotC r => (Snowflake Guild, Snowflake Role) -> Sem r (Maybe Role) Source #

Upgradeable Emoji (Snowflake Guild, Snowflake Emoji) Source # 
Instance details

Defined in Calamity.Types.Upgradeable

Methods

upgrade :: forall (r :: EffectRow). BotC r => (Snowflake Guild, Snowflake Emoji) -> Sem r (Maybe Emoji) Source #

Eq (Partial Guild) Source # 
Instance details

Defined in Calamity.Types.Model.Guild.Guild

Show (Partial Guild) Source # 
Instance details

Defined in Calamity.Types.Model.Guild.Guild

Generic (Partial Guild) Source # 
Instance details

Defined in Calamity.Types.Model.Guild.Guild

Associated Types

type Rep (Partial Guild) :: Type -> Type #

ToJSON (Partial Guild) Source # 
Instance details

Defined in Calamity.Types.Model.Guild.Guild

FromJSON (Partial Guild) Source # 
Instance details

Defined in Calamity.Types.Model.Guild.Guild

TextShow (Partial Guild) Source # 
Instance details

Defined in Calamity.Types.Model.Guild.Guild

PermissionsIn' (Snowflake Guild) Source #

A Member's Permissions in a guild are just their roles

This will fetch the guild from the cache or http as needed

Instance details

Defined in Calamity.Utils.Permissions

Methods

permissionsIn' :: forall (r :: EffectRow) u. (BotC r, HasID User u) => Snowflake Guild -> u -> Sem r Permissions Source #

PermissionsIn (Guild, GuildChannel) Source #

A Member's Permissions in a channel are their roles and overwrites

Instance details

Defined in Calamity.Utils.Permissions

type Rep Guild Source # 
Instance details

Defined in Calamity.Types.Model.Guild.Guild

type Rep Guild = D1 ('MetaData "Guild" "Calamity.Types.Model.Guild.Guild" "calamity-0.3.0.0-inplace" 'False) (C1 ('MetaCons "Guild" 'PrefixI 'True) ((((S1 ('MetaSel ('Just "id") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Snowflake Guild)) :*: (S1 ('MetaSel ('Just "name") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 Text) :*: S1 ('MetaSel ('Just "icon") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe Text)))) :*: ((S1 ('MetaSel ('Just "splash") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe Text)) :*: S1 ('MetaSel ('Just "owner") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe Bool))) :*: (S1 ('MetaSel ('Just "ownerID") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Snowflake User)) :*: S1 ('MetaSel ('Just "permissions") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 Word64)))) :*: (((S1 ('MetaSel ('Just "region") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 Text) :*: S1 ('MetaSel ('Just "afkChannelID") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe (Snowflake GuildChannel)))) :*: (S1 ('MetaSel ('Just "afkTimeout") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 Int) :*: S1 ('MetaSel ('Just "embedEnabled") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 Bool))) :*: ((S1 ('MetaSel ('Just "embedChannelID") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe (Snowflake GuildChannel))) :*: S1 ('MetaSel ('Just "verificationLevel") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 Int)) :*: (S1 ('MetaSel ('Just "defaultMessageNotifications") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 Int) :*: S1 ('MetaSel ('Just "explicitContentFilter") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 Int))))) :*: ((((S1 ('MetaSel ('Just "roles") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (SnowflakeMap Role)) :*: S1 ('MetaSel ('Just "emojis") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (SnowflakeMap Emoji))) :*: (S1 ('MetaSel ('Just "features") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 [Text]) :*: S1 ('MetaSel ('Just "mfaLevel") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 Int))) :*: ((S1 ('MetaSel ('Just "applicationID") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe (Snowflake User))) :*: S1 ('MetaSel ('Just "widgetEnabled") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 Bool)) :*: (S1 ('MetaSel ('Just "widgetChannelID") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe (Snowflake GuildChannel))) :*: S1 ('MetaSel ('Just "systemChannelID") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe (Snowflake GuildChannel)))))) :*: (((S1 ('MetaSel ('Just "joinedAt") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe UTCTime)) :*: S1 ('MetaSel ('Just "large") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 Bool)) :*: (S1 ('MetaSel ('Just "unavailable") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 Bool) :*: S1 ('MetaSel ('Just "memberCount") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 Int))) :*: ((S1 ('MetaSel ('Just "voiceStates") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 [VoiceState]) :*: S1 ('MetaSel ('Just "members") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (SnowflakeMap Member))) :*: (S1 ('MetaSel ('Just "channels") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (SnowflakeMap GuildChannel)) :*: S1 ('MetaSel ('Just "presences") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (HashMap (Snowflake User) Presence))))))))
type ParserResult Guild 
Instance details

Defined in Calamity.Commands.CalamityParsers

type ParserResult Guild = Guild
data Partial Guild Source # 
Instance details

Defined in Calamity.Types.Model.Guild.Guild

type Updated Guild Source # 
Instance details

Defined in Calamity.Internal.Updateable

type Rep (Partial Guild) Source # 
Instance details

Defined in Calamity.Types.Model.Guild.Guild

type Rep (Partial Guild) = D1 ('MetaData "Partial" "Calamity.Types.Model.Guild.Guild" "calamity-0.3.0.0-inplace" 'False) (C1 ('MetaCons "PartialGuild" 'PrefixI 'True) (S1 ('MetaSel ('Just "id") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Snowflake Guild)) :*: S1 ('MetaSel ('Just "name") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 Text)))

data family Partial t Source #

Instances

Instances details
HasID Channel (Partial Channel) Source # 
Instance details

Defined in Calamity.Types.Model.Channel

HasID Channel (Partial Message) Source # 
Instance details

Defined in Calamity.Types.Model.Channel.Message

HasID Guild (Partial Guild) Source # 
Instance details

Defined in Calamity.Types.Model.Guild.Guild

HasID User (Partial User) Source # 
Instance details

Defined in Calamity.Types.Model.User

HasID Emoji (Partial Emoji) Source # 
Instance details

Defined in Calamity.Types.Model.Guild.Emoji

Eq (Partial Channel) Source # 
Instance details

Defined in Calamity.Types.Model.Channel

Eq (Partial Guild) Source # 
Instance details

Defined in Calamity.Types.Model.Guild.Guild

Eq (Partial User) Source # 
Instance details

Defined in Calamity.Types.Model.User

Eq (Partial Emoji) Source # 
Instance details

Defined in Calamity.Types.Model.Guild.Emoji

Show (Partial Channel) Source # 
Instance details

Defined in Calamity.Types.Model.Channel

Show (Partial Message) Source # 
Instance details

Defined in Calamity.Types.Model.Channel.Message

Show (Partial Guild) Source # 
Instance details

Defined in Calamity.Types.Model.Guild.Guild

Show (Partial User) Source # 
Instance details

Defined in Calamity.Types.Model.User

Show (Partial Emoji) Source # 
Instance details

Defined in Calamity.Types.Model.Guild.Emoji

Generic (Partial Channel) Source # 
Instance details

Defined in Calamity.Types.Model.Channel

Associated Types

type Rep (Partial Channel) :: Type -> Type #

Generic (Partial Message) Source # 
Instance details

Defined in Calamity.Types.Model.Channel.Message

Associated Types

type Rep (Partial Message) :: Type -> Type #

Generic (Partial Guild) Source # 
Instance details

Defined in Calamity.Types.Model.Guild.Guild

Associated Types

type Rep (Partial Guild) :: Type -> Type #

Generic (Partial User) Source # 
Instance details

Defined in Calamity.Types.Model.User

Associated Types

type Rep (Partial User) :: Type -> Type #

Methods

from :: Partial User -> Rep (Partial User) x #

to :: Rep (Partial User) x -> Partial User #

Generic (Partial Emoji) Source # 
Instance details

Defined in Calamity.Types.Model.Guild.Emoji

Associated Types

type Rep (Partial Emoji) :: Type -> Type #

ToJSON (Partial Channel) Source # 
Instance details

Defined in Calamity.Types.Model.Channel

ToJSON (Partial Guild) Source # 
Instance details

Defined in Calamity.Types.Model.Guild.Guild

ToJSON (Partial User) Source # 
Instance details

Defined in Calamity.Types.Model.User

ToJSON (Partial Emoji) Source # 
Instance details

Defined in Calamity.Types.Model.Guild.Emoji

FromJSON (Partial Channel) Source # 
Instance details

Defined in Calamity.Types.Model.Channel

FromJSON (Partial Message) Source # 
Instance details

Defined in Calamity.Types.Model.Channel.Message

FromJSON (Partial Guild) Source # 
Instance details

Defined in Calamity.Types.Model.Guild.Guild

FromJSON (Partial User) Source # 
Instance details

Defined in Calamity.Types.Model.User

FromJSON (Partial Emoji) Source # 
Instance details

Defined in Calamity.Types.Model.Guild.Emoji

TextShow (Partial Channel) Source # 
Instance details

Defined in Calamity.Types.Model.Channel

TextShow (Partial Message) Source # 
Instance details

Defined in Calamity.Types.Model.Channel.Message

TextShow (Partial Guild) Source # 
Instance details

Defined in Calamity.Types.Model.Guild.Guild

TextShow (Partial User) Source # 
Instance details

Defined in Calamity.Types.Model.User

TextShow (Partial Emoji) Source # 
Instance details

Defined in Calamity.Types.Model.Guild.Emoji

data Partial Channel Source # 
Instance details

Defined in Calamity.Types.Model.Channel

data Partial Message Source # 
Instance details

Defined in Calamity.Types.Model.Channel.Message

data Partial Guild Source # 
Instance details

Defined in Calamity.Types.Model.Guild.Guild

newtype Partial User Source # 
Instance details

Defined in Calamity.Types.Model.User

data Partial Emoji Source # 
Instance details

Defined in Calamity.Types.Model.Guild.Emoji

type Rep (Partial Channel) Source # 
Instance details

Defined in Calamity.Types.Model.Channel

type Rep (Partial Message) Source # 
Instance details

Defined in Calamity.Types.Model.Channel.Message

type Rep (Partial Message) = D1 ('MetaData "Partial" "Calamity.Types.Model.Channel.Message" "calamity-0.3.0.0-inplace" 'False) (C1 ('MetaCons "PartialMessage" 'PrefixI 'True) (S1 ('MetaSel ('Just "channelID") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Snowflake Channel)) :*: S1 ('MetaSel ('Just "guildID") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe (Snowflake Guild)))))
type Rep (Partial Guild) Source # 
Instance details

Defined in Calamity.Types.Model.Guild.Guild

type Rep (Partial Guild) = D1 ('MetaData "Partial" "Calamity.Types.Model.Guild.Guild" "calamity-0.3.0.0-inplace" 'False) (C1 ('MetaCons "PartialGuild" 'PrefixI 'True) (S1 ('MetaSel ('Just "id") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Snowflake Guild)) :*: S1 ('MetaSel ('Just "name") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 Text)))
type Rep (Partial User) Source # 
Instance details

Defined in Calamity.Types.Model.User

type Rep (Partial User) = D1 ('MetaData "Partial" "Calamity.Types.Model.User" "calamity-0.3.0.0-inplace" 'True) (C1 ('MetaCons "PartialUser" 'PrefixI 'True) (S1 ('MetaSel ('Just "id") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Snowflake User))))
type Rep (Partial Emoji) Source # 
Instance details

Defined in Calamity.Types.Model.Guild.Emoji

type Rep (Partial Emoji) = D1 ('MetaData "Partial" "Calamity.Types.Model.Guild.Emoji" "calamity-0.3.0.0-inplace" 'False) (C1 ('MetaCons "PartialEmoji" 'PrefixI 'True) (S1 ('MetaSel ('Just "id") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Snowflake Emoji)) :*: (S1 ('MetaSel ('Just "name") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 Text) :*: S1 ('MetaSel ('Just "animated") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 Bool))))