summaryrefslogtreecommitdiff
path: root/ext/pybind11/docs/limitations.rst
diff options
context:
space:
mode:
Diffstat (limited to 'ext/pybind11/docs/limitations.rst')
-rw-r--r--ext/pybind11/docs/limitations.rst20
1 files changed, 20 insertions, 0 deletions
diff --git a/ext/pybind11/docs/limitations.rst b/ext/pybind11/docs/limitations.rst
new file mode 100644
index 000000000..a1a4f1aff
--- /dev/null
+++ b/ext/pybind11/docs/limitations.rst
@@ -0,0 +1,20 @@
+Limitations
+###########
+
+pybind11 strives to be a general solution to binding generation, but it also has
+certain limitations:
+
+- pybind11 casts away ``const``-ness in function arguments and return values.
+ This is in line with the Python language, which has no concept of ``const``
+ values. This means that some additional care is needed to avoid bugs that
+ would be caught by the type checker in a traditional C++ program.
+
+- The NumPy interface ``pybind11::array`` greatly simplifies accessing
+ numerical data from C++ (and vice versa), but it's not a full-blown array
+ class like ``Eigen::Array`` or ``boost.multi_array``.
+
+These features could be implemented but would lead to a significant increase in
+complexity. I've decided to draw the line here to keep this project simple and
+compact. Users who absolutely require these features are encouraged to fork
+pybind11.
+