Eclipse Pydev:用swig生成的python包装器中的Supress no-self错误

时间:2010-03-12 08:52:40

标签: python swig pydev

当使用swig生成python包装器时,生成的python文件中的python包装器类没有显式的self参数,例如见下文:

class PySwigIterator(_object):
    def value(*args): return _spatiotemporalnmf.PySwigIterator_value(*args)
    def incr(*args): return _spatiotemporalnmf.PySwigIterator_incr(*args)
    def decr(*args): return _spatiotemporalnmf.PySwigIterator_decr(*args)
    def distance(*args): return _spatiotemporalnmf.PySwigIterator_distance(*args)

我正在开发日食插入Pydev。 Pydev在检测到没有显式自参数的方法时总是显示错误。我知道有两种方法可以摆脱错误:首先,在Pydev首选项中禁用整个项目的错误检查。其次,为每一行添加一个#@ NoSelf并出现错误。我不想使用第一个,因为我仍然希望得到我的非swig生成的文件的错误警告。显然第二个也不是很好,因为我必须手工完成,每次我再次生成文件时,所有#@ NoSelfs都将消失。

我现在的问题是,有没有更好的方法来实现这一目标?

谢谢

1 个答案:

答案 0 :(得分:1)

从文档中可以看出任何带有评论的文件

#@PydevCodeAnalysisIgnore

里面不会被分析。

因此,您只需将其添加到所有SWIG生成的文件中,您就可以了。它只是一个可以改变的地方,你甚至可以编写一个非常小的处理器来自动添加它。