test_docstring_options.cpp revision 11986
12SN/A/* 21762SN/A tests/test_docstring_options.cpp -- generation of docstrings and signatures 32SN/A 42SN/A Copyright (c) 2016 Wenzel Jakob <wenzel.jakob@epfl.ch> 52SN/A 62SN/A All rights reserved. Use of this source code is governed by a 72SN/A BSD-style license that can be found in the LICENSE file. 82SN/A*/ 92SN/A 102SN/A#include "pybind11_tests.h" 112SN/A 122SN/Astruct DocstringTestFoo { 132SN/A int value; 142SN/A void setValue(int v) { value = v; } 152SN/A int getValue() const { return value; } 162SN/A}; 172SN/A 182SN/Atest_initializer docstring_generation([](py::module &m) { 192SN/A 202SN/A { 212SN/A py::options options; 222SN/A options.disable_function_signatures(); 232SN/A 242SN/A m.def("test_function1", [](int, int) {}, py::arg("a"), py::arg("b")); 252SN/A m.def("test_function2", [](int, int) {}, py::arg("a"), py::arg("b"), "A custom docstring"); 262SN/A 272665Ssaidi@eecs.umich.edu options.enable_function_signatures(); 282665Ssaidi@eecs.umich.edu 292665Ssaidi@eecs.umich.edu m.def("test_function3", [](int, int) {}, py::arg("a"), py::arg("b")); 302SN/A m.def("test_function4", [](int, int) {}, py::arg("a"), py::arg("b"), "A custom docstring"); 312SN/A 321388SN/A options.disable_function_signatures().disable_user_defined_docstrings(); 332SN/A 342SN/A m.def("test_function5", [](int, int) {}, py::arg("a"), py::arg("b"), "A custom docstring"); 352SN/A 361191SN/A { 371191SN/A py::options nested_options; 381191SN/A nested_options.enable_user_defined_docstrings(); 391388SN/A m.def("test_function6", [](int, int) {}, py::arg("a"), py::arg("b"), "A custom docstring"); 401717SN/A } 412651Ssaidi@eecs.umich.edu } 422680Sktlim@umich.edu 431977SN/A m.def("test_function7", [](int, int) {}, py::arg("a"), py::arg("b"), "A custom docstring"); 443144Shsul@eecs.umich.edu 45161SN/A { 462190SN/A py::options options; 4756SN/A options.disable_user_defined_docstrings(); 482190SN/A 492SN/A py::class_<DocstringTestFoo>(m, "DocstringTestFoo", "This is a class docstring") 501062SN/A .def_property("value_prop", &DocstringTestFoo::getValue, &DocstringTestFoo::setValue, "This is a property docstring") 511062SN/A ; 522359SN/A } 532359SN/A}); 542359SN/A