跳转到主要内容

Effect/Twisted集成

项目描述

txEffect

https://travis-ci.org/python-effect/txeffect.svg?branch=master https://img.shields.io/pypi/v/txeffect.svg

txEffect是一个小型库,用于集成Twisted和Effect,主要围绕Deferredhttps://txeffect.readthedocs.org/找到。

Effect是一个库,可以帮助你通过隔离代码中的效果(即I/O或状态操作)来编写纯函数式代码。文档可在https://effect.readthedocs.org/找到。

示例

使用txeffect.perform执行Effect以获取Deferred。

from txeffect import perform
d = perform(my_dispatcher, some_effect)
d.addCallback(log.msg)

使用txeffect.deferred_performer实现返回Deferred的intent执行者。

from twisted.internet.defer import succeed
from txeffect import deferred_performer

@deferred_performer
def perform_foo(dispatcher, intent):
    return succeed('hello, world')

使用txeffect.make_twisted_dispatcher通过异步实现执行标准的Delayparallel效果。

from twisted.internet import reactor
from txeffect import make_twisted_dispatcher

dispatcher = make_twisted_dispatcher(reactor)
p_effs = parallel([Effect(Delay(5), Effect(Delay(3), Effect(Delay(1))))])
perform(dispatcher, p_effs).addCallback(
    lambda: print("5 seconds have passed!"))

工作示例可在effect-examples GitHub存储库中找到。

感谢

感谢Rackspace允许我从事此项目,并拥有一个优秀的 开源员工贡献政策

IRC

在irc.freenode.net上有一个#python-effect IRC频道。

许可证

txEffect受MIT许可证许可

版权所有 (C) 2014 Christopher Armstrong

特此授予任何获得本软件及其相关文档文件(“软件”)副本的任何人免费处理软件的权利,包括但不限于使用、复制、修改、合并、发布、分发、再许可和/或销售软件副本,并允许向提供软件的人员这样做,但受以下条件的约束

上述版权声明和本许可声明应包含在软件的所有副本或主要部分中。

软件按“原样”提供,不提供任何形式的保证,无论是明示的还是隐含的,包括但不限于适销性、适用于特定目的和非侵权性。在任何情况下,作者或版权所有者均不对任何索赔、损害或其他责任负责,无论基于合同、侵权或其他原因,是否与软件有关,或与使用或以其他方式处理软件有关。

项目详情


下载文件

下载适用于您平台的文件。如果您不确定选择哪个,请了解更多关于安装包的信息。

源代码分发

txeffect-1.0.0.tar.gz (5.7 kB 查看哈希值)

上传时间 源代码

构建分发

txeffect-1.0.0-py2.py3-none-any.whl (6.0 kB 查看哈希值)

上传时间 Python 2 Python 3

由以下机构支持

AWSAWS 云计算和安全赞助商 DatadogDatadog 监控 FastlyFastly CDN GoogleGoogle 下载分析 MicrosoftMicrosoft PSF赞助商 PingdomPingdom 监控 SentrySentry 错误日志 StatusPageStatusPage 状态页面