nonebot2/docs/api/typing.md

301 lines
3.4 KiB
Markdown
Raw Normal View History

2020-08-23 09:03:59 +00:00
---
contentSidebar: true
sidebarDepth: 0
---
2020-08-19 12:29:37 +00:00
# NoneBot.typing 模块
## 类型
下面的文档中,「类型」部分使用 Python 的 Type Hint 语法,见 [PEP 484](https://www.python.org/dev/peps/pep-0484/)、[PEP 526](https://www.python.org/dev/peps/pep-0526/) 和 [typing](https://docs.python.org/3/library/typing.html)。
除了 Python 内置的类型,下面还出现了如下 NoneBot 自定类型,实际上它们是 Python 内置类型的别名。
以下类型均可从 nonebot.typing 模块导入。
2020-08-20 07:07:05 +00:00
## `Driver`
2020-08-19 12:29:37 +00:00
* **类型**
2020-09-13 05:01:23 +00:00
`BaseDriver`
2020-08-19 12:29:37 +00:00
* **说明**
2020-08-19 15:00:31 +00:00
所有 Driver 的基类。
2020-08-19 12:29:37 +00:00
2020-08-20 07:07:05 +00:00
## `WebSocket`
2020-08-19 12:29:37 +00:00
* **类型**
2020-09-13 05:01:23 +00:00
`BaseWebSocket`
2020-08-19 12:29:37 +00:00
* **说明**
2020-08-19 15:00:31 +00:00
所有 WebSocket 的基类。
2020-08-20 07:07:05 +00:00
## `Bot`
2020-08-19 15:00:31 +00:00
* **类型**
2020-09-13 05:01:23 +00:00
`BaseBot`
2020-08-19 15:00:31 +00:00
* **说明**
所有 Bot 的基类。
2020-08-19 12:29:37 +00:00
2020-08-20 07:07:05 +00:00
## `Event`
2020-08-19 12:29:37 +00:00
* **类型**
2020-09-13 05:01:23 +00:00
`BaseEvent`
2020-08-19 12:29:37 +00:00
* **说明**
所有 Event 的基类。
2020-08-20 07:07:05 +00:00
## `Message`
2020-08-19 12:29:37 +00:00
* **类型**
2020-09-13 05:01:23 +00:00
`BaseMessage`
2020-08-19 12:29:37 +00:00
* **说明**
所有 Message 的基类。
2020-08-20 07:07:05 +00:00
## `MessageSegment`
2020-08-19 12:29:37 +00:00
* **类型**
2020-09-13 05:01:23 +00:00
`BaseMessageSegment`
2020-08-19 12:29:37 +00:00
* **说明**
所有 MessageSegment 的基类。
2020-11-07 09:52:23 +00:00
## `EventPreProcessor`
2020-08-19 12:29:37 +00:00
* **类型**
2020-09-13 05:01:23 +00:00
`Callable[[Bot, Event, dict], Union[Awaitable[None], Awaitable[NoReturn]]]`
2020-08-19 12:29:37 +00:00
* **说明**
2020-11-07 09:52:23 +00:00
事件预处理函数 EventPreProcessor 类型
## `EventPostProcessor`
* **类型**
`Callable[[Bot, Event, dict], Union[Awaitable[None], Awaitable[NoReturn]]]`
* **说明**
事件预处理函数 EventPostProcessor 类型
## `RunPreProcessor`
* **类型**
`Callable[[Matcher, Bot, Event, dict], Union[Awaitable[None], Awaitable[NoReturn]]]`
* **说明**
事件响应器运行前预处理函数 RunPreProcessor 类型
## `RunPostProcessor`
* **类型**
2020-11-16 11:42:47 +00:00
`Callable[[Matcher, Optional[Exception], Bot, Event, dict], Union[Awaitable[None], Awaitable[NoReturn]]]`
2020-11-07 09:52:23 +00:00
* **说明**
2020-11-16 11:42:47 +00:00
事件响应器运行前预处理函数 RunPostProcessor 类型,第二个参数为运行时产生的错误(如果存在)
2020-08-19 12:29:37 +00:00
2020-08-20 07:07:05 +00:00
## `Matcher`
2020-08-19 12:29:37 +00:00
* **类型**
2020-09-13 05:01:23 +00:00
`Matcher`
2020-08-19 12:29:37 +00:00
* **说明**
2020-08-19 15:00:31 +00:00
Matcher 即响应事件的处理类。通过 Rule 判断是否响应事件,运行 Handler。
2020-09-27 16:12:11 +00:00
## `MatcherGroup`
* **类型**
`MatcherGroup`
* **说明**
MatcherGroup 为 Matcher 的集合。可以共享 Handler。
2020-08-20 07:07:05 +00:00
## `Rule`
2020-08-19 12:29:37 +00:00
2020-08-19 15:00:31 +00:00
* **类型**
2020-09-13 05:01:23 +00:00
`Rule`
2020-08-19 15:00:31 +00:00
* **说明**
Rule 即判断是否响应事件的处理类。内部存储 RuleChecker ,返回全为 True 则响应事件。
2020-08-20 07:07:05 +00:00
## `RuleChecker`
2020-08-19 15:00:31 +00:00
* **类型**
2020-09-13 05:01:23 +00:00
`Callable[[Bot, Event, dict], Union[bool, Awaitable[bool]]]`
2020-08-19 15:00:31 +00:00
* **说明**
RuleChecker 即判断是否响应事件的处理函数。
2020-08-20 07:07:05 +00:00
## `Permission`
2020-08-19 15:00:31 +00:00
* **类型**
2020-09-13 05:01:23 +00:00
`Permission`
2020-08-19 15:00:31 +00:00
* **说明**
Permission 即判断是否响应消息的处理类。内部存储 PermissionChecker ,返回只要有一个 True 则响应消息。
2020-08-20 07:07:05 +00:00
## `PermissionChecker`
2020-08-19 15:00:31 +00:00
* **类型**
2020-09-13 05:01:23 +00:00
`Callable[[Bot, Event], Union[bool, Awaitable[bool]]]`
2020-08-19 15:00:31 +00:00
* **说明**
RuleChecker 即判断是否响应消息的处理函数。
2020-08-20 07:07:05 +00:00
## `Handler`
2020-08-19 15:00:31 +00:00
* **类型**
2020-09-13 05:01:23 +00:00
`Callable[[Bot, Event, dict], Union[Awaitable[None], Awaitable[NoReturn]]]`
2020-08-19 15:00:31 +00:00
* **说明**
Handler 即事件的处理函数。
2020-08-20 07:07:05 +00:00
## `ArgsParser`
2020-08-19 15:00:31 +00:00
* **类型**
2020-09-13 05:01:23 +00:00
`Callable[[Bot, Event, dict], Union[Awaitable[None], Awaitable[NoReturn]]]`
2020-08-19 15:00:31 +00:00
* **说明**
ArgsParser 即消息参数解析函数,在 Matcher.got 获取参数时被运行。