title: I want to call cdef function which takes cpp type as argument using python interpreter
body: <p>I'm generating different .pyx files and turning them to C++ .so libraries. So I got an example generatedLib.pyx like this:</p>
  <pre><code>from libcpp.vector cimport vector
  
  def cinit(self): pass
  
  cdef public void someFunction(vector[...]&amp; inputs):
    ...
  </code></pre>
  <p>The public function always has same signature, except for the name. I somehow wanna call this public function using python interpreter because I prefer to write tests in Python rather than C++. I cannot do it directly of course. I cannot define this function as def as well since its parameter is of C++ vector type.</p>
  <p>I have came up with an idea to have a wrapper function</p>
  <pre><code>def wrapperSomeFunction(input: list)
  {
    # convert Python list to c++ vector
    someFunction(v)
    # convert c++ vector back to python list and return
  }
  </code></pre>
  <p>I can import the generatedLib as python module and call this wrapper just fine, it requires however, to append it to my generatedFile.pyx file contents every time I wanna test it before I build it. I would rather look for alternative solutions.</p>
  <p>Is there some way I can build a separate .pyx which will have this wrapper inside and will be able to call my generatedLib.so? Or perhaps something else I didn't think of?</p>