I want to implement tuple of object in my cython project.
I couldn’t find a way to implement in .pyx
file so that I can use it in python.
You can check my get_language
method for some reference.
And please help me with my get_value
method which has tuple of object
as parameter and returns tuple of object
value.
In CPP Side
#include "Career.h"
#include "Language.h"
using triple_language_ptr = std::tuple<std::shared_ptr<_Language>, std::shared_ptr<_Language>, std::shared_ptr<_Language>>
class _Career{
std::shared_ptr<_Language> get_language(std::shared_ptr<_Language> value);
triple_language_ptr get_value(triple_language_ptr value);
}
In Cython Side
[career.pxd]
cdef extern from "Career.h":
cdef cppclass _Line:
_Career(...)
shared_ptr[_Language] get_language(shared_ptr[_Language] value)
tuple[shared_ptr[_Language], shared_ptr[_Language],shared_ptr[_Language]] get_value(
tuple[shared_ptr[_Language], shared_ptr[_Language], shared_ptr[_Language]] value
)
cdef class Career:
cdef shared_ptr[_Career] career_ptr
[career.pyx]
cdef class Career:
def __cinit__(...):
pass
def get_language(self, value: Language):
cdef Language py_lang = Language()
py_lang.lang_ptr = self.career_ptr.get().get_language(value.lang_ptr)
return py_lang
def get_value(self, value: ???):
# Fill this part of code for me
pass
Thank you.