【问题标题】:Generate Python type hints with SWIG使用 SWIG 生成 Python 类型提示
【发布时间】:2016-01-04 09:54:42
【问题描述】:

python 3.5+ 支持类型提示的事实在生成包装器时具有很好的用例,例如通过 SWIG。

在使用大型 C++ API 时具有类型提示会大大改善体验,因为您的 IDE/linter 可以执行编译时类型检查。

如何使用 SWIG 生成类型提示?

【问题讨论】:

  • 您可以简单地使用%pythoncode %{ %} 语法注入python 代码,并系统地用带有提示的函数包装函数。对于课程,您可以使用%extend。最好,您可以在您的类型映射中包含这些扩展,因此不需要手动操作。许多人对 python 3.0 不满意,所以我预计它需要一段时间才能成为标准类型映射的一部分

标签: python c++ python-3.x types swig


【解决方案1】:

swig autodoc 功能可以为您提供这个,至少在简单的情况下。

%feature("autodoc", "1") 添加到您的 SWIG 接口代码中,将生成如下内容:

def function_name(*args, **kwargs):
    """function_name(int x, int y, Foo foo=None, Bar bar=None) -> bool"""
    ...

http://www.swig.org/Doc3.0/SWIGDocumentation.html#Python_nn67

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-07-20
    • 2021-07-28
    • 1970-01-01
    • 1970-01-01
    • 2012-02-12
    • 2016-03-17
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多