Skip to content

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:

on_guild_delete async

Remove guild roles from cache. Also remove roles from index

Parameters:

on_role_create async

Append role to guild key. Also append role to index.

Parameters:

on_role_update async

Replace role in guild key. Also replace role in index.

Parameters:

on_role_delete async

Remove role from guild key. Also remove role from index.

Parameters:

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: