pybind/pybind11

Unkown objects in docstring function signatures

Open

#1585 aperta il 1 nov 2018

Vedi su GitHub
 (3 commenti) (0 reazioni) (0 assegnatari)C++ (2005 fork)batch import
enhancementhelp wanted

Metriche repository

Star
 (14.677 star)
Metriche merge PR
 (Merge medio 5g 2h) (10 PR mergiate in 30 g)

Descrizione

I try to rely on mypy's stubgen (with recent improvements) to generate *.pyi files from Python classes generated by pybind11. It's almost perfect, though there are just a few things that needs a bit of polishing:

  • iterator - when creating method with .def("some_func", [](some_type const &a) {return py::make_iterator(a.cbegin<elem_type>(), a.cend<elem_type>());}; then docstring is some_func() -> iterator. Type should be either Iterator (from typing) or even better, if it would be Iterator[elem_type]
  • buffer - when binding method with signature add_buffer(py::buffer const &buf) the docstring is add_buffer(buffer: buffer). Is this buffer in Python2 and bytearray in Python3? Should stubgen alias bytearray as buffer in such cases?

Guida contributor