1

swigを使用してPythonラッパーを生成する場合、生成されたpythonファイルのpythonラッパークラスには明示的な自己パラメーターがありません。たとえば、以下を参照してください。

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は、明示的な自己パラメーターのないメソッドを検出すると、常にエラーを表示します。エラーを取り除くための2つの方法を知っています。まず、Pydev設定でプロジェクト全体のエラーチェックを無効にします。次に、エラーのあるすべての行に#@NoSelfを追加します。スウィッグで生成されていないファイルに対してエラー警告を受け取りたいので、最初のファイルは使用しません。明らかに、2番目のものもあまり良くありません。手作業で行う必要があり、ファイルを再度生成するたびに、すべての#@NoSelfsが消えてしまうからです。

今の私の質問は、これを達成するためのより良い方法はありますか?

ありがとう

4

1 に答える 1

1

ドキュメントからのように、コメント付きのファイル

#@PydevCodeAnalysisIgnore

内部は分析されません。

したがって、SWIGで生成されたすべてのファイルに追加するだけで、問題はありません。変更する場所は1つだけであり、自動的に追加する非常に小さなプロセッサを作成することもできます。

于 2010-03-12T09:16:49.410 に答える