diff --git a/dtool/metalibs/dtoolconfig/pydtool.cxx b/dtool/metalibs/dtoolconfig/pydtool.cxx index 39719b385d..5eca11ea8c 100644 --- a/dtool/metalibs/dtoolconfig/pydtool.cxx +++ b/dtool/metalibs/dtoolconfig/pydtool.cxx @@ -60,6 +60,8 @@ static PyObject *_inP07ytISgV(PyObject *self, PyObject *args); static PyObject *_inP07ytH3bx(PyObject *self, PyObject *args); static PyObject *_inP07ytzeUk(PyObject *self, PyObject *args); static PyObject *_inP07ytUeI5(PyObject *self, PyObject *args); +static PyObject *_inP07ytJAAI(PyObject *self, PyObject *args); +static PyObject *_inP07yt0UXw(PyObject *self, PyObject *args); static PyObject *_inP07ytuSvx(PyObject *self, PyObject *args); static PyObject *_inP07ytwpYd(PyObject *self, PyObject *args); static PyObject *_inP07ytOfNh(PyObject *self, PyObject *args); @@ -82,6 +84,7 @@ static PyObject *_inP07ytGMpW(PyObject *self, PyObject *args); static PyObject *_inP07ytNuBV(PyObject *self, PyObject *args); static PyObject *_inP07yt9UwA(PyObject *self, PyObject *args); static PyObject *_inP07yt3FDt(PyObject *self, PyObject *args); +static PyObject *_inP07ytDgOY(PyObject *self, PyObject *args); static PyObject *_inP07ytf513(PyObject *self, PyObject *args); static PyObject *_inP07ytsqGH(PyObject *self, PyObject *args); static PyObject *_inP07yt7shV(PyObject *self, PyObject *args); @@ -124,6 +127,7 @@ static PyObject *_inP07ytMnKa(PyObject *self, PyObject *args); static PyObject *_inP07ytRtji(PyObject *self, PyObject *args); static PyObject *_inP07ytCnbQ(PyObject *self, PyObject *args); static PyObject *_inP07ytdUVN(PyObject *self, PyObject *args); +static PyObject *_inP07ytZtNk(PyObject *self, PyObject *args); static PyObject *_inP07ytihbt(PyObject *self, PyObject *args); static PyObject *_inP07ytbyPY(PyObject *self, PyObject *args); static PyObject *_inP07ytAaT6(PyObject *self, PyObject *args); @@ -149,6 +153,7 @@ static PyObject *_inP07ytHDtN(PyObject *self, PyObject *args); static PyObject *_inP07ytHFjA(PyObject *self, PyObject *args); static PyObject *_inP07yt_NPR(PyObject *self, PyObject *args); static PyObject *_inP07ytcTOH(PyObject *self, PyObject *args); +static PyObject *_inP07ytC5Uk(PyObject *self, PyObject *args); static PyObject *_inP07ythdU7(PyObject *self, PyObject *args); static PyObject *_inP07ytQPxU(PyObject *self, PyObject *args); static PyObject *_inP07ytO7Pz(PyObject *self, PyObject *args); @@ -168,7 +173,7 @@ static PyObject * _inP07yttbRf(PyObject *, PyObject *args) { char *param0; if (PyArg_ParseTuple(args, "s", ¶m0)) { - ::interrogate_add_search_directory((char const *)param0); + (::interrogate_add_search_directory)((char const *)param0); return Py_BuildValue(""); } return nullptr; @@ -182,7 +187,7 @@ static PyObject * _inP07ytda_g(PyObject *, PyObject *args) { char *param0; if (PyArg_ParseTuple(args, "s", ¶m0)) { - ::interrogate_add_search_path((char const *)param0); + (::interrogate_add_search_path)((char const *)param0); return Py_BuildValue(""); } return nullptr; @@ -195,7 +200,7 @@ _inP07ytda_g(PyObject *, PyObject *args) { static PyObject * _inP07yt4RgX(PyObject *, PyObject *args) { if (PyArg_ParseTuple(args, "")) { - bool return_value = ::interrogate_error_flag(); + bool return_value = (::interrogate_error_flag)(); return PyBool_FromLong(return_value); } return nullptr; @@ -208,7 +213,7 @@ _inP07yt4RgX(PyObject *, PyObject *args) { static PyObject * _inP07yt3Gip(PyObject *, PyObject *args) { if (PyArg_ParseTuple(args, "")) { - int return_value = ::interrogate_number_of_manifests(); + int return_value = (::interrogate_number_of_manifests)(); #if PY_MAJOR_VERSION >= 3 return PyLong_FromLong(return_value); #else @@ -226,7 +231,7 @@ static PyObject * _inP07ytRKDz(PyObject *, PyObject *args) { int param0; if (PyArg_ParseTuple(args, "i", ¶m0)) { - ManifestIndex return_value = ::interrogate_get_manifest((int)param0); + ManifestIndex return_value = (::interrogate_get_manifest)((int)param0); #if PY_MAJOR_VERSION >= 3 return PyLong_FromLong(return_value); #else @@ -244,7 +249,7 @@ static PyObject * _inP07ytgZ9N(PyObject *, PyObject *args) { char *param0; if (PyArg_ParseTuple(args, "s", ¶m0)) { - ManifestIndex return_value = ::interrogate_get_manifest_by_name((char const *)param0); + ManifestIndex return_value = (::interrogate_get_manifest_by_name)((char const *)param0); #if PY_MAJOR_VERSION >= 3 return PyLong_FromLong(return_value); #else @@ -262,7 +267,7 @@ static PyObject * _inP07ytFnRZ(PyObject *, PyObject *args) { int param0; if (PyArg_ParseTuple(args, "i", ¶m0)) { - char const *return_value = ::interrogate_manifest_name((ManifestIndex)param0); + char const *return_value = (::interrogate_manifest_name)((ManifestIndex)param0); #if PY_MAJOR_VERSION >= 3 return PyUnicode_FromString(return_value); #else @@ -280,7 +285,7 @@ static PyObject * _inP07ytg0Qv(PyObject *, PyObject *args) { int param0; if (PyArg_ParseTuple(args, "i", ¶m0)) { - char const *return_value = ::interrogate_manifest_definition((ManifestIndex)param0); + char const *return_value = (::interrogate_manifest_definition)((ManifestIndex)param0); #if PY_MAJOR_VERSION >= 3 return PyUnicode_FromString(return_value); #else @@ -298,7 +303,7 @@ static PyObject * _inP07yttrqw(PyObject *, PyObject *args) { int param0; if (PyArg_ParseTuple(args, "i", ¶m0)) { - bool return_value = ::interrogate_manifest_has_type((ManifestIndex)param0); + bool return_value = (::interrogate_manifest_has_type)((ManifestIndex)param0); return PyBool_FromLong(return_value); } return nullptr; @@ -312,7 +317,7 @@ static PyObject * _inP07ytdmpW(PyObject *, PyObject *args) { int param0; if (PyArg_ParseTuple(args, "i", ¶m0)) { - TypeIndex return_value = ::interrogate_manifest_get_type((ManifestIndex)param0); + TypeIndex return_value = (::interrogate_manifest_get_type)((ManifestIndex)param0); #if PY_MAJOR_VERSION >= 3 return PyLong_FromLong(return_value); #else @@ -330,7 +335,7 @@ static PyObject * _inP07ytUYgQ(PyObject *, PyObject *args) { int param0; if (PyArg_ParseTuple(args, "i", ¶m0)) { - bool return_value = ::interrogate_manifest_has_getter((ManifestIndex)param0); + bool return_value = (::interrogate_manifest_has_getter)((ManifestIndex)param0); return PyBool_FromLong(return_value); } return nullptr; @@ -344,7 +349,7 @@ static PyObject * _inP07yt0k7F(PyObject *, PyObject *args) { int param0; if (PyArg_ParseTuple(args, "i", ¶m0)) { - FunctionIndex return_value = ::interrogate_manifest_getter((ManifestIndex)param0); + FunctionIndex return_value = (::interrogate_manifest_getter)((ManifestIndex)param0); #if PY_MAJOR_VERSION >= 3 return PyLong_FromLong(return_value); #else @@ -362,7 +367,7 @@ static PyObject * _inP07ytfIsr(PyObject *, PyObject *args) { int param0; if (PyArg_ParseTuple(args, "i", ¶m0)) { - bool return_value = ::interrogate_manifest_has_int_value((ManifestIndex)param0); + bool return_value = (::interrogate_manifest_has_int_value)((ManifestIndex)param0); return PyBool_FromLong(return_value); } return nullptr; @@ -376,7 +381,7 @@ static PyObject * _inP07ytvysR(PyObject *, PyObject *args) { int param0; if (PyArg_ParseTuple(args, "i", ¶m0)) { - int return_value = ::interrogate_manifest_get_int_value((ManifestIndex)param0); + int return_value = (::interrogate_manifest_get_int_value)((ManifestIndex)param0); #if PY_MAJOR_VERSION >= 3 return PyLong_FromLong(return_value); #else @@ -394,7 +399,7 @@ static PyObject * _inP07ytYQ_2(PyObject *, PyObject *args) { int param0; if (PyArg_ParseTuple(args, "i", ¶m0)) { - char const *return_value = ::interrogate_element_name((ElementIndex)param0); + char const *return_value = (::interrogate_element_name)((ElementIndex)param0); #if PY_MAJOR_VERSION >= 3 return PyUnicode_FromString(return_value); #else @@ -412,7 +417,7 @@ static PyObject * _inP07yt3kdv(PyObject *, PyObject *args) { int param0; if (PyArg_ParseTuple(args, "i", ¶m0)) { - char const *return_value = ::interrogate_element_scoped_name((ElementIndex)param0); + char const *return_value = (::interrogate_element_scoped_name)((ElementIndex)param0); #if PY_MAJOR_VERSION >= 3 return PyUnicode_FromString(return_value); #else @@ -430,7 +435,7 @@ static PyObject * _inP07ytew01(PyObject *, PyObject *args) { int param0; if (PyArg_ParseTuple(args, "i", ¶m0)) { - bool return_value = ::interrogate_element_has_comment((ElementIndex)param0); + bool return_value = (::interrogate_element_has_comment)((ElementIndex)param0); return PyBool_FromLong(return_value); } return nullptr; @@ -444,7 +449,7 @@ static PyObject * _inP07ytQna7(PyObject *, PyObject *args) { int param0; if (PyArg_ParseTuple(args, "i", ¶m0)) { - char const *return_value = ::interrogate_element_comment((ElementIndex)param0); + char const *return_value = (::interrogate_element_comment)((ElementIndex)param0); #if PY_MAJOR_VERSION >= 3 return PyUnicode_FromString(return_value); #else @@ -462,7 +467,7 @@ static PyObject * _inP07ytkg95(PyObject *, PyObject *args) { char *param0; if (PyArg_ParseTuple(args, "s", ¶m0)) { - ElementIndex return_value = ::interrogate_get_element_by_name((char const *)param0); + ElementIndex return_value = (::interrogate_get_element_by_name)((char const *)param0); #if PY_MAJOR_VERSION >= 3 return PyLong_FromLong(return_value); #else @@ -480,7 +485,7 @@ static PyObject * _inP07ytluRc(PyObject *, PyObject *args) { char *param0; if (PyArg_ParseTuple(args, "s", ¶m0)) { - ElementIndex return_value = ::interrogate_get_element_by_scoped_name((char const *)param0); + ElementIndex return_value = (::interrogate_get_element_by_scoped_name)((char const *)param0); #if PY_MAJOR_VERSION >= 3 return PyLong_FromLong(return_value); #else @@ -498,7 +503,7 @@ static PyObject * _inP07yttHdM(PyObject *, PyObject *args) { int param0; if (PyArg_ParseTuple(args, "i", ¶m0)) { - TypeIndex return_value = ::interrogate_element_type((ElementIndex)param0); + TypeIndex return_value = (::interrogate_element_type)((ElementIndex)param0); #if PY_MAJOR_VERSION >= 3 return PyLong_FromLong(return_value); #else @@ -516,7 +521,7 @@ static PyObject * _inP07ytDId0(PyObject *, PyObject *args) { int param0; if (PyArg_ParseTuple(args, "i", ¶m0)) { - bool return_value = ::interrogate_element_has_getter((ElementIndex)param0); + bool return_value = (::interrogate_element_has_getter)((ElementIndex)param0); return PyBool_FromLong(return_value); } return nullptr; @@ -530,7 +535,7 @@ static PyObject * _inP07ytHuAm(PyObject *, PyObject *args) { int param0; if (PyArg_ParseTuple(args, "i", ¶m0)) { - FunctionIndex return_value = ::interrogate_element_getter((ElementIndex)param0); + FunctionIndex return_value = (::interrogate_element_getter)((ElementIndex)param0); #if PY_MAJOR_VERSION >= 3 return PyLong_FromLong(return_value); #else @@ -548,7 +553,7 @@ static PyObject * _inP07yt_xr0(PyObject *, PyObject *args) { int param0; if (PyArg_ParseTuple(args, "i", ¶m0)) { - bool return_value = ::interrogate_element_has_setter((ElementIndex)param0); + bool return_value = (::interrogate_element_has_setter)((ElementIndex)param0); return PyBool_FromLong(return_value); } return nullptr; @@ -562,7 +567,7 @@ static PyObject * _inP07ytH5qp(PyObject *, PyObject *args) { int param0; if (PyArg_ParseTuple(args, "i", ¶m0)) { - FunctionIndex return_value = ::interrogate_element_setter((ElementIndex)param0); + FunctionIndex return_value = (::interrogate_element_setter)((ElementIndex)param0); #if PY_MAJOR_VERSION >= 3 return PyLong_FromLong(return_value); #else @@ -580,7 +585,7 @@ static PyObject * _inP07ytq45U(PyObject *, PyObject *args) { int param0; if (PyArg_ParseTuple(args, "i", ¶m0)) { - bool return_value = ::interrogate_element_is_sequence((ElementIndex)param0); + bool return_value = (::interrogate_element_is_sequence)((ElementIndex)param0); return PyBool_FromLong(return_value); } return nullptr; @@ -594,7 +599,7 @@ static PyObject * _inP07yt6IPa(PyObject *, PyObject *args) { int param0; if (PyArg_ParseTuple(args, "i", ¶m0)) { - bool return_value = ::interrogate_element_is_mapping((ElementIndex)param0); + bool return_value = (::interrogate_element_is_mapping)((ElementIndex)param0); return PyBool_FromLong(return_value); } return nullptr; @@ -607,7 +612,7 @@ _inP07yt6IPa(PyObject *, PyObject *args) { static PyObject * _inP07ytU2_B(PyObject *, PyObject *args) { if (PyArg_ParseTuple(args, "")) { - int return_value = ::interrogate_number_of_globals(); + int return_value = (::interrogate_number_of_globals)(); #if PY_MAJOR_VERSION >= 3 return PyLong_FromLong(return_value); #else @@ -625,7 +630,7 @@ static PyObject * _inP07ytHFO2(PyObject *, PyObject *args) { int param0; if (PyArg_ParseTuple(args, "i", ¶m0)) { - ElementIndex return_value = ::interrogate_get_global((int)param0); + ElementIndex return_value = (::interrogate_get_global)((int)param0); #if PY_MAJOR_VERSION >= 3 return PyLong_FromLong(return_value); #else @@ -642,7 +647,7 @@ _inP07ytHFO2(PyObject *, PyObject *args) { static PyObject * _inP07ytcfjm(PyObject *, PyObject *args) { if (PyArg_ParseTuple(args, "")) { - int return_value = ::interrogate_number_of_global_functions(); + int return_value = (::interrogate_number_of_global_functions)(); #if PY_MAJOR_VERSION >= 3 return PyLong_FromLong(return_value); #else @@ -660,7 +665,7 @@ static PyObject * _inP07yt3Sjw(PyObject *, PyObject *args) { int param0; if (PyArg_ParseTuple(args, "i", ¶m0)) { - FunctionIndex return_value = ::interrogate_get_global_function((int)param0); + FunctionIndex return_value = (::interrogate_get_global_function)((int)param0); #if PY_MAJOR_VERSION >= 3 return PyLong_FromLong(return_value); #else @@ -677,7 +682,7 @@ _inP07yt3Sjw(PyObject *, PyObject *args) { static PyObject * _inP07ytgJcX(PyObject *, PyObject *args) { if (PyArg_ParseTuple(args, "")) { - int return_value = ::interrogate_number_of_functions(); + int return_value = (::interrogate_number_of_functions)(); #if PY_MAJOR_VERSION >= 3 return PyLong_FromLong(return_value); #else @@ -695,7 +700,7 @@ static PyObject * _inP07ytYlw6(PyObject *, PyObject *args) { int param0; if (PyArg_ParseTuple(args, "i", ¶m0)) { - FunctionIndex return_value = ::interrogate_get_function((int)param0); + FunctionIndex return_value = (::interrogate_get_function)((int)param0); #if PY_MAJOR_VERSION >= 3 return PyLong_FromLong(return_value); #else @@ -713,7 +718,7 @@ static PyObject * _inP07ytsmnz(PyObject *, PyObject *args) { int param0; if (PyArg_ParseTuple(args, "i", ¶m0)) { - char const *return_value = ::interrogate_function_name((FunctionIndex)param0); + char const *return_value = (::interrogate_function_name)((FunctionIndex)param0); #if PY_MAJOR_VERSION >= 3 return PyUnicode_FromString(return_value); #else @@ -731,7 +736,7 @@ static PyObject * _inP07ytxQ10(PyObject *, PyObject *args) { int param0; if (PyArg_ParseTuple(args, "i", ¶m0)) { - char const *return_value = ::interrogate_function_scoped_name((FunctionIndex)param0); + char const *return_value = (::interrogate_function_scoped_name)((FunctionIndex)param0); #if PY_MAJOR_VERSION >= 3 return PyUnicode_FromString(return_value); #else @@ -749,7 +754,7 @@ static PyObject * _inP07yt6gPB(PyObject *, PyObject *args) { int param0; if (PyArg_ParseTuple(args, "i", ¶m0)) { - bool return_value = ::interrogate_function_has_comment((FunctionIndex)param0); + bool return_value = (::interrogate_function_has_comment)((FunctionIndex)param0); return PyBool_FromLong(return_value); } return nullptr; @@ -763,7 +768,7 @@ static PyObject * _inP07ytISgV(PyObject *, PyObject *args) { int param0; if (PyArg_ParseTuple(args, "i", ¶m0)) { - char const *return_value = ::interrogate_function_comment((FunctionIndex)param0); + char const *return_value = (::interrogate_function_comment)((FunctionIndex)param0); #if PY_MAJOR_VERSION >= 3 return PyUnicode_FromString(return_value); #else @@ -781,7 +786,7 @@ static PyObject * _inP07ytH3bx(PyObject *, PyObject *args) { int param0; if (PyArg_ParseTuple(args, "i", ¶m0)) { - char const *return_value = ::interrogate_function_prototype((FunctionIndex)param0); + char const *return_value = (::interrogate_function_prototype)((FunctionIndex)param0); #if PY_MAJOR_VERSION >= 3 return PyUnicode_FromString(return_value); #else @@ -799,7 +804,7 @@ static PyObject * _inP07ytzeUk(PyObject *, PyObject *args) { int param0; if (PyArg_ParseTuple(args, "i", ¶m0)) { - bool return_value = ::interrogate_function_is_method((FunctionIndex)param0); + bool return_value = (::interrogate_function_is_method)((FunctionIndex)param0); return PyBool_FromLong(return_value); } return nullptr; @@ -813,7 +818,7 @@ static PyObject * _inP07ytUeI5(PyObject *, PyObject *args) { int param0; if (PyArg_ParseTuple(args, "i", ¶m0)) { - TypeIndex return_value = ::interrogate_function_class((FunctionIndex)param0); + TypeIndex return_value = (::interrogate_function_class)((FunctionIndex)param0); #if PY_MAJOR_VERSION >= 3 return PyLong_FromLong(return_value); #else @@ -823,6 +828,34 @@ _inP07ytUeI5(PyObject *, PyObject *args) { return nullptr; } +/* + * Python simple wrapper for + * bool interrogate_function_is_constructor(FunctionIndex function) + */ +static PyObject * +_inP07ytJAAI(PyObject *, PyObject *args) { + int param0; + if (PyArg_ParseTuple(args, "i", ¶m0)) { + bool return_value = (::interrogate_function_is_constructor)((FunctionIndex)param0); + return PyBool_FromLong(return_value); + } + return nullptr; +} + +/* + * Python simple wrapper for + * bool interrogate_function_is_destructor(FunctionIndex function) + */ +static PyObject * +_inP07yt0UXw(PyObject *, PyObject *args) { + int param0; + if (PyArg_ParseTuple(args, "i", ¶m0)) { + bool return_value = (::interrogate_function_is_destructor)((FunctionIndex)param0); + return PyBool_FromLong(return_value); + } + return nullptr; +} + /* * Python simple wrapper for * bool interrogate_function_has_module_name(FunctionIndex function) @@ -831,7 +864,7 @@ static PyObject * _inP07ytuSvx(PyObject *, PyObject *args) { int param0; if (PyArg_ParseTuple(args, "i", ¶m0)) { - bool return_value = ::interrogate_function_has_module_name((FunctionIndex)param0); + bool return_value = (::interrogate_function_has_module_name)((FunctionIndex)param0); return PyBool_FromLong(return_value); } return nullptr; @@ -845,7 +878,7 @@ static PyObject * _inP07ytwpYd(PyObject *, PyObject *args) { int param0; if (PyArg_ParseTuple(args, "i", ¶m0)) { - char const *return_value = ::interrogate_function_module_name((FunctionIndex)param0); + char const *return_value = (::interrogate_function_module_name)((FunctionIndex)param0); #if PY_MAJOR_VERSION >= 3 return PyUnicode_FromString(return_value); #else @@ -863,7 +896,7 @@ static PyObject * _inP07ytOfNh(PyObject *, PyObject *args) { int param0; if (PyArg_ParseTuple(args, "i", ¶m0)) { - bool return_value = ::interrogate_function_has_library_name((FunctionIndex)param0); + bool return_value = (::interrogate_function_has_library_name)((FunctionIndex)param0); return PyBool_FromLong(return_value); } return nullptr; @@ -877,7 +910,7 @@ static PyObject * _inP07ytf5_U(PyObject *, PyObject *args) { int param0; if (PyArg_ParseTuple(args, "i", ¶m0)) { - char const *return_value = ::interrogate_function_library_name((FunctionIndex)param0); + char const *return_value = (::interrogate_function_library_name)((FunctionIndex)param0); #if PY_MAJOR_VERSION >= 3 return PyUnicode_FromString(return_value); #else @@ -895,7 +928,7 @@ static PyObject * _inP07ytL3ZB(PyObject *, PyObject *args) { int param0; if (PyArg_ParseTuple(args, "i", ¶m0)) { - bool return_value = ::interrogate_function_is_virtual((FunctionIndex)param0); + bool return_value = (::interrogate_function_is_virtual)((FunctionIndex)param0); return PyBool_FromLong(return_value); } return nullptr; @@ -909,7 +942,7 @@ static PyObject * _inP07ytXw0I(PyObject *, PyObject *args) { int param0; if (PyArg_ParseTuple(args, "i", ¶m0)) { - int return_value = ::interrogate_function_number_of_c_wrappers((FunctionIndex)param0); + int return_value = (::interrogate_function_number_of_c_wrappers)((FunctionIndex)param0); #if PY_MAJOR_VERSION >= 3 return PyLong_FromLong(return_value); #else @@ -928,7 +961,7 @@ _inP07yt3zru(PyObject *, PyObject *args) { int param0; int param1; if (PyArg_ParseTuple(args, "ii", ¶m0, ¶m1)) { - FunctionWrapperIndex return_value = ::interrogate_function_c_wrapper((FunctionIndex)param0, (int)param1); + FunctionWrapperIndex return_value = (::interrogate_function_c_wrapper)((FunctionIndex)param0, (int)param1); #if PY_MAJOR_VERSION >= 3 return PyLong_FromLong(return_value); #else @@ -946,7 +979,7 @@ static PyObject * _inP07ytRrg2(PyObject *, PyObject *args) { int param0; if (PyArg_ParseTuple(args, "i", ¶m0)) { - int return_value = ::interrogate_function_number_of_python_wrappers((FunctionIndex)param0); + int return_value = (::interrogate_function_number_of_python_wrappers)((FunctionIndex)param0); #if PY_MAJOR_VERSION >= 3 return PyLong_FromLong(return_value); #else @@ -965,7 +998,7 @@ _inP07ytEJCx(PyObject *, PyObject *args) { int param0; int param1; if (PyArg_ParseTuple(args, "ii", ¶m0, ¶m1)) { - FunctionWrapperIndex return_value = ::interrogate_function_python_wrapper((FunctionIndex)param0, (int)param1); + FunctionWrapperIndex return_value = (::interrogate_function_python_wrapper)((FunctionIndex)param0, (int)param1); #if PY_MAJOR_VERSION >= 3 return PyLong_FromLong(return_value); #else @@ -983,7 +1016,7 @@ static PyObject * _inP07ytWAZr(PyObject *, PyObject *args) { int param0; if (PyArg_ParseTuple(args, "i", ¶m0)) { - char const *return_value = ::interrogate_wrapper_name((FunctionWrapperIndex)param0); + char const *return_value = (::interrogate_wrapper_name)((FunctionWrapperIndex)param0); #if PY_MAJOR_VERSION >= 3 return PyUnicode_FromString(return_value); #else @@ -1001,7 +1034,7 @@ static PyObject * _inP07ytrD_M(PyObject *, PyObject *args) { int param0; if (PyArg_ParseTuple(args, "i", ¶m0)) { - bool return_value = ::interrogate_wrapper_is_callable_by_name((FunctionWrapperIndex)param0); + bool return_value = (::interrogate_wrapper_is_callable_by_name)((FunctionWrapperIndex)param0); return PyBool_FromLong(return_value); } return nullptr; @@ -1015,7 +1048,7 @@ static PyObject * _inP07ytjolz(PyObject *, PyObject *args) { int param0; if (PyArg_ParseTuple(args, "i", ¶m0)) { - bool return_value = ::interrogate_wrapper_has_comment((FunctionWrapperIndex)param0); + bool return_value = (::interrogate_wrapper_has_comment)((FunctionWrapperIndex)param0); return PyBool_FromLong(return_value); } return nullptr; @@ -1029,7 +1062,7 @@ static PyObject * _inP07ytt_JD(PyObject *, PyObject *args) { int param0; if (PyArg_ParseTuple(args, "i", ¶m0)) { - char const *return_value = ::interrogate_wrapper_comment((FunctionWrapperIndex)param0); + char const *return_value = (::interrogate_wrapper_comment)((FunctionWrapperIndex)param0); #if PY_MAJOR_VERSION >= 3 return PyUnicode_FromString(return_value); #else @@ -1047,7 +1080,7 @@ static PyObject * _inP07ytwEts(PyObject *, PyObject *args) { int param0; if (PyArg_ParseTuple(args, "i", ¶m0)) { - bool return_value = ::interrogate_wrapper_has_return_value((FunctionWrapperIndex)param0); + bool return_value = (::interrogate_wrapper_has_return_value)((FunctionWrapperIndex)param0); return PyBool_FromLong(return_value); } return nullptr; @@ -1061,7 +1094,7 @@ static PyObject * _inP07ytrJWs(PyObject *, PyObject *args) { int param0; if (PyArg_ParseTuple(args, "i", ¶m0)) { - TypeIndex return_value = ::interrogate_wrapper_return_type((FunctionWrapperIndex)param0); + TypeIndex return_value = (::interrogate_wrapper_return_type)((FunctionWrapperIndex)param0); #if PY_MAJOR_VERSION >= 3 return PyLong_FromLong(return_value); #else @@ -1079,7 +1112,7 @@ static PyObject * _inP07ytpmFD(PyObject *, PyObject *args) { int param0; if (PyArg_ParseTuple(args, "i", ¶m0)) { - bool return_value = ::interrogate_wrapper_caller_manages_return_value((FunctionWrapperIndex)param0); + bool return_value = (::interrogate_wrapper_caller_manages_return_value)((FunctionWrapperIndex)param0); return PyBool_FromLong(return_value); } return nullptr; @@ -1093,7 +1126,7 @@ static PyObject * _inP07ytyYUX(PyObject *, PyObject *args) { int param0; if (PyArg_ParseTuple(args, "i", ¶m0)) { - FunctionIndex return_value = ::interrogate_wrapper_return_value_destructor((FunctionWrapperIndex)param0); + FunctionIndex return_value = (::interrogate_wrapper_return_value_destructor)((FunctionWrapperIndex)param0); #if PY_MAJOR_VERSION >= 3 return PyLong_FromLong(return_value); #else @@ -1111,7 +1144,7 @@ static PyObject * _inP07yt54dn(PyObject *, PyObject *args) { int param0; if (PyArg_ParseTuple(args, "i", ¶m0)) { - int return_value = ::interrogate_wrapper_number_of_parameters((FunctionWrapperIndex)param0); + int return_value = (::interrogate_wrapper_number_of_parameters)((FunctionWrapperIndex)param0); #if PY_MAJOR_VERSION >= 3 return PyLong_FromLong(return_value); #else @@ -1130,7 +1163,7 @@ _inP07ytGMpW(PyObject *, PyObject *args) { int param0; int param1; if (PyArg_ParseTuple(args, "ii", ¶m0, ¶m1)) { - TypeIndex return_value = ::interrogate_wrapper_parameter_type((FunctionWrapperIndex)param0, (int)param1); + TypeIndex return_value = (::interrogate_wrapper_parameter_type)((FunctionWrapperIndex)param0, (int)param1); #if PY_MAJOR_VERSION >= 3 return PyLong_FromLong(return_value); #else @@ -1149,7 +1182,7 @@ _inP07ytNuBV(PyObject *, PyObject *args) { int param0; int param1; if (PyArg_ParseTuple(args, "ii", ¶m0, ¶m1)) { - bool return_value = ::interrogate_wrapper_parameter_has_name((FunctionWrapperIndex)param0, (int)param1); + bool return_value = (::interrogate_wrapper_parameter_has_name)((FunctionWrapperIndex)param0, (int)param1); return PyBool_FromLong(return_value); } return nullptr; @@ -1164,7 +1197,7 @@ _inP07yt9UwA(PyObject *, PyObject *args) { int param0; int param1; if (PyArg_ParseTuple(args, "ii", ¶m0, ¶m1)) { - char const *return_value = ::interrogate_wrapper_parameter_name((FunctionWrapperIndex)param0, (int)param1); + char const *return_value = (::interrogate_wrapper_parameter_name)((FunctionWrapperIndex)param0, (int)param1); #if PY_MAJOR_VERSION >= 3 return PyUnicode_FromString(return_value); #else @@ -1183,7 +1216,22 @@ _inP07yt3FDt(PyObject *, PyObject *args) { int param0; int param1; if (PyArg_ParseTuple(args, "ii", ¶m0, ¶m1)) { - bool return_value = ::interrogate_wrapper_parameter_is_this((FunctionWrapperIndex)param0, (int)param1); + bool return_value = (::interrogate_wrapper_parameter_is_this)((FunctionWrapperIndex)param0, (int)param1); + return PyBool_FromLong(return_value); + } + return nullptr; +} + +/* + * Python simple wrapper for + * bool interrogate_wrapper_parameter_is_optional(FunctionWrapperIndex wrapper, int n) + */ +static PyObject * +_inP07ytDgOY(PyObject *, PyObject *args) { + int param0; + int param1; + if (PyArg_ParseTuple(args, "ii", ¶m0, ¶m1)) { + bool return_value = (::interrogate_wrapper_parameter_is_optional)((FunctionWrapperIndex)param0, (int)param1); return PyBool_FromLong(return_value); } return nullptr; @@ -1197,7 +1245,7 @@ static PyObject * _inP07ytf513(PyObject *, PyObject *args) { int param0; if (PyArg_ParseTuple(args, "i", ¶m0)) { - bool return_value = ::interrogate_wrapper_has_pointer((FunctionWrapperIndex)param0); + bool return_value = (::interrogate_wrapper_has_pointer)((FunctionWrapperIndex)param0); return PyBool_FromLong(return_value); } return nullptr; @@ -1211,7 +1259,7 @@ static PyObject * _inP07ytsqGH(PyObject *, PyObject *args) { int param0; if (PyArg_ParseTuple(args, "i", ¶m0)) { - ::interrogate_wrapper_pointer((FunctionWrapperIndex)param0); + (::interrogate_wrapper_pointer)((FunctionWrapperIndex)param0); return Py_BuildValue(""); } return nullptr; @@ -1225,7 +1273,7 @@ static PyObject * _inP07yt7shV(PyObject *, PyObject *args) { int param0; if (PyArg_ParseTuple(args, "i", ¶m0)) { - char const *return_value = ::interrogate_wrapper_unique_name((FunctionWrapperIndex)param0); + char const *return_value = (::interrogate_wrapper_unique_name)((FunctionWrapperIndex)param0); #if PY_MAJOR_VERSION >= 3 return PyUnicode_FromString(return_value); #else @@ -1243,7 +1291,7 @@ static PyObject * _inP07ytA1eF(PyObject *, PyObject *args) { char *param0; if (PyArg_ParseTuple(args, "s", ¶m0)) { - FunctionWrapperIndex return_value = ::interrogate_get_wrapper_by_unique_name((char const *)param0); + FunctionWrapperIndex return_value = (::interrogate_get_wrapper_by_unique_name)((char const *)param0); #if PY_MAJOR_VERSION >= 3 return PyLong_FromLong(return_value); #else @@ -1261,7 +1309,7 @@ static PyObject * _inP07yt776V(PyObject *, PyObject *args) { int param0; if (PyArg_ParseTuple(args, "i", ¶m0)) { - char const *return_value = ::interrogate_make_seq_seq_name((MakeSeqIndex)param0); + char const *return_value = (::interrogate_make_seq_seq_name)((MakeSeqIndex)param0); #if PY_MAJOR_VERSION >= 3 return PyUnicode_FromString(return_value); #else @@ -1279,7 +1327,7 @@ static PyObject * _inP07ytryup(PyObject *, PyObject *args) { int param0; if (PyArg_ParseTuple(args, "i", ¶m0)) { - char const *return_value = ::interrogate_make_seq_scoped_name((MakeSeqIndex)param0); + char const *return_value = (::interrogate_make_seq_scoped_name)((MakeSeqIndex)param0); #if PY_MAJOR_VERSION >= 3 return PyUnicode_FromString(return_value); #else @@ -1297,7 +1345,7 @@ static PyObject * _inP07ytiytI(PyObject *, PyObject *args) { int param0; if (PyArg_ParseTuple(args, "i", ¶m0)) { - bool return_value = ::interrogate_make_seq_has_comment((ElementIndex)param0); + bool return_value = (::interrogate_make_seq_has_comment)((ElementIndex)param0); return PyBool_FromLong(return_value); } return nullptr; @@ -1311,7 +1359,7 @@ static PyObject * _inP07ytZc07(PyObject *, PyObject *args) { int param0; if (PyArg_ParseTuple(args, "i", ¶m0)) { - char const *return_value = ::interrogate_make_seq_comment((ElementIndex)param0); + char const *return_value = (::interrogate_make_seq_comment)((ElementIndex)param0); #if PY_MAJOR_VERSION >= 3 return PyUnicode_FromString(return_value); #else @@ -1329,7 +1377,7 @@ static PyObject * _inP07ytfaH0(PyObject *, PyObject *args) { int param0; if (PyArg_ParseTuple(args, "i", ¶m0)) { - char const *return_value = ::interrogate_make_seq_num_name((MakeSeqIndex)param0); + char const *return_value = (::interrogate_make_seq_num_name)((MakeSeqIndex)param0); #if PY_MAJOR_VERSION >= 3 return PyUnicode_FromString(return_value); #else @@ -1347,7 +1395,7 @@ static PyObject * _inP07ytGB9D(PyObject *, PyObject *args) { int param0; if (PyArg_ParseTuple(args, "i", ¶m0)) { - char const *return_value = ::interrogate_make_seq_element_name((MakeSeqIndex)param0); + char const *return_value = (::interrogate_make_seq_element_name)((MakeSeqIndex)param0); #if PY_MAJOR_VERSION >= 3 return PyUnicode_FromString(return_value); #else @@ -1364,7 +1412,7 @@ _inP07ytGB9D(PyObject *, PyObject *args) { static PyObject * _inP07ytsxxs(PyObject *, PyObject *args) { if (PyArg_ParseTuple(args, "")) { - int return_value = ::interrogate_number_of_global_types(); + int return_value = (::interrogate_number_of_global_types)(); #if PY_MAJOR_VERSION >= 3 return PyLong_FromLong(return_value); #else @@ -1382,7 +1430,7 @@ static PyObject * _inP07ytMT0z(PyObject *, PyObject *args) { int param0; if (PyArg_ParseTuple(args, "i", ¶m0)) { - TypeIndex return_value = ::interrogate_get_global_type((int)param0); + TypeIndex return_value = (::interrogate_get_global_type)((int)param0); #if PY_MAJOR_VERSION >= 3 return PyLong_FromLong(return_value); #else @@ -1399,7 +1447,7 @@ _inP07ytMT0z(PyObject *, PyObject *args) { static PyObject * _inP07ytiW3v(PyObject *, PyObject *args) { if (PyArg_ParseTuple(args, "")) { - int return_value = ::interrogate_number_of_types(); + int return_value = (::interrogate_number_of_types)(); #if PY_MAJOR_VERSION >= 3 return PyLong_FromLong(return_value); #else @@ -1417,7 +1465,7 @@ static PyObject * _inP07yt4Px8(PyObject *, PyObject *args) { int param0; if (PyArg_ParseTuple(args, "i", ¶m0)) { - TypeIndex return_value = ::interrogate_get_type((int)param0); + TypeIndex return_value = (::interrogate_get_type)((int)param0); #if PY_MAJOR_VERSION >= 3 return PyLong_FromLong(return_value); #else @@ -1435,7 +1483,7 @@ static PyObject * _inP07ytNHcs(PyObject *, PyObject *args) { char *param0; if (PyArg_ParseTuple(args, "s", ¶m0)) { - TypeIndex return_value = ::interrogate_get_type_by_name((char const *)param0); + TypeIndex return_value = (::interrogate_get_type_by_name)((char const *)param0); #if PY_MAJOR_VERSION >= 3 return PyLong_FromLong(return_value); #else @@ -1453,7 +1501,7 @@ static PyObject * _inP07ytqHrb(PyObject *, PyObject *args) { char *param0; if (PyArg_ParseTuple(args, "s", ¶m0)) { - TypeIndex return_value = ::interrogate_get_type_by_scoped_name((char const *)param0); + TypeIndex return_value = (::interrogate_get_type_by_scoped_name)((char const *)param0); #if PY_MAJOR_VERSION >= 3 return PyLong_FromLong(return_value); #else @@ -1471,7 +1519,7 @@ static PyObject * _inP07ytaOqq(PyObject *, PyObject *args) { char *param0; if (PyArg_ParseTuple(args, "s", ¶m0)) { - TypeIndex return_value = ::interrogate_get_type_by_true_name((char const *)param0); + TypeIndex return_value = (::interrogate_get_type_by_true_name)((char const *)param0); #if PY_MAJOR_VERSION >= 3 return PyLong_FromLong(return_value); #else @@ -1489,7 +1537,7 @@ static PyObject * _inP07ytpTBb(PyObject *, PyObject *args) { int param0; if (PyArg_ParseTuple(args, "i", ¶m0)) { - bool return_value = ::interrogate_type_is_global((TypeIndex)param0); + bool return_value = (::interrogate_type_is_global)((TypeIndex)param0); return PyBool_FromLong(return_value); } return nullptr; @@ -1503,7 +1551,7 @@ static PyObject * _inP07ytqWOw(PyObject *, PyObject *args) { int param0; if (PyArg_ParseTuple(args, "i", ¶m0)) { - char const *return_value = ::interrogate_type_name((TypeIndex)param0); + char const *return_value = (::interrogate_type_name)((TypeIndex)param0); #if PY_MAJOR_VERSION >= 3 return PyUnicode_FromString(return_value); #else @@ -1521,7 +1569,7 @@ static PyObject * _inP07ytHu7x(PyObject *, PyObject *args) { int param0; if (PyArg_ParseTuple(args, "i", ¶m0)) { - char const *return_value = ::interrogate_type_scoped_name((TypeIndex)param0); + char const *return_value = (::interrogate_type_scoped_name)((TypeIndex)param0); #if PY_MAJOR_VERSION >= 3 return PyUnicode_FromString(return_value); #else @@ -1539,7 +1587,7 @@ static PyObject * _inP07ytwGnA(PyObject *, PyObject *args) { int param0; if (PyArg_ParseTuple(args, "i", ¶m0)) { - char const *return_value = ::interrogate_type_true_name((TypeIndex)param0); + char const *return_value = (::interrogate_type_true_name)((TypeIndex)param0); #if PY_MAJOR_VERSION >= 3 return PyUnicode_FromString(return_value); #else @@ -1557,7 +1605,7 @@ static PyObject * _inP07ytXGxx(PyObject *, PyObject *args) { int param0; if (PyArg_ParseTuple(args, "i", ¶m0)) { - bool return_value = ::interrogate_type_is_nested((TypeIndex)param0); + bool return_value = (::interrogate_type_is_nested)((TypeIndex)param0); return PyBool_FromLong(return_value); } return nullptr; @@ -1571,7 +1619,7 @@ static PyObject * _inP07ytj04Z(PyObject *, PyObject *args) { int param0; if (PyArg_ParseTuple(args, "i", ¶m0)) { - TypeIndex return_value = ::interrogate_type_outer_class((TypeIndex)param0); + TypeIndex return_value = (::interrogate_type_outer_class)((TypeIndex)param0); #if PY_MAJOR_VERSION >= 3 return PyLong_FromLong(return_value); #else @@ -1589,7 +1637,7 @@ static PyObject * _inP07ytEOv4(PyObject *, PyObject *args) { int param0; if (PyArg_ParseTuple(args, "i", ¶m0)) { - bool return_value = ::interrogate_type_has_comment((TypeIndex)param0); + bool return_value = (::interrogate_type_has_comment)((TypeIndex)param0); return PyBool_FromLong(return_value); } return nullptr; @@ -1603,7 +1651,7 @@ static PyObject * _inP07ytpCqJ(PyObject *, PyObject *args) { int param0; if (PyArg_ParseTuple(args, "i", ¶m0)) { - char const *return_value = ::interrogate_type_comment((TypeIndex)param0); + char const *return_value = (::interrogate_type_comment)((TypeIndex)param0); #if PY_MAJOR_VERSION >= 3 return PyUnicode_FromString(return_value); #else @@ -1621,7 +1669,7 @@ static PyObject * _inP07yt_Pz3(PyObject *, PyObject *args) { int param0; if (PyArg_ParseTuple(args, "i", ¶m0)) { - bool return_value = ::interrogate_type_has_module_name((TypeIndex)param0); + bool return_value = (::interrogate_type_has_module_name)((TypeIndex)param0); return PyBool_FromLong(return_value); } return nullptr; @@ -1635,7 +1683,7 @@ static PyObject * _inP07ytt_06(PyObject *, PyObject *args) { int param0; if (PyArg_ParseTuple(args, "i", ¶m0)) { - char const *return_value = ::interrogate_type_module_name((TypeIndex)param0); + char const *return_value = (::interrogate_type_module_name)((TypeIndex)param0); #if PY_MAJOR_VERSION >= 3 return PyUnicode_FromString(return_value); #else @@ -1653,7 +1701,7 @@ static PyObject * _inP07ytmuPs(PyObject *, PyObject *args) { int param0; if (PyArg_ParseTuple(args, "i", ¶m0)) { - bool return_value = ::interrogate_type_has_library_name((TypeIndex)param0); + bool return_value = (::interrogate_type_has_library_name)((TypeIndex)param0); return PyBool_FromLong(return_value); } return nullptr; @@ -1667,7 +1715,7 @@ static PyObject * _inP07ytvM8B(PyObject *, PyObject *args) { int param0; if (PyArg_ParseTuple(args, "i", ¶m0)) { - char const *return_value = ::interrogate_type_library_name((TypeIndex)param0); + char const *return_value = (::interrogate_type_library_name)((TypeIndex)param0); #if PY_MAJOR_VERSION >= 3 return PyUnicode_FromString(return_value); #else @@ -1685,7 +1733,7 @@ static PyObject * _inP07ytap97(PyObject *, PyObject *args) { int param0; if (PyArg_ParseTuple(args, "i", ¶m0)) { - bool return_value = ::interrogate_type_is_atomic((TypeIndex)param0); + bool return_value = (::interrogate_type_is_atomic)((TypeIndex)param0); return PyBool_FromLong(return_value); } return nullptr; @@ -1699,7 +1747,7 @@ static PyObject * _inP07yt0o8D(PyObject *, PyObject *args) { int param0; if (PyArg_ParseTuple(args, "i", ¶m0)) { - AtomicToken return_value = ::interrogate_type_atomic_token((TypeIndex)param0); + AtomicToken return_value = (::interrogate_type_atomic_token)((TypeIndex)param0); #if PY_MAJOR_VERSION >= 3 return PyLong_FromLong(return_value); #else @@ -1717,7 +1765,7 @@ static PyObject * _inP07ytOoQ2(PyObject *, PyObject *args) { int param0; if (PyArg_ParseTuple(args, "i", ¶m0)) { - bool return_value = ::interrogate_type_is_unsigned((TypeIndex)param0); + bool return_value = (::interrogate_type_is_unsigned)((TypeIndex)param0); return PyBool_FromLong(return_value); } return nullptr; @@ -1731,7 +1779,7 @@ static PyObject * _inP07ytKuFh(PyObject *, PyObject *args) { int param0; if (PyArg_ParseTuple(args, "i", ¶m0)) { - bool return_value = ::interrogate_type_is_signed((TypeIndex)param0); + bool return_value = (::interrogate_type_is_signed)((TypeIndex)param0); return PyBool_FromLong(return_value); } return nullptr; @@ -1745,7 +1793,7 @@ static PyObject * _inP07yto5L6(PyObject *, PyObject *args) { int param0; if (PyArg_ParseTuple(args, "i", ¶m0)) { - bool return_value = ::interrogate_type_is_long((TypeIndex)param0); + bool return_value = (::interrogate_type_is_long)((TypeIndex)param0); return PyBool_FromLong(return_value); } return nullptr; @@ -1759,7 +1807,7 @@ static PyObject * _inP07ytzgKK(PyObject *, PyObject *args) { int param0; if (PyArg_ParseTuple(args, "i", ¶m0)) { - bool return_value = ::interrogate_type_is_longlong((TypeIndex)param0); + bool return_value = (::interrogate_type_is_longlong)((TypeIndex)param0); return PyBool_FromLong(return_value); } return nullptr; @@ -1773,7 +1821,7 @@ static PyObject * _inP07yt0FIF(PyObject *, PyObject *args) { int param0; if (PyArg_ParseTuple(args, "i", ¶m0)) { - bool return_value = ::interrogate_type_is_short((TypeIndex)param0); + bool return_value = (::interrogate_type_is_short)((TypeIndex)param0); return PyBool_FromLong(return_value); } return nullptr; @@ -1787,7 +1835,7 @@ static PyObject * _inP07ytZqvD(PyObject *, PyObject *args) { int param0; if (PyArg_ParseTuple(args, "i", ¶m0)) { - bool return_value = ::interrogate_type_is_wrapped((TypeIndex)param0); + bool return_value = (::interrogate_type_is_wrapped)((TypeIndex)param0); return PyBool_FromLong(return_value); } return nullptr; @@ -1801,7 +1849,7 @@ static PyObject * _inP07ytDyRd(PyObject *, PyObject *args) { int param0; if (PyArg_ParseTuple(args, "i", ¶m0)) { - bool return_value = ::interrogate_type_is_pointer((TypeIndex)param0); + bool return_value = (::interrogate_type_is_pointer)((TypeIndex)param0); return PyBool_FromLong(return_value); } return nullptr; @@ -1815,7 +1863,7 @@ static PyObject * _inP07ytMnKa(PyObject *, PyObject *args) { int param0; if (PyArg_ParseTuple(args, "i", ¶m0)) { - bool return_value = ::interrogate_type_is_const((TypeIndex)param0); + bool return_value = (::interrogate_type_is_const)((TypeIndex)param0); return PyBool_FromLong(return_value); } return nullptr; @@ -1829,7 +1877,7 @@ static PyObject * _inP07ytRtji(PyObject *, PyObject *args) { int param0; if (PyArg_ParseTuple(args, "i", ¶m0)) { - bool return_value = ::interrogate_type_is_typedef((TypeIndex)param0); + bool return_value = (::interrogate_type_is_typedef)((TypeIndex)param0); return PyBool_FromLong(return_value); } return nullptr; @@ -1843,7 +1891,7 @@ static PyObject * _inP07ytCnbQ(PyObject *, PyObject *args) { int param0; if (PyArg_ParseTuple(args, "i", ¶m0)) { - TypeIndex return_value = ::interrogate_type_wrapped_type((TypeIndex)param0); + TypeIndex return_value = (::interrogate_type_wrapped_type)((TypeIndex)param0); #if PY_MAJOR_VERSION >= 3 return PyLong_FromLong(return_value); #else @@ -1861,7 +1909,21 @@ static PyObject * _inP07ytdUVN(PyObject *, PyObject *args) { int param0; if (PyArg_ParseTuple(args, "i", ¶m0)) { - bool return_value = ::interrogate_type_is_enum((TypeIndex)param0); + bool return_value = (::interrogate_type_is_enum)((TypeIndex)param0); + return PyBool_FromLong(return_value); + } + return nullptr; +} + +/* + * Python simple wrapper for + * bool interrogate_type_is_scoped_enum(TypeIndex type) + */ +static PyObject * +_inP07ytZtNk(PyObject *, PyObject *args) { + int param0; + if (PyArg_ParseTuple(args, "i", ¶m0)) { + bool return_value = (::interrogate_type_is_scoped_enum)((TypeIndex)param0); return PyBool_FromLong(return_value); } return nullptr; @@ -1875,7 +1937,7 @@ static PyObject * _inP07ytihbt(PyObject *, PyObject *args) { int param0; if (PyArg_ParseTuple(args, "i", ¶m0)) { - int return_value = ::interrogate_type_number_of_enum_values((TypeIndex)param0); + int return_value = (::interrogate_type_number_of_enum_values)((TypeIndex)param0); #if PY_MAJOR_VERSION >= 3 return PyLong_FromLong(return_value); #else @@ -1894,7 +1956,7 @@ _inP07ytbyPY(PyObject *, PyObject *args) { int param0; int param1; if (PyArg_ParseTuple(args, "ii", ¶m0, ¶m1)) { - char const *return_value = ::interrogate_type_enum_value_name((TypeIndex)param0, (int)param1); + char const *return_value = (::interrogate_type_enum_value_name)((TypeIndex)param0, (int)param1); #if PY_MAJOR_VERSION >= 3 return PyUnicode_FromString(return_value); #else @@ -1913,7 +1975,7 @@ _inP07ytAaT6(PyObject *, PyObject *args) { int param0; int param1; if (PyArg_ParseTuple(args, "ii", ¶m0, ¶m1)) { - char const *return_value = ::interrogate_type_enum_value_scoped_name((TypeIndex)param0, (int)param1); + char const *return_value = (::interrogate_type_enum_value_scoped_name)((TypeIndex)param0, (int)param1); #if PY_MAJOR_VERSION >= 3 return PyUnicode_FromString(return_value); #else @@ -1932,7 +1994,7 @@ _inP07ytgL9q(PyObject *, PyObject *args) { int param0; int param1; if (PyArg_ParseTuple(args, "ii", ¶m0, ¶m1)) { - char const *return_value = ::interrogate_type_enum_value_comment((TypeIndex)param0, (int)param1); + char const *return_value = (::interrogate_type_enum_value_comment)((TypeIndex)param0, (int)param1); #if PY_MAJOR_VERSION >= 3 return PyUnicode_FromString(return_value); #else @@ -1951,7 +2013,7 @@ _inP07ytWB97(PyObject *, PyObject *args) { int param0; int param1; if (PyArg_ParseTuple(args, "ii", ¶m0, ¶m1)) { - int return_value = ::interrogate_type_enum_value((TypeIndex)param0, (int)param1); + int return_value = (::interrogate_type_enum_value)((TypeIndex)param0, (int)param1); #if PY_MAJOR_VERSION >= 3 return PyLong_FromLong(return_value); #else @@ -1969,7 +2031,7 @@ static PyObject * _inP07ytDUAl(PyObject *, PyObject *args) { int param0; if (PyArg_ParseTuple(args, "i", ¶m0)) { - bool return_value = ::interrogate_type_is_struct((TypeIndex)param0); + bool return_value = (::interrogate_type_is_struct)((TypeIndex)param0); return PyBool_FromLong(return_value); } return nullptr; @@ -1983,7 +2045,7 @@ static PyObject * _inP07yt1_Kf(PyObject *, PyObject *args) { int param0; if (PyArg_ParseTuple(args, "i", ¶m0)) { - bool return_value = ::interrogate_type_is_class((TypeIndex)param0); + bool return_value = (::interrogate_type_is_class)((TypeIndex)param0); return PyBool_FromLong(return_value); } return nullptr; @@ -1997,7 +2059,7 @@ static PyObject * _inP07yt98lD(PyObject *, PyObject *args) { int param0; if (PyArg_ParseTuple(args, "i", ¶m0)) { - bool return_value = ::interrogate_type_is_union((TypeIndex)param0); + bool return_value = (::interrogate_type_is_union)((TypeIndex)param0); return PyBool_FromLong(return_value); } return nullptr; @@ -2011,7 +2073,7 @@ static PyObject * _inP07yt9SHr(PyObject *, PyObject *args) { int param0; if (PyArg_ParseTuple(args, "i", ¶m0)) { - bool return_value = ::interrogate_type_is_fully_defined((TypeIndex)param0); + bool return_value = (::interrogate_type_is_fully_defined)((TypeIndex)param0); return PyBool_FromLong(return_value); } return nullptr; @@ -2025,7 +2087,7 @@ static PyObject * _inP07ytdiZP(PyObject *, PyObject *args) { int param0; if (PyArg_ParseTuple(args, "i", ¶m0)) { - bool return_value = ::interrogate_type_is_unpublished((TypeIndex)param0); + bool return_value = (::interrogate_type_is_unpublished)((TypeIndex)param0); return PyBool_FromLong(return_value); } return nullptr; @@ -2039,7 +2101,7 @@ static PyObject * _inP07ytTdER(PyObject *, PyObject *args) { int param0; if (PyArg_ParseTuple(args, "i", ¶m0)) { - int return_value = ::interrogate_type_number_of_constructors((TypeIndex)param0); + int return_value = (::interrogate_type_number_of_constructors)((TypeIndex)param0); #if PY_MAJOR_VERSION >= 3 return PyLong_FromLong(return_value); #else @@ -2058,7 +2120,7 @@ _inP07ytYO56(PyObject *, PyObject *args) { int param0; int param1; if (PyArg_ParseTuple(args, "ii", ¶m0, ¶m1)) { - FunctionIndex return_value = ::interrogate_type_get_constructor((TypeIndex)param0, (int)param1); + FunctionIndex return_value = (::interrogate_type_get_constructor)((TypeIndex)param0, (int)param1); #if PY_MAJOR_VERSION >= 3 return PyLong_FromLong(return_value); #else @@ -2076,7 +2138,7 @@ static PyObject * _inP07ytxtCG(PyObject *, PyObject *args) { int param0; if (PyArg_ParseTuple(args, "i", ¶m0)) { - bool return_value = ::interrogate_type_has_destructor((TypeIndex)param0); + bool return_value = (::interrogate_type_has_destructor)((TypeIndex)param0); return PyBool_FromLong(return_value); } return nullptr; @@ -2090,7 +2152,7 @@ static PyObject * _inP07yt_EB2(PyObject *, PyObject *args) { int param0; if (PyArg_ParseTuple(args, "i", ¶m0)) { - bool return_value = ::interrogate_type_destructor_is_inherited((TypeIndex)param0); + bool return_value = (::interrogate_type_destructor_is_inherited)((TypeIndex)param0); return PyBool_FromLong(return_value); } return nullptr; @@ -2104,7 +2166,7 @@ static PyObject * _inP07ytEG1l(PyObject *, PyObject *args) { int param0; if (PyArg_ParseTuple(args, "i", ¶m0)) { - FunctionIndex return_value = ::interrogate_type_get_destructor((TypeIndex)param0); + FunctionIndex return_value = (::interrogate_type_get_destructor)((TypeIndex)param0); #if PY_MAJOR_VERSION >= 3 return PyLong_FromLong(return_value); #else @@ -2122,7 +2184,7 @@ static PyObject * _inP07yt7tUq(PyObject *, PyObject *args) { int param0; if (PyArg_ParseTuple(args, "i", ¶m0)) { - int return_value = ::interrogate_type_number_of_elements((TypeIndex)param0); + int return_value = (::interrogate_type_number_of_elements)((TypeIndex)param0); #if PY_MAJOR_VERSION >= 3 return PyLong_FromLong(return_value); #else @@ -2141,7 +2203,7 @@ _inP07ytyStU(PyObject *, PyObject *args) { int param0; int param1; if (PyArg_ParseTuple(args, "ii", ¶m0, ¶m1)) { - ElementIndex return_value = ::interrogate_type_get_element((TypeIndex)param0, (int)param1); + ElementIndex return_value = (::interrogate_type_get_element)((TypeIndex)param0, (int)param1); #if PY_MAJOR_VERSION >= 3 return PyLong_FromLong(return_value); #else @@ -2159,7 +2221,7 @@ static PyObject * _inP07ytdM85(PyObject *, PyObject *args) { int param0; if (PyArg_ParseTuple(args, "i", ¶m0)) { - int return_value = ::interrogate_type_number_of_methods((TypeIndex)param0); + int return_value = (::interrogate_type_number_of_methods)((TypeIndex)param0); #if PY_MAJOR_VERSION >= 3 return PyLong_FromLong(return_value); #else @@ -2178,7 +2240,7 @@ _inP07ytk_GN(PyObject *, PyObject *args) { int param0; int param1; if (PyArg_ParseTuple(args, "ii", ¶m0, ¶m1)) { - FunctionIndex return_value = ::interrogate_type_get_method((TypeIndex)param0, (int)param1); + FunctionIndex return_value = (::interrogate_type_get_method)((TypeIndex)param0, (int)param1); #if PY_MAJOR_VERSION >= 3 return PyLong_FromLong(return_value); #else @@ -2196,7 +2258,7 @@ static PyObject * _inP07yt8QjG(PyObject *, PyObject *args) { int param0; if (PyArg_ParseTuple(args, "i", ¶m0)) { - int return_value = ::interrogate_type_number_of_make_seqs((TypeIndex)param0); + int return_value = (::interrogate_type_number_of_make_seqs)((TypeIndex)param0); #if PY_MAJOR_VERSION >= 3 return PyLong_FromLong(return_value); #else @@ -2215,7 +2277,7 @@ _inP07ytyMtj(PyObject *, PyObject *args) { int param0; int param1; if (PyArg_ParseTuple(args, "ii", ¶m0, ¶m1)) { - MakeSeqIndex return_value = ::interrogate_type_get_make_seq((TypeIndex)param0, (int)param1); + MakeSeqIndex return_value = (::interrogate_type_get_make_seq)((TypeIndex)param0, (int)param1); #if PY_MAJOR_VERSION >= 3 return PyLong_FromLong(return_value); #else @@ -2233,7 +2295,7 @@ static PyObject * _inP07ytHDtN(PyObject *, PyObject *args) { int param0; if (PyArg_ParseTuple(args, "i", ¶m0)) { - int return_value = ::interrogate_type_number_of_casts((TypeIndex)param0); + int return_value = (::interrogate_type_number_of_casts)((TypeIndex)param0); #if PY_MAJOR_VERSION >= 3 return PyLong_FromLong(return_value); #else @@ -2252,7 +2314,7 @@ _inP07ytHFjA(PyObject *, PyObject *args) { int param0; int param1; if (PyArg_ParseTuple(args, "ii", ¶m0, ¶m1)) { - FunctionIndex return_value = ::interrogate_type_get_cast((TypeIndex)param0, (int)param1); + FunctionIndex return_value = (::interrogate_type_get_cast)((TypeIndex)param0, (int)param1); #if PY_MAJOR_VERSION >= 3 return PyLong_FromLong(return_value); #else @@ -2270,7 +2332,7 @@ static PyObject * _inP07yt_NPR(PyObject *, PyObject *args) { int param0; if (PyArg_ParseTuple(args, "i", ¶m0)) { - int return_value = ::interrogate_type_number_of_derivations((TypeIndex)param0); + int return_value = (::interrogate_type_number_of_derivations)((TypeIndex)param0); #if PY_MAJOR_VERSION >= 3 return PyLong_FromLong(return_value); #else @@ -2289,7 +2351,7 @@ _inP07ytcTOH(PyObject *, PyObject *args) { int param0; int param1; if (PyArg_ParseTuple(args, "ii", ¶m0, ¶m1)) { - TypeIndex return_value = ::interrogate_type_get_derivation((TypeIndex)param0, (int)param1); + TypeIndex return_value = (::interrogate_type_get_derivation)((TypeIndex)param0, (int)param1); #if PY_MAJOR_VERSION >= 3 return PyLong_FromLong(return_value); #else @@ -2299,6 +2361,20 @@ _inP07ytcTOH(PyObject *, PyObject *args) { return nullptr; } +/* + * Python simple wrapper for + * bool interrogate_type_is_final(TypeIndex type) + */ +static PyObject * +_inP07ytC5Uk(PyObject *, PyObject *args) { + int param0; + if (PyArg_ParseTuple(args, "i", ¶m0)) { + bool return_value = (::interrogate_type_is_final)((TypeIndex)param0); + return PyBool_FromLong(return_value); + } + return nullptr; +} + /* * Python simple wrapper for * bool interrogate_type_derivation_has_upcast(TypeIndex type, int n) @@ -2308,7 +2384,7 @@ _inP07ythdU7(PyObject *, PyObject *args) { int param0; int param1; if (PyArg_ParseTuple(args, "ii", ¶m0, ¶m1)) { - bool return_value = ::interrogate_type_derivation_has_upcast((TypeIndex)param0, (int)param1); + bool return_value = (::interrogate_type_derivation_has_upcast)((TypeIndex)param0, (int)param1); return PyBool_FromLong(return_value); } return nullptr; @@ -2323,7 +2399,7 @@ _inP07ytQPxU(PyObject *, PyObject *args) { int param0; int param1; if (PyArg_ParseTuple(args, "ii", ¶m0, ¶m1)) { - FunctionIndex return_value = ::interrogate_type_get_upcast((TypeIndex)param0, (int)param1); + FunctionIndex return_value = (::interrogate_type_get_upcast)((TypeIndex)param0, (int)param1); #if PY_MAJOR_VERSION >= 3 return PyLong_FromLong(return_value); #else @@ -2342,7 +2418,7 @@ _inP07ytO7Pz(PyObject *, PyObject *args) { int param0; int param1; if (PyArg_ParseTuple(args, "ii", ¶m0, ¶m1)) { - bool return_value = ::interrogate_type_derivation_downcast_is_impossible((TypeIndex)param0, (int)param1); + bool return_value = (::interrogate_type_derivation_downcast_is_impossible)((TypeIndex)param0, (int)param1); return PyBool_FromLong(return_value); } return nullptr; @@ -2357,7 +2433,7 @@ _inP07ytvu_E(PyObject *, PyObject *args) { int param0; int param1; if (PyArg_ParseTuple(args, "ii", ¶m0, ¶m1)) { - bool return_value = ::interrogate_type_derivation_has_downcast((TypeIndex)param0, (int)param1); + bool return_value = (::interrogate_type_derivation_has_downcast)((TypeIndex)param0, (int)param1); return PyBool_FromLong(return_value); } return nullptr; @@ -2372,7 +2448,7 @@ _inP07ytxGUt(PyObject *, PyObject *args) { int param0; int param1; if (PyArg_ParseTuple(args, "ii", ¶m0, ¶m1)) { - FunctionIndex return_value = ::interrogate_type_get_downcast((TypeIndex)param0, (int)param1); + FunctionIndex return_value = (::interrogate_type_get_downcast)((TypeIndex)param0, (int)param1); #if PY_MAJOR_VERSION >= 3 return PyLong_FromLong(return_value); #else @@ -2390,7 +2466,7 @@ static PyObject * _inP07ytzM1P(PyObject *, PyObject *args) { int param0; if (PyArg_ParseTuple(args, "i", ¶m0)) { - int return_value = ::interrogate_type_number_of_nested_types((TypeIndex)param0); + int return_value = (::interrogate_type_number_of_nested_types)((TypeIndex)param0); #if PY_MAJOR_VERSION >= 3 return PyLong_FromLong(return_value); #else @@ -2409,7 +2485,7 @@ _inP07ytoY5L(PyObject *, PyObject *args) { int param0; int param1; if (PyArg_ParseTuple(args, "ii", ¶m0, ¶m1)) { - TypeIndex return_value = ::interrogate_type_get_nested_type((TypeIndex)param0, (int)param1); + TypeIndex return_value = (::interrogate_type_get_nested_type)((TypeIndex)param0, (int)param1); #if PY_MAJOR_VERSION >= 3 return PyLong_FromLong(return_value); #else @@ -2427,7 +2503,7 @@ static PyObject * _inP07yte_7S(PyObject *, PyObject *args) { char *param0; if (PyArg_ParseTuple(args, "s", ¶m0)) { - ::interrogate_request_database((char const *)param0); + (::interrogate_request_database)((char const *)param0); return Py_BuildValue(""); } return nullptr; @@ -2441,7 +2517,7 @@ static PyObject * _inP07ytw_15(PyObject *, PyObject *args) { Py_ssize_t param0; if (PyArg_ParseTuple(args, "n", ¶m0)) { - ::interrogate_request_module((InterrogateModuleDef *)param0); + (::interrogate_request_module)((InterrogateModuleDef *)param0); return Py_BuildValue(""); } return nullptr; @@ -2489,6 +2565,8 @@ static PyMethodDef python_simple_funcs[] = { { "interrogate_function_prototype", &_inP07ytH3bx, METH_VARARGS }, { "interrogate_function_is_method", &_inP07ytzeUk, METH_VARARGS }, { "interrogate_function_class", &_inP07ytUeI5, METH_VARARGS }, + { "interrogate_function_is_constructor", &_inP07ytJAAI, METH_VARARGS }, + { "interrogate_function_is_destructor", &_inP07yt0UXw, METH_VARARGS }, { "interrogate_function_has_module_name", &_inP07ytuSvx, METH_VARARGS }, { "interrogate_function_module_name", &_inP07ytwpYd, METH_VARARGS }, { "interrogate_function_has_library_name", &_inP07ytOfNh, METH_VARARGS }, @@ -2511,6 +2589,7 @@ static PyMethodDef python_simple_funcs[] = { { "interrogate_wrapper_parameter_has_name", &_inP07ytNuBV, METH_VARARGS }, { "interrogate_wrapper_parameter_name", &_inP07yt9UwA, METH_VARARGS }, { "interrogate_wrapper_parameter_is_this", &_inP07yt3FDt, METH_VARARGS }, + { "interrogate_wrapper_parameter_is_optional", &_inP07ytDgOY, METH_VARARGS }, { "interrogate_wrapper_has_pointer", &_inP07ytf513, METH_VARARGS }, { "interrogate_wrapper_pointer", &_inP07ytsqGH, METH_VARARGS }, { "interrogate_wrapper_unique_name", &_inP07yt7shV, METH_VARARGS }, @@ -2553,6 +2632,7 @@ static PyMethodDef python_simple_funcs[] = { { "interrogate_type_is_typedef", &_inP07ytRtji, METH_VARARGS }, { "interrogate_type_wrapped_type", &_inP07ytCnbQ, METH_VARARGS }, { "interrogate_type_is_enum", &_inP07ytdUVN, METH_VARARGS }, + { "interrogate_type_is_scoped_enum", &_inP07ytZtNk, METH_VARARGS }, { "interrogate_type_number_of_enum_values", &_inP07ytihbt, METH_VARARGS }, { "interrogate_type_enum_value_name", &_inP07ytbyPY, METH_VARARGS }, { "interrogate_type_enum_value_scoped_name", &_inP07ytAaT6, METH_VARARGS }, @@ -2578,6 +2658,7 @@ static PyMethodDef python_simple_funcs[] = { { "interrogate_type_get_cast", &_inP07ytHFjA, METH_VARARGS }, { "interrogate_type_number_of_derivations", &_inP07yt_NPR, METH_VARARGS }, { "interrogate_type_get_derivation", &_inP07ytcTOH, METH_VARARGS }, + { "interrogate_type_is_final", &_inP07ytC5Uk, METH_VARARGS }, { "interrogate_type_derivation_has_upcast", &_inP07ythdU7, METH_VARARGS }, { "interrogate_type_get_upcast", &_inP07ytQPxU, METH_VARARGS }, { "interrogate_type_derivation_downcast_is_impossible", &_inP07ytO7Pz, METH_VARARGS }, diff --git a/dtool/src/interrogate/functionRemap.cxx b/dtool/src/interrogate/functionRemap.cxx index e0dec969c0..cb8f9906a8 100644 --- a/dtool/src/interrogate/functionRemap.cxx +++ b/dtool/src/interrogate/functionRemap.cxx @@ -327,6 +327,9 @@ make_wrapper_entry(FunctionIndex function_index) { if ((*pi)._has_name) { param._parameter_flags |= InterrogateFunctionWrapper::PF_has_name; } + if ((*pi)._remap->has_default_value()) { + param._parameter_flags |= InterrogateFunctionWrapper::PF_is_optional; + } iwrapper._parameters.push_back(param); } diff --git a/dtool/src/interrogate/interrogateBuilder.cxx b/dtool/src/interrogate/interrogateBuilder.cxx index f06d6e10d0..1cc4aad3ff 100644 --- a/dtool/src/interrogate/interrogateBuilder.cxx +++ b/dtool/src/interrogate/interrogateBuilder.cxx @@ -1777,6 +1777,16 @@ get_function(CPPInstance *function, string description, ifunction->_flags |= InterrogateFunction::F_operator_typecast; } + if (ftype->_flags & CPPFunctionType::F_constructor) { + // This is a constructor. + ifunction->_flags |= InterrogateFunction::F_constructor; + } + + if (ftype->_flags & CPPFunctionType::F_destructor) { + // This is a destructor. + ifunction->_flags |= InterrogateFunction::F_destructor; + } + if (function->_storage_class & CPPInstance::SC_virtual) { // This is a virtual function. ifunction->_flags |= InterrogateFunction::F_virtual; @@ -2749,7 +2759,8 @@ define_struct_type(InterrogateType &itype, CPPStructType *cpptype, function->_storage_class |= CPPInstance::SC_inline | CPPInstance::SC_defaulted; function->_vis = V_published; - FunctionIndex index = get_function(function, "", cpptype, cpptype->get_scope(), 0); + FunctionIndex index = get_function(function, "", cpptype, cpptype->get_scope(), + InterrogateFunction::F_constructor); if (find(itype._constructors.begin(), itype._constructors.end(), index) == itype._constructors.end()) { itype._constructors.push_back(index); @@ -2775,7 +2786,8 @@ define_struct_type(InterrogateType &itype, CPPStructType *cpptype, function->_storage_class |= CPPInstance::SC_inline | CPPInstance::SC_defaulted; function->_vis = V_published; - FunctionIndex index = get_function(function, "", cpptype, cpptype->get_scope(), 0); + FunctionIndex index = get_function(function, "", cpptype, cpptype->get_scope(), + InterrogateFunction::F_constructor); if (find(itype._constructors.begin(), itype._constructors.end(), index) == itype._constructors.end()) { itype._constructors.push_back(index); @@ -2816,7 +2828,7 @@ define_struct_type(InterrogateType &itype, CPPStructType *cpptype, itype._destructor = get_function(function, "", cpptype, cpptype->get_scope(), - 0); + InterrogateFunction::F_destructor); itype._flags |= InterrogateType::F_implicit_destructor; } } diff --git a/dtool/src/interrogatedb/interrogateDatabase.cxx b/dtool/src/interrogatedb/interrogateDatabase.cxx index a8e7b37a6c..afdb7a11f7 100644 --- a/dtool/src/interrogatedb/interrogateDatabase.cxx +++ b/dtool/src/interrogatedb/interrogateDatabase.cxx @@ -968,6 +968,17 @@ read_new(std::istream &in, InterrogateModuleDef *def) { add_type(index, type); num_types--; + + // Older versions of interrogate were not setting these flags. + const InterrogateType &itype = get_type(index); + FunctionIndex dtor = itype.get_destructor(); + if (dtor != 0) { + update_function(dtor)._flags |= InterrogateFunction::F_destructor; + } + for (int i = 0; i < itype.number_of_constructors(); ++i) { + FunctionIndex ctor = itype.get_constructor(i); + update_function(ctor)._flags |= InterrogateFunction::F_constructor; + } } } diff --git a/dtool/src/interrogatedb/interrogateFunction.I b/dtool/src/interrogatedb/interrogateFunction.I index 3834e60782..6c36fec5d3 100644 --- a/dtool/src/interrogatedb/interrogateFunction.I +++ b/dtool/src/interrogatedb/interrogateFunction.I @@ -54,6 +54,22 @@ is_operator_typecast() const { return (_flags & F_operator_typecast) != 0; } +/** + * Returns true if the function is a constructor. + */ +INLINE bool InterrogateFunction:: +is_constructor() const { + return (_flags & F_constructor) != 0; +} + +/** + * Returns true if the function is a destructor. + */ +INLINE bool InterrogateFunction:: +is_destructor() const { + return (_flags & F_destructor) != 0; +} + /** * Return the class that owns the method, if is_method() returns true. */ diff --git a/dtool/src/interrogatedb/interrogateFunction.h b/dtool/src/interrogatedb/interrogateFunction.h index 1e3a251032..b3736069d7 100644 --- a/dtool/src/interrogatedb/interrogateFunction.h +++ b/dtool/src/interrogatedb/interrogateFunction.h @@ -38,6 +38,8 @@ public: INLINE bool is_method() const; INLINE bool is_unary_op() const; INLINE bool is_operator_typecast() const; + INLINE bool is_constructor() const; + INLINE bool is_destructor() const; INLINE TypeIndex get_class() const; INLINE bool has_scoped_name() const; @@ -70,6 +72,8 @@ private: F_setter = 0x0020, F_unary_op = 0x0040, F_operator_typecast = 0x0080, + F_constructor = 0x0100, + F_destructor = 0x0200, }; int _flags; @@ -97,6 +101,7 @@ public: std::string _expression; friend class InterrogateBuilder; + friend class InterrogateDatabase; friend class InterfaceMakerC; friend class InterfaceMakerPythonSimple; friend class InterfaceMakerPythonNative; diff --git a/dtool/src/interrogatedb/interrogateFunctionWrapper.I b/dtool/src/interrogatedb/interrogateFunctionWrapper.I index d636e32ebf..b0ec398623 100644 --- a/dtool/src/interrogatedb/interrogateFunctionWrapper.I +++ b/dtool/src/interrogatedb/interrogateFunctionWrapper.I @@ -148,6 +148,17 @@ parameter_is_this(int n) const { return false; } +/** + * + */ +INLINE bool InterrogateFunctionWrapper:: +parameter_is_optional(int n) const { + if (n >= 0 && n < (int)_parameters.size()) { + return (_parameters[n]._parameter_flags & PF_is_optional) != 0; + } + return false; +} + /** * */ diff --git a/dtool/src/interrogatedb/interrogateFunctionWrapper.h b/dtool/src/interrogatedb/interrogateFunctionWrapper.h index 43b01a9a79..29e59ed259 100644 --- a/dtool/src/interrogatedb/interrogateFunctionWrapper.h +++ b/dtool/src/interrogatedb/interrogateFunctionWrapper.h @@ -45,6 +45,7 @@ public: INLINE bool parameter_has_name(int n) const; INLINE const std::string ¶meter_get_name(int n) const; INLINE bool parameter_is_this(int n) const; + INLINE bool parameter_is_optional(int n) const; INLINE const std::string &get_unique_name() const; @@ -66,6 +67,7 @@ private: enum ParameterFlags { PF_has_name = 0x0001, PF_is_this = 0x0002, + PF_is_optional = 0x0004, }; int _flags; diff --git a/dtool/src/interrogatedb/interrogate_interface.cxx b/dtool/src/interrogatedb/interrogate_interface.cxx index 3fc2053855..9f52b2b873 100644 --- a/dtool/src/interrogatedb/interrogate_interface.cxx +++ b/dtool/src/interrogatedb/interrogate_interface.cxx @@ -266,6 +266,18 @@ interrogate_function_class(FunctionIndex function) { return InterrogateDatabase::get_ptr()->get_function(function).get_class(); } +bool +interrogate_function_is_constructor(FunctionIndex function) { + // cerr << "interrogate_function_is_constructor(" << function << ")\n"; + return InterrogateDatabase::get_ptr()->get_function(function).is_constructor(); +} + +bool +interrogate_function_is_destructor(FunctionIndex function) { + // cerr << "interrogate_function_is_destructor(" << function << ")\n"; + return InterrogateDatabase::get_ptr()->get_function(function).is_destructor(); +} + bool interrogate_function_has_module_name(FunctionIndex function) { // cerr << "interrogate_function_has_module_name(" << function << ")\n"; @@ -411,6 +423,12 @@ interrogate_wrapper_parameter_is_this(FunctionWrapperIndex wrapper, int n) { return InterrogateDatabase::get_ptr()->get_wrapper(wrapper).parameter_is_this(n); } +bool +interrogate_wrapper_parameter_is_optional(FunctionWrapperIndex wrapper, int n) { + // cerr << "interrogate_wrapper_is_optional(" << wrapper << ", " << n << ")\n"; + return InterrogateDatabase::get_ptr()->get_wrapper(wrapper).parameter_is_optional(n); +} + bool interrogate_wrapper_has_pointer(FunctionWrapperIndex wrapper) { // cerr << "interrogate_wrapper_has_pointer(" << wrapper << ")\n"; @@ -674,6 +692,12 @@ interrogate_type_is_enum(TypeIndex type) { return InterrogateDatabase::get_ptr()->get_type(type).is_enum(); } +bool +interrogate_type_is_scoped_enum(TypeIndex type) { + // cerr << "interrogate_type_is_scoped_enum(" << type << ")\n"; + return InterrogateDatabase::get_ptr()->get_type(type).is_scoped_enum(); +} + int interrogate_type_number_of_enum_values(TypeIndex type) { // cerr << "interrogate_type_number_of_enum_values(" << type << ")\n"; @@ -828,6 +852,12 @@ interrogate_type_get_derivation(TypeIndex type, int n) { return InterrogateDatabase::get_ptr()->get_type(type).get_derivation(n); } +bool +interrogate_type_is_final(TypeIndex type) { + // cerr << "interrogate_type_is_final(" << type << ")\n"; + return InterrogateDatabase::get_ptr()->get_type(type).is_final(); +} + bool interrogate_type_derivation_has_upcast(TypeIndex type, int n) { // cerr << "interrogate_type_derivation_has_upcast(" << type << ", " << n << diff --git a/dtool/src/interrogatedb/interrogate_interface.h b/dtool/src/interrogatedb/interrogate_interface.h index cc88af041d..df17f09e75 100644 --- a/dtool/src/interrogatedb/interrogate_interface.h +++ b/dtool/src/interrogatedb/interrogate_interface.h @@ -210,6 +210,8 @@ EXPCL_INTERROGATEDB const char *interrogate_function_prototype(FunctionIndex fun // if the function is a class method. EXPCL_INTERROGATEDB bool interrogate_function_is_method(FunctionIndex function); EXPCL_INTERROGATEDB TypeIndex interrogate_function_class(FunctionIndex function); +EXPCL_INTERROGATEDB bool interrogate_function_is_constructor(FunctionIndex function); +EXPCL_INTERROGATEDB bool interrogate_function_is_destructor(FunctionIndex function); // This returns the module name reported for the function, if available. EXPCL_INTERROGATEDB bool interrogate_function_has_module_name(FunctionIndex function); @@ -299,6 +301,7 @@ EXPCL_INTERROGATEDB TypeIndex interrogate_wrapper_parameter_type(FunctionWrapper EXPCL_INTERROGATEDB bool interrogate_wrapper_parameter_has_name(FunctionWrapperIndex wrapper, int n); EXPCL_INTERROGATEDB const char *interrogate_wrapper_parameter_name(FunctionWrapperIndex wrapper, int n); EXPCL_INTERROGATEDB bool interrogate_wrapper_parameter_is_this(FunctionWrapperIndex wrapper, int n); +EXPCL_INTERROGATEDB bool interrogate_wrapper_parameter_is_optional(FunctionWrapperIndex wrapper, int n); // This returns a pointer to a function that may be called to invoke the // function, if the -fptrs option to return function pointers was specified to @@ -423,6 +426,7 @@ EXPCL_INTERROGATEDB TypeIndex interrogate_type_wrapped_type(TypeIndex type); // If interrogate_type_is_enum() returns true, this is an enumerated type, // which means it may take any one of a number of named integer values. EXPCL_INTERROGATEDB bool interrogate_type_is_enum(TypeIndex type); +EXPCL_INTERROGATEDB bool interrogate_type_is_scoped_enum(TypeIndex type); EXPCL_INTERROGATEDB int interrogate_type_number_of_enum_values(TypeIndex type); EXPCL_INTERROGATEDB const char *interrogate_type_enum_value_name(TypeIndex type, int n); EXPCL_INTERROGATEDB const char *interrogate_type_enum_value_scoped_name(TypeIndex type, int n); @@ -499,6 +503,7 @@ EXPCL_INTERROGATEDB FunctionIndex interrogate_type_get_cast(TypeIndex type, int // list of base classes for this particular type. EXPCL_INTERROGATEDB int interrogate_type_number_of_derivations(TypeIndex type); EXPCL_INTERROGATEDB TypeIndex interrogate_type_get_derivation(TypeIndex type, int n); +EXPCL_INTERROGATEDB bool interrogate_type_is_final(TypeIndex type); // For each base class, we might need to define an explicit upcast or downcast // operation to convert the pointer to the derived class to an appropriate