Is there a good way to produce documentation for swig interfaces?

前端 未结 2 1873
梦毁少年i
梦毁少年i 2021-01-04 19:12

I\'d like to know if there are any good techniques for constructing/maintaining documentation on the interface.

I\'m building an interface from c++ code to python us

相关标签:
2条回答
  • 2021-01-04 19:59

    To get your doxygen comments into the python files there exists a python tool called doxy2swig.py on the web as described here.

    Create xml documentation from your code. Then use the tool:

    doxy2swig.py index.xml documentation.i

    and import documentation.i in you swig interface file via

    %import "documentation.i"

    And its done.

    0 讨论(0)
  • 2021-01-04 20:00

    There's some mileage in %feature("autodoc") with SWIG 2.0, which I think is as far is it goes currently.

    For example:

    %module test
    
    %feature("autodoc", "3");
    
    void foo (int *a, void *bar, double epsilon);
    

    causes some vaguely sane documentation to be inserted.

    If that isn't sufficient I think the next easiest step would be to use %pythonprepend to make a marker that's unique enough sed or similar can be used to insert documentation into the interface after SWIG has run automatically:

    %pythonprepend foo "MARKER"
    

    and then:

    sed -ei 's/MARKER/some documentation' test.py
    

    Where you could find the functions to %pythonprepend by looking over the Doxygen output using a (Python?) script to generate the markers and substitute them after running SWIG.

    0 讨论(0)
提交回复
热议问题