blob: a9fbe60015ca466e71a37f6f9cd9866bfa7adfe5 [file] [log] [blame]
Wenzel Jakob28f98aa2015-10-13 02:57:16 +02001.. _reference:
2
Wenzel Jakob93296692015-10-13 23:21:54 +02003.. warning::
4
5 Please be advised that the reference documentation discussing pybind11
6 internals is currently incomplete. Please refer to the previous sections
Wenzel Jakob8f4eb002015-10-15 18:13:33 +02007 and the pybind11 header files for the nitty gritty details.
Wenzel Jakob93296692015-10-13 23:21:54 +02008
Wenzel Jakob28f98aa2015-10-13 02:57:16 +02009Reference
10#########
11
Dean Moldovandb46a892017-08-13 22:25:15 +020012.. _macros:
13
Wenzel Jakob28f98aa2015-10-13 02:57:16 +020014Macros
15======
16
Dean Moldovan443ab592017-04-24 01:51:44 +020017.. doxygendefine:: PYBIND11_MODULE
Wenzel Jakob28f98aa2015-10-13 02:57:16 +020018
19.. _core_types:
20
21Convenience classes for arbitrary Python types
22==============================================
23
Dean Moldovan57a9bbc2017-01-31 16:54:08 +010024Common member functions
25-----------------------
26
27.. doxygenclass:: object_api
28 :members:
29
Wenzel Jakob28f98aa2015-10-13 02:57:16 +020030Without reference counting
31--------------------------
32
Dean Moldovan57a9bbc2017-01-31 16:54:08 +010033.. doxygenclass:: handle
34 :members:
Wenzel Jakob28f98aa2015-10-13 02:57:16 +020035
36With reference counting
37-----------------------
38
Dean Moldovan57a9bbc2017-01-31 16:54:08 +010039.. doxygenclass:: object
40 :members:
Wenzel Jakob28f98aa2015-10-13 02:57:16 +020041
Dean Moldovan57a9bbc2017-01-31 16:54:08 +010042.. doxygenfunction:: reinterpret_borrow
Wenzel Jakob28f98aa2015-10-13 02:57:16 +020043
Dean Moldovan57a9bbc2017-01-31 16:54:08 +010044.. doxygenfunction:: reinterpret_steal
Wenzel Jakob28f98aa2015-10-13 02:57:16 +020045
46Convenience classes for specific Python types
47=============================================
48
Dean Moldovan57a9bbc2017-01-31 16:54:08 +010049.. doxygenclass:: module
50 :members:
Wenzel Jakob28f98aa2015-10-13 02:57:16 +020051
Dean Moldovan57a9bbc2017-01-31 16:54:08 +010052.. doxygengroup:: pytypes
53 :members:
Wenzel Jakob28f98aa2015-10-13 02:57:16 +020054
55.. _extras:
56
Dean Moldovan57a9bbc2017-01-31 16:54:08 +010057Passing extra arguments to ``def`` or ``class_``
58================================================
Wenzel Jakob28f98aa2015-10-13 02:57:16 +020059
Dean Moldovan57a9bbc2017-01-31 16:54:08 +010060.. doxygengroup:: annotations
61 :members:
Wenzel Jakob28f98aa2015-10-13 02:57:16 +020062
Dean Moldovan22c413b2017-03-30 00:20:42 +020063Embedding the interpreter
64=========================
65
66.. doxygendefine:: PYBIND11_EMBEDDED_MODULE
67
68.. doxygenfunction:: initialize_interpreter
69
70.. doxygenfunction:: finalize_interpreter
71
72.. doxygenclass:: scoped_interpreter
73
Henry Schreiner8b405052017-08-24 17:12:43 -070074Redirecting C++ streams
75=======================
76
77.. doxygenclass:: scoped_ostream_redirect
78
79.. doxygenclass:: scoped_estream_redirect
80
81.. doxygenfunction:: add_ostream_redirect
82
Boris Dalsteinb30734e2018-07-01 17:47:22 +020083Python built-in functions
Dean Moldovan57a9bbc2017-01-31 16:54:08 +010084=========================
Wenzel Jakob28f98aa2015-10-13 02:57:16 +020085
Dean Moldovan57a9bbc2017-01-31 16:54:08 +010086.. doxygengroup:: python_builtins
87 :members:
Wenzel Jakob28f98aa2015-10-13 02:57:16 +020088
Ivor Wanders2b045752019-06-10 16:12:28 -040089Inheritance
90===========
91
92See :doc:`/classes` and :doc:`/advanced/classes` for more detail.
93
94.. doxygendefine:: PYBIND11_OVERLOAD
95
96.. doxygendefine:: PYBIND11_OVERLOAD_PURE
97
98.. doxygendefine:: PYBIND11_OVERLOAD_NAME
99
100.. doxygendefine:: PYBIND11_OVERLOAD_PURE_NAME
101
102.. doxygenfunction:: get_overload
103
Dean Moldovan57a9bbc2017-01-31 16:54:08 +0100104Exceptions
105==========
Wenzel Jakob28f98aa2015-10-13 02:57:16 +0200106
Dean Moldovan57a9bbc2017-01-31 16:54:08 +0100107.. doxygenclass:: error_already_set
108 :members:
Wenzel Jakob93296692015-10-13 23:21:54 +0200109
Dean Moldovan57a9bbc2017-01-31 16:54:08 +0100110.. doxygenclass:: builtin_exception
111 :members:
Wenzel Jakob28f98aa2015-10-13 02:57:16 +0200112
Wenzel Jakob28f98aa2015-10-13 02:57:16 +0200113
Dean Moldovan57a9bbc2017-01-31 16:54:08 +0100114Literals
115========
Wenzel Jakob28f98aa2015-10-13 02:57:16 +0200116
Dean Moldovan57a9bbc2017-01-31 16:54:08 +0100117.. doxygennamespace:: literals