example.cpp 1.94 KB
Newer Older
Wenzel Jakob's avatar
Wenzel Jakob committed
1
2
3
/*
    example/example.cpp -- pybind example plugin

4
    Copyright (c) 2016 Wenzel Jakob <wenzel.jakob@epfl.ch>
Wenzel Jakob's avatar
Wenzel Jakob committed
5
6
7
8
9
10
11

    All rights reserved. Use of this source code is governed by a
    BSD-style license that can be found in the LICENSE file.
*/

#include "example.h"

12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
void init_ex_methods_and_attributes(py::module &);
void init_ex_python_types(py::module &);
void init_ex_operator_overloading(py::module &);
void init_ex_constants_and_functions(py::module &);
void init_ex_callbacks(py::module &);
void init_ex_sequences_and_iterators(py::module &);
void init_ex_buffers(py::module &);
void init_ex_smart_ptr(py::module &);
void init_ex_modules(py::module &);
void init_ex_numpy_vectorize(py::module &);
void init_ex_arg_keywords_and_defaults(py::module &);
void init_ex_virtual_functions(py::module &);
void init_ex_keep_alive(py::module &);
void init_ex_opaque_types(py::module &);
void init_ex_pickling(py::module &);
void init_ex_inheritance(py::module &);
void init_ex_stl_binder_vector(py::module &);
void init_ex_eval(py::module &);
void init_ex_custom_exceptions(py::module &);
31
void init_issues(py::module &);
Wenzel Jakob's avatar
Wenzel Jakob committed
32

33
34
35
36
#if defined(PYBIND11_TEST_EIGEN)
    void init_eigen(py::module &);
#endif

37
PYBIND11_PLUGIN(example) {
Wenzel Jakob's avatar
Wenzel Jakob committed
38
39
    py::module m("example", "pybind example plugin");

40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
    init_ex_methods_and_attributes(m);
    init_ex_python_types(m);
    init_ex_operator_overloading(m);
    init_ex_constants_and_functions(m);
    init_ex_callbacks(m);
    init_ex_sequences_and_iterators(m);
    init_ex_buffers(m);
    init_ex_smart_ptr(m);
    init_ex_modules(m);
    init_ex_numpy_vectorize(m);
    init_ex_arg_keywords_and_defaults(m);
    init_ex_virtual_functions(m);
    init_ex_keep_alive(m);
    init_ex_opaque_types(m);
    init_ex_pickling(m);
    init_ex_inheritance(m);
    init_ex_stl_binder_vector(m);
    init_ex_eval(m);
    init_ex_custom_exceptions(m);
59
    init_issues(m);
Wenzel Jakob's avatar
Wenzel Jakob committed
60

61
62
63
64
    #if defined(PYBIND11_TEST_EIGEN)
        init_eigen(m);
    #endif

Wenzel Jakob's avatar
Wenzel Jakob committed
65
66
    return m.ptr();
}