mirror of
https://github.com/nonebot/nonebot2.git
synced 2025-02-22 02:25:56 +08:00
fix matcher decos
This commit is contained in:
parent
5871330492
commit
87a848d8c3
@ -109,14 +109,15 @@ class Matcher:
|
||||
def receive(cls) -> Callable[[Handler], Handler]:
|
||||
"""接收一条新消息并处理"""
|
||||
|
||||
def _decorator(func: Handler) -> Handler:
|
||||
|
||||
async def _handler(bot: Bot, event: Event, state: dict) -> NoReturn:
|
||||
raise PausedException
|
||||
|
||||
if cls.handlers:
|
||||
# 已有前置handlers则接受一条新的消息,否则视为接收初始消息
|
||||
cls.handlers.append(_handler)
|
||||
|
||||
def _decorator(func: Handler) -> Handler:
|
||||
if cls.handlers[-1] is not func:
|
||||
cls.handlers.append(func)
|
||||
|
||||
return func
|
||||
@ -131,8 +132,6 @@ class Matcher:
|
||||
args_parser: Optional[ArgsParser] = None
|
||||
) -> Callable[[Handler], Handler]:
|
||||
|
||||
def _decorator(func: Handler) -> Handler:
|
||||
|
||||
async def _key_getter(bot: Bot, event: Event, state: dict):
|
||||
if key not in state:
|
||||
state["_current_key"] = key
|
||||
@ -152,6 +151,9 @@ class Matcher:
|
||||
# 已有前置handlers则接受一条新的消息,否则视为接收初始消息
|
||||
cls.handlers.append(_key_getter)
|
||||
cls.handlers.append(_key_parser)
|
||||
|
||||
def _decorator(func: Handler) -> Handler:
|
||||
if cls.handlers[-1] is not func:
|
||||
cls.handlers.append(func)
|
||||
|
||||
return func
|
||||
|
Loading…
x
Reference in New Issue
Block a user