reference.rst 2.45 KB
Newer Older
1
2
.. _reference:

Wenzel Jakob's avatar
Wenzel Jakob committed
3
4
5
6
.. warning::

    Please be advised that the reference documentation discussing pybind11
    internals is currently incomplete. Please refer to the previous sections
7
    and the pybind11 header files for the nitty gritty details.
Wenzel Jakob's avatar
Wenzel Jakob committed
8

9
10
11
Reference
#########

Dean Moldovan's avatar
Dean Moldovan committed
12
13
.. _macros:

14
15
16
Macros
======

17
.. doxygendefine:: PYBIND11_MODULE
18
19
20
21
22
23

.. _core_types:

Convenience classes for arbitrary Python types
==============================================

24
25
Common member functions
-----------------------
26

27
28
.. doxygenclass:: object_api
    :members:
29

30
31
Without reference counting
--------------------------
32

33
34
.. doxygenclass:: handle
    :members:
35
36
37
38

With reference counting
-----------------------

39
40
.. doxygenclass:: object
    :members:
41

42
.. doxygenfunction:: reinterpret_borrow
43

44
.. doxygenfunction:: reinterpret_steal
45
46
47
48

Convenience classes for specific Python types
=============================================

49
.. doxygenclass:: module_
50
    :members:
51

52
53
.. doxygengroup:: pytypes
    :members:
54

55
56
57
58
59
60
61
62
63
64
65
Convenience functions converting to Python types
================================================

.. doxygenfunction:: make_tuple(Args&&...)

.. doxygenfunction:: make_iterator(Iterator, Sentinel, Extra &&...)
.. doxygenfunction:: make_iterator(Type &, Extra&&...)

.. doxygenfunction:: make_key_iterator(Iterator, Sentinel, Extra &&...)
.. doxygenfunction:: make_key_iterator(Type &, Extra&&...)

66
67
.. _extras:

68
69
Passing extra arguments to ``def`` or ``class_``
================================================
70

71
72
.. doxygengroup:: annotations
    :members:
73

74
75
76
77
78
79
80
81
82
83
84
Embedding the interpreter
=========================

.. doxygendefine:: PYBIND11_EMBEDDED_MODULE

.. doxygenfunction:: initialize_interpreter

.. doxygenfunction:: finalize_interpreter

.. doxygenclass:: scoped_interpreter

85
86
87
88
89
90
91
92
93
Redirecting C++ streams
=======================

.. doxygenclass:: scoped_ostream_redirect

.. doxygenclass:: scoped_estream_redirect

.. doxygenfunction:: add_ostream_redirect

94
Python built-in functions
95
=========================
96

97
98
.. doxygengroup:: python_builtins
    :members:
99

100
101
102
103
104
Inheritance
===========

See :doc:`/classes` and :doc:`/advanced/classes` for more detail.

105
.. doxygendefine:: PYBIND11_OVERRIDE
106

107
.. doxygendefine:: PYBIND11_OVERRIDE_PURE
108

109
.. doxygendefine:: PYBIND11_OVERRIDE_NAME
110

111
.. doxygendefine:: PYBIND11_OVERRIDE_PURE_NAME
112

113
.. doxygenfunction:: get_override
114

115
116
Exceptions
==========
117

118
119
.. doxygenclass:: error_already_set
    :members:
120

121
122
.. doxygenclass:: builtin_exception
    :members:
123

124
125
Literals
========
Klemens Morgenstern's avatar
Klemens Morgenstern committed
126

127
.. doxygennamespace:: literals