♻️ 复原 RegistryMeta 的位置

This commit is contained in:
2024-10-30 20:18:28 +08:00
parent e8f0d578e1
commit fd349eefed
2 changed files with 16 additions and 16 deletions
+16 -1
View File
@@ -16,7 +16,7 @@ from nonebot_plugin_saa import PlatformTarget
from ..post import Post
from ..utils import Site, ProcessContext
from ..plugin_config import plugin_config
from ..types import Tag, Target, RawPost, SubUnit, Category, RegistryMeta
from ..types import Tag, Target, RawPost, SubUnit, Category
class CategoryNotSupport(Exception):
@@ -29,6 +29,21 @@ class CategoryNotRecognize(Exception):
"""raise in get_category, when you don't know the category of post"""
class RegistryMeta(type):
def __new__(cls, name, bases, namespace, **kwargs):
return super().__new__(cls, name, bases, namespace)
def __init__(cls, name, bases, namespace, **kwargs):
if kwargs.get("base"):
# this is the base class
cls.registry = []
elif not kwargs.get("abstract"):
# this is the subclass
cls.registry.append(cls)
super().__init__(name, bases, namespace, **kwargs)
P = ParamSpec("P")
R = TypeVar("R")