29 lines
624 B
Python
29 lines
624 B
Python
|
from abc import ABC
|
||
|
|
||
|
from redbot.core import commands
|
||
|
from redbot.core.bot import Red
|
||
|
|
||
|
from .utilities.config import Config
|
||
|
|
||
|
|
||
|
class CompositeMetaClass(type(commands.Cog), type(ABC)):
|
||
|
"""
|
||
|
This allows the metaclass used for proper type detection to
|
||
|
coexist with discord.py's metaclass
|
||
|
"""
|
||
|
|
||
|
pass
|
||
|
|
||
|
|
||
|
class Mixin(ABC):
|
||
|
"""
|
||
|
Base class for well behaved type hint detection with composite class.
|
||
|
|
||
|
Basically, to keep developers sane when not all attributes are defined in each mixin.
|
||
|
"""
|
||
|
|
||
|
def __init__(self, *_args):
|
||
|
super().__init__()
|
||
|
self.config: Config
|
||
|
self.bot: Red
|