import{_ as s,c as i,o as a,a9 as e}from"./chunks/framework.C4_mTacX.js";const c=JSON.parse('{"title":"liteyuki.message.rule","description":"","frontmatter":{"title":"liteyuki.message.rule"},"headers":[],"relativePath":"dev/api/message/rule.md","filePath":"zh/dev/api/message/rule.md","lastUpdated":null}'),t={name:"dev/api/message/rule.md"},n=e('
Copyright (C) 2020-2024 LiteyukiStudio. All Rights Reserved
@Time : 2024/8/19 下午10:55 @Author : snowykami @Email : snowykami@outlook.com @File : rule.py @Software: PyCharm
RuleHandlerFunc 说明: 规则函数签名
类型: TypeAlias
默认值: Callable[[MessageEvent], Coroutine[None, None, bool]]
Rule __init__(self, handler: RuleHandlerFunc) def __init__(self, handler: RuleHandlerFunc):\n self.handler = handler__or__(self, other: Rule) -> Rule def __or__(self, other: 'Rule') -> 'Rule':\n\n async def combined_handler(event: MessageEvent) -> bool:\n return await self.handler(event) or await other.handler(event)\n return Rule(combined_handler)__and__(self, other: Rule) -> Rule def __and__(self, other: 'Rule') -> 'Rule':\n\n async def combined_handler(event: MessageEvent) -> bool:\n return await self.handler(event) and await other.handler(event)\n return Rule(combined_handler)__call__(self, event: MessageEvent) -> bool async def __call__(self, event: MessageEvent) -> bool:\n if self.handler is None:\n return True\n return await self.handler(event)@Rule
empty_rule(event: MessageEvent) -> bool @Rule\nasync def empty_rule(event: MessageEvent) -> bool:\n return True@Rule
is_su_rule(event: MessageEvent) -> bool @Rule\nasync def is_su_rule(event: MessageEvent) -> bool:\n return str(event.user_id) in _superusers