nonebot2/website/versioned_docs/version-2.3.3/api/typing.md

304 lines
6.1 KiB
Markdown
Raw Normal View History

2024-08-18 11:57:17 +08:00
---
sidebar_position: 11
description: nonebot.typing 模块
---
# nonebot.typing
本模块定义了 NoneBot 模块中共享的一些类型。
使用 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)。
## _def_ `overrides(InterfaceClass)` {#overrides}
- **说明:** 标记一个方法为父类 interface 的 implement
- **参数**
- `InterfaceClass` (object)
- **返回**
- untyped
## _def_ `type_has_args(type_)` {#type-has-args}
- **参数**
- `type_` (type[Any])
- **返回**
- bool
## _def_ `origin_is_union(origin)` {#origin-is-union}
- **参数**
- `origin` (type[Any] | None)
- **返回**
- bool
## _def_ `origin_is_literal(origin)` {#origin-is-literal}
- **说明:** 判断是否是 Literal 类型
- **参数**
- `origin` (type[Any] | None)
- **返回**
- bool
## _def_ `all_literal_values(type_)` {#all-literal-values}
- **说明:** 获取 Literal 类型包含的所有值
- **参数**
- `type_` (type[Any])
- **返回**
- list[Any]
## _def_ `origin_is_annotated(origin)` {#origin-is-annotated}
- **说明:** 判断是否是 Annotated 类型
- **参数**
- `origin` (type[Any] | None)
- **返回**
- bool
## _def_ `is_none_type(type_)` {#is-none-type}
- **说明:** 判断是否是 None 类型
- **参数**
- `type_` (type[Any])
- **返回**
- bool
## _def_ `evaluate_forwardref(ref, globalns, localns)` {#evaluate-forwardref}
- **参数**
- `ref` (ForwardRef)
- `globalns` (dict[str, Any])
- `localns` (dict[str, Any])
- **返回**
- Any
## _class_ `StateFlag(<auto>)` {#StateFlag}
- **参数**
auto
## _var_ `T_State` {#T-State}
- **类型:** dict[Any, Any]
- **说明:** 事件处理状态 State 类型
## _var_ `T_BotConnectionHook` {#T-BotConnectionHook}
- **类型:** \_DependentCallable[Any]
- **说明**
Bot 连接建立时钩子函数
依赖参数:
- DependParam: 子依赖参数
- BotParam: Bot 对象
- DefaultParam: 带有默认值的参数
## _var_ `T_BotDisconnectionHook` {#T-BotDisconnectionHook}
- **类型:** \_DependentCallable[Any]
- **说明**
Bot 连接断开时钩子函数
依赖参数:
- DependParam: 子依赖参数
- BotParam: Bot 对象
- DefaultParam: 带有默认值的参数
## _var_ `T_CallingAPIHook` {#T-CallingAPIHook}
- **类型:** ([Bot](adapters/index.md#Bot), str, dict[str, Any]) -> Awaitable[Any]
- **说明:** `bot.call_api` 钩子函数
## _var_ `T_CalledAPIHook` {#T-CalledAPIHook}
- **类型:** ([Bot](adapters/index.md#Bot), Exception | None, str, dict[str, Any], Any) -> Awaitable[Any]
- **说明:** `bot.call_api` 后执行的函数,参数分别为 bot, exception, api, data, result
## _var_ `T_EventPreProcessor` {#T-EventPreProcessor}
- **类型:** \_DependentCallable[Any]
- **说明**
事件预处理函数 EventPreProcessor 类型
依赖参数:
- DependParam: 子依赖参数
- BotParam: Bot 对象
- EventParam: Event 对象
- StateParam: State 对象
- DefaultParam: 带有默认值的参数
## _var_ `T_EventPostProcessor` {#T-EventPostProcessor}
- **类型:** \_DependentCallable[Any]
- **说明**
事件后处理函数 EventPostProcessor 类型
依赖参数:
- DependParam: 子依赖参数
- BotParam: Bot 对象
- EventParam: Event 对象
- StateParam: State 对象
- DefaultParam: 带有默认值的参数
## _var_ `T_RunPreProcessor` {#T-RunPreProcessor}
- **类型:** \_DependentCallable[Any]
- **说明**
事件响应器运行前预处理函数 RunPreProcessor 类型
依赖参数:
- DependParam: 子依赖参数
- BotParam: Bot 对象
- EventParam: Event 对象
- StateParam: State 对象
- MatcherParam: Matcher 对象
- DefaultParam: 带有默认值的参数
## _var_ `T_RunPostProcessor` {#T-RunPostProcessor}
- **类型:** \_DependentCallable[Any]
- **说明**
事件响应器运行后后处理函数 RunPostProcessor 类型
依赖参数:
- DependParam: 子依赖参数
- BotParam: Bot 对象
- EventParam: Event 对象
- StateParam: State 对象
- MatcherParam: Matcher 对象
- ExceptionParam: 异常对象(可能为 None
- DefaultParam: 带有默认值的参数
## _var_ `T_RuleChecker` {#T-RuleChecker}
- **类型:** \_DependentCallable[bool]
- **说明**
RuleChecker 即判断是否响应事件的处理函数。
依赖参数:
- DependParam: 子依赖参数
- BotParam: Bot 对象
- EventParam: Event 对象
- StateParam: State 对象
- DefaultParam: 带有默认值的参数
## _var_ `T_PermissionChecker` {#T-PermissionChecker}
- **类型:** \_DependentCallable[bool]
- **说明**
PermissionChecker 即判断事件是否满足权限的处理函数。
依赖参数:
- DependParam: 子依赖参数
- BotParam: Bot 对象
- EventParam: Event 对象
- DefaultParam: 带有默认值的参数
## _var_ `T_Handler` {#T-Handler}
- **类型:** \_DependentCallable[Any]
- **说明:** Handler 处理函数。
## _var_ `T_TypeUpdater` {#T-TypeUpdater}
- **类型:** \_DependentCallable[str]
- **说明**
TypeUpdater 在 Matcher.pause, Matcher.reject 时被运行,用于更新响应的事件类型。 默认会更新为 `message`
依赖参数:
- DependParam: 子依赖参数
- BotParam: Bot 对象
- EventParam: Event 对象
- StateParam: State 对象
- MatcherParam: Matcher 对象
- DefaultParam: 带有默认值的参数
## _var_ `T_PermissionUpdater` {#T-PermissionUpdater}
- **类型:** \_DependentCallable[[Permission](permission.md#Permission)]
- **说明**
PermissionUpdater 在 Matcher.pause, Matcher.reject 时被运行,用于更新会话对象权限。 默认会更新为当前事件的触发对象。
依赖参数:
- DependParam: 子依赖参数
- BotParam: Bot 对象
- EventParam: Event 对象
- StateParam: State 对象
- MatcherParam: Matcher 对象
- DefaultParam: 带有默认值的参数
## _var_ `T_DependencyCache` {#T-DependencyCache}
- **类型:** dict[\_DependentCallable[Any], Task[Any]]
- **说明:** 依赖缓存, 用于存储依赖函数的返回值