Guild Roles¶
guild_roles
¶
GuildRoleCacheAddon
¶
Bases: Addon
flowchart TD
scurrypy.ext.cache.guild_roles.GuildRoleCacheAddon[GuildRoleCacheAddon]
scurrypy.bases.addon.Addon[Addon]
scurrypy.bases.addon.Addon --> scurrypy.ext.cache.guild_roles.GuildRoleCacheAddon
click scurrypy.ext.cache.guild_roles.GuildRoleCacheAddon href "" "scurrypy.ext.cache.guild_roles.GuildRoleCacheAddon"
click scurrypy.bases.addon.Addon href "" "scurrypy.bases.addon.Addon"
Defines caching guild roles and lookup.
bot = client
instance-attribute
¶
roles: dict[Snowflake, dict[Snowflake, GuildRoleModel]] = {}
instance-attribute
¶
role_index: dict[Snowflake, GuildRoleModel] = {}
instance-attribute
¶
on_guild_create
async
¶
Append new guild roles to cache. Also add roles to index.
Parameters:
-
event(GuildCreateEvent) –the GUILD_CREATE event
on_guild_delete
async
¶
Remove guild roles from cache. Also remove roles from index
Parameters:
-
event(GuildDeleteEvent) –the GUILD_DELETE event
on_role_create
async
¶
Append role to guild key. Also append role to index.
Parameters:
-
event(RoleCreateEvent) –the ROLE_CREATE event
on_role_update
async
¶
Replace role in guild key. Also replace role in index.
Parameters:
-
event(RoleUpdateEvent) –the ROLE_UPDATE event
on_role_delete
async
¶
Remove role from guild key. Also remove role from index.
Parameters:
-
event(RoleDeleteEvent) –the ROLE_DELETE event
get_role
async
¶
Fetch a guild role. If not found, request and store it.
Parameters:
Returns:
-
GuildRoleModel | None–hydrated role object or None if fetch failed
put
¶
Put a new role into the cache.
Parameters:
-
guild_id(Snowflake) –guild ID of the role
-
role(GuildRoleModel) –the role object