API传入回调函数的规格说明
项目描述
API传入回调函数的规格说明
如果您的代码允许其他人提供回调函数,则指定您期望的函数签名并检查函数是否支持该签名非常重要。添加额外的参数可能会破坏其他人的代码,除非您非常小心。
backcall提供了一种使用原型函数指定回调签名的功能
from backcall import callback_prototype @callback_prototype def handle_ping(sender, delay=None): # Specify positional parameters without a default, and keyword # parameters with a default. pass def register_ping_handler(callback): # This checks and adapts the function passed in: callback = handle_ping.adapt(callback) ping_callbacks.append(callback)
如果回调参数少于原型,backcall将使用一个丢弃额外参数的函数包装它。如果回调期望更多参数,则在注册时抛出TypeError。
测试使用pytest运行。在根目录中,执行
py.test
项目详情
下载文件
下载适合您平台的应用程序。如果您不确定选择哪个,请了解有关安装包的更多信息。
源分布
backcall-0.2.0.tar.gz (18.0 kB 查看散列)
构建分布
backcall-0.2.0-py2.py3-none-any.whl (11.2 kB 查看散列)