跳转到主要内容

未提供项目描述

项目描述

一个提供多方法的库。所有函数都在 dialogue.multi_method 包中。

要创建一个多方法,创建一个分发函数,它接受参数并返回一个可哈希的值,该值用于分发。使用 @multi 函数注解来注解该函数。

对于您想要不同处理的每个分发函数值,创建一个具有该分发值的函数。

您可以定义一个没有分发值的函数,如果没有为分发值定义其他函数,则该函数将成为默认函数。

示例

@multi
def number(x):
  return x


@method(number, 1)
def number_one(x):
  return 'one'


@method(number)
def number_other(x):
  return "not one, but "+ str(c)


assert number(1) == 'one'
assert number(0) == 'not one, but 0'

分发函数可用,例如用于测试

assert dispatch_fn(number)('x') == 'x'

项目详情


下载文件

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

源分布

dialogue.multi-method-0.0.5.tar.gz (2.5 kB 查看哈希值)

上传时间:

由以下支持

AWSAWS云计算和安全赞助商DatadogDatadog监控FastlyFastlyCDNGoogleGoogle下载分析MicrosoftMicrosoftPSF赞助商PingdomPingdom监控SentrySentry错误记录StatusPageStatusPage状态页面