当使用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都将消失。
我现在的问题是,有没有更好的方法来实现这一目标?
谢谢
答案 0 :(得分:1)
从文档中可以看出任何带有评论的文件
#@PydevCodeAnalysisIgnore
里面不会被分析。
因此,您只需将其添加到所有SWIG生成的文件中,您就可以了。它只是一个可以改变的地方,你甚至可以编写一个非常小的处理器来自动添加它。