4

我一直在阅读 ocstyle 源代码,并且遇到了在它们之前有“-”的方法。这是一个例子

@rule(modifier[...] + (sizedCType | anyIdentifier) + -implementedProtocols +
      (Present(Regex(r'[(),<>:]')) | sp(1)) + Literal('*')[...])

有时方法在返回之前的方法调用之前有一个“-”。有没有人可以识别这叫什么或将我指向其他资源?我已经尝试寻找它并得出结论,这将是我最好的选择。

4

2 回答 2

2

在 python 中,您可以为许多一元运算符定义一个魔术函数。您给出的示例中的一个__neg__(self)通常由定义。我建议搜索源代码以查看该函数在您的示例中的作用。

作为参考,这里有一个“魔法函数”列表。

于 2013-08-14T18:41:01.380 回答
0

无论implementedProtocols属于哪种类型,都为否定运算符定义了自己的语义。您必须查看文档或源代码才能弄清楚这些语义是什么。

于 2013-08-14T18:38:59.113 回答