@@ -103,6 +103,8 @@ <h4><a name="docstring_options-spec-synopsis" id=
103103
104104 docstring_options(bool show_user_defined, bool show_signatures);
105105
106+ docstring_options(bool show_user_defined, bool show_py_signatures, bool show_cpp_signatures);
107+
106108 ~docstring_options();
107109
108110 void
@@ -117,6 +119,18 @@ <h4><a name="docstring_options-spec-synopsis" id=
117119 void
118120 enable_signatures();
119121
122+ void
123+ disable_py_signatures();
124+
125+ void
126+ enable_py_signatures();
127+
128+ void
129+ disable_cpp_signatures();
130+
131+ void
132+ enable_cpp_signatures();
133+
120134 void
121135 disable_all();
122136
@@ -139,7 +153,7 @@ <h4><a name="docstring_options-spec-ctors" id=
139153 object which controls the appearance of function and
140154 member-function docstrings defined in the code that follows. If
141155 < code > show_all</ code > is < code > true</ code > , both the
142- user-defined docstrings and the automatically generated C++
156+ user-defined docstrings and the automatically generated Python and C++
143157 signatures are shown. If < code > show_all</ code > is
144158 < code > false</ code > the < code > __doc__</ code > attributes are
145159 < code > None</ code > .</ dt >
@@ -154,12 +168,29 @@ <h4><a name="docstring_options-spec-ctors" id=
154168 member-function docstrings defined in the code that follows.
155169 Iff < code > show_user_defined</ code > is < code > true</ code > , the
156170 user-defined docstrings are shown. Iff
157- < code > show_signatures</ code > is < code > true</ code > , C++
171+ < code > show_signatures</ code > is < code > true</ code > , Python and C++
158172 signatures are automatically added. If both
159173 < code > show_user_defined</ code > and < code > show_signatures</ code >
160174 are < code > false</ code > , the < code > __doc__</ code > attributes are
161175 < code > None</ code > .</ dt >
162176 </ dl >
177+ < pre >
178+ docstring_options(bool show_user_defined, bool show_py_signatures, bool show_cpp_signatures);
179+ </ pre >
180+
181+ < dl class ="function-semantics ">
182+ < dt > < b > Effects:</ b > Constructs a < code > docstring_options</ code >
183+ object which controls the appearance of function and
184+ member-function docstrings defined in the code that follows.
185+ Iff < code > show_user_defined</ code > is < code > true</ code > , the
186+ user-defined docstrings are shown. Iff
187+ < code > show_py_signatures</ code > is < code > true</ code > , Python
188+ signatures are automatically added. Iff
189+ < code > show_cpp_signatures</ code > is < code > true</ code > , C++
190+ signatures are automatically added. If all parameters are
191+ < code > false</ code > , the < code > __doc__</ code > attributes are
192+ < code > None</ code > .</ dt >
193+ </ dl >
163194
164195 < h4 > < a name ="docstring_options-spec-dtors " id =
165196 "docstring_options-spec-dtors "> </ a > Class
@@ -186,6 +217,10 @@ <h4><a name="docstring_options-spec-modifiers" id=
186217void enable_user_defined();
187218void disable_signatures();
188219void enable_signatures();
220+ void disable_py_signatures();
221+ void enable_py_signatures();
222+ void disable_cpp_signatures();
223+ void enable_cpp_signatures();
189224void disable_all();
190225void enable_all();
191226</ pre >
@@ -196,7 +231,7 @@ <h4><a name="docstring_options-spec-modifiers" id=
196231 < code > *_user_defined()</ code > and < code > *_signatures()</ code >
197232 member functions are provided for fine-grained control. The
198233 < code > *_all()</ code > member functions are convenient shortcuts
199- to manipulate both settings simultaneously.</ dt >
234+ to manipulate all settings simultaneously.</ dt >
200235 </ dl >
201236
202237 < h2 > < a name ="examples " id ="examples "> </ a > Examples</ h2 >
@@ -219,7 +254,7 @@ <h4>Docstring options defined at compile time</h4>
219254 < pre >
220255>>> import demo
221256>>> print demo.foo.__doc__
222- foo doc
257+ foo() -> None : foo doc
223258C++ signature:
224259 foo(void) -> void
225260</ pre > If compiled with
@@ -253,21 +288,33 @@ <h4>Selective suppressions</h4>
253288 def("foo3", foo3, arg("f"), "foo3 doc");
254289 doc_options.enable_user_defined();
255290 def("foo4", foo4, arg("d"), "foo4 doc");
291+ doc_options.enable_py_signatures();
292+ def("foo5", foo4, arg("d"), "foo5 doc");
293+ doc_options.disable_py_signatures();
294+ doc_options.enable_cpp_signatures();
295+ def("foo6", foo4, arg("d"), "foo6 doc");
256296}
257297</ pre > Python code:
258298 < pre >
259299>>> import demo
260300>>> print demo.foo1.__doc__
261- foo1 doc
301+ foo1( (int)i) -> int : foo1 doc
262302C++ signature:
263303 foo1(int i) -> int
264304>>> print demo.foo2.__doc__
305+ foo2( (int)l) -> int :
265306C++ signature:
266307 foo2(long l) -> int
267308>>> print demo.foo3.__doc__
268309None
269310>>> print demo.foo4.__doc__
270311foo4 doc
312+ >>> print demo.foo5.__doc__
313+ foo5( (float)d) -> int : foo5 doc
314+ >>> print demo.foo6.__doc__
315+ foo6 doc
316+ C++ signature:
317+ foo6(double d) -> int
271318</ pre >
272319
273320 < h4 > Wrapping from multiple C++ scopes</ h4 >
0 commit comments