Opened 15 years ago
Last modified 13 years ago
#1180 new Feature Requests
[boost.python] def_readwrite need a default docstring — at Initial Version
Reported by: | Owned by: | Dave Abrahams | |
---|---|---|---|
Milestone: | To Be Determined | Component: | python USE GITHUB |
Version: | Boost 1.34.0 | Severity: | Problem |
Keywords: | def_readwrite docstring | Cc: | rwgk@… |
Description
the default docstring defined by def_readwrite is null, can boost.python add the type name of my_s::a as the default docstring? like the function's "C++ signature" docstring.
struct my_s {
int a;
};
void export_module {
class_<my_s > s_class("my_s", init< >()); s_class.def_readwrite("a", &my_s::a); doc is empty, can boost.python add the type name of my_s::a as the default docstring? like the function's "C++ signature" docstring.
}
I do this like this: get type name of data member of class template<typename T, typename C> char const* MemberTypeName(T C::*) {
char const* name = typeid(T).name(); return name;
}
boost::python def_readwrite no docstring read write property #define DEF_READWRITE(n, p) \
def_readwrite((n), (p), std::string("read write property, type is ") + MemberTypeName(p)).c_str())
void export_module {
class_<my_s > s_class("my_s", init< >()); s_class.DEF_READWRITE("a", &my_s::a); replace all auto genarated def_readwrite to DEF_READWRITE.
}