nonebot.dependencies
本模块模块实现了依赖注入的定义与处理。
abstract class Param(default=PydanticUndefined, **kwargs)
说明
依赖注入的基本单元 —— 参数。
继承自
pydantic.fields.FieldInfo
,用于描述参数信息(不包括参数名)。参数
default
(Any)**kwargs
(Any)
class Dependent(call, params=<factory>, parameterless=<factory>)
说明
依赖注入容器
参数
call
((Any, **Any) -> (~ R) | (Any, **Any) -> Awaitable[(~ R)]): 依赖注入的可调用对象,可以是任何 Callable 对象params
(tuple[pydantic.fields.ModelField]): 具名参数列表parameterless
(tuple[Param]): 匿名参数列表pre_checkers
: 依赖注入解析前的参数检查allow_types
: 允许的参数类型
async method check(self, **params)
参数
**params
(Any)
返回
- None
classmethod parse(cls, *, call, parameterless=None, allow_types)
参数
call
((Any, **Any) -> (~ R) | (Any, **Any) -> Awaitable[(~ R)])parameterless
(Iterable[Any] | None)allow_types
(Iterable[Type[Param]])
返回
- Dependent[R]
staticmethod parse_parameterless(parameterless, allow_types)
staticmethod parse_params(call, allow_types)
参数
call
((Any, **Any) -> (~ R) | (Any, **Any) -> Awaitable[(~ R)])allow_types
(tuple[Type[Param], ...])
返回
- tuple[pydantic.fields.ModelField]
async method solve(self, **params)
参数
**params
(Any)
返回
- dict[str, Any]