autowrap icon indicating copy to clipboard operation
autowrap copied to clipboard

Overloaded method docstrings don't indent properly

Open erik-whiting opened this issue 2 years ago • 0 comments

I noticed that the docstrings generated for overloaded methods leave the closing """ all the way to the left. I confirmed that this does not happen on all multiline docstrings; I made a wrap-doc directive with multiple lines and the indentation was fine.

Example:

int_holder.hpp:

class IntHolder {
  public:
    int i_;
    int j_;
    IntHolder(int i): i_(i), j_(i * 2) {};
    IntHolder(const IntHolder &i): i_(i.i_), j_(i.j_) {};
    int add(const IntHolder &other) {
      return i_ + other.i_;
    }

    int someMethod() {
      return i_ + j_;
    }

    int someMethod(int k) {
      return i_ + j_ + k;
    }

    int someMethod(int k, int x) {
      return i_ + j_ + k + x;
    }
};

int_holder.pxd

cdef extern from "int_holder.hpp":
  cdef cppclass IntHolder:
    int i_
    int j_
    IntHolder(int i)
    IntHolder(IntHolder &i)
    int add(IntHolder o)
    int someMethod()
    int someMethod(int k)
    int someMethod(int k, int x)

Resulting py_int_holder.pyx file: image Note the indentation on line 129

I think this is probably a good first issue or something easy for a beginner level programmer. If so, please label appropriately. If not, please assign to me. Thanks!

erik-whiting avatar Jun 21 '22 01:06 erik-whiting