Author: Wim Lavrijsen <[email protected]> Branch: reflex-support Changeset: r55711:16bd0980b82c Date: 2012-06-18 14:12 -0700 http://bitbucket.org/pypy/pypy/changeset/16bd0980b82c/
Log: doc updates diff --git a/pypy/doc/cppyy.rst b/pypy/doc/cppyy.rst --- a/pypy/doc/cppyy.rst +++ b/pypy/doc/cppyy.rst @@ -5,8 +5,10 @@ The cppyy module provides C++ bindings for PyPy by using the reflection information extracted from C++ header files by means of the `Reflex package`_. -For this to work, you have to both install Reflex and build PyPy from the -reflex-support branch. +For this to work, you have to both install Reflex and build PyPy from source, +as the cppyy module is not enabled by default. +Note that the development version of cppyy lives in the reflex-support +branch. As indicated by this being a branch, support for Reflex is still experimental. However, it is functional enough to put it in the hands of those who want @@ -71,7 +73,8 @@ .. _`recent snapshot`: http://cern.ch/wlav/reflex-2012-05-02.tar.bz2 .. _`gccxml`: http://www.gccxml.org -Next, get the `PyPy sources`_, select the reflex-support branch, and build. +Next, get the `PyPy sources`_, optionally select the reflex-support branch, +and build it. For the build to succeed, the ``$ROOTSYS`` environment variable must point to the location of your ROOT (or standalone Reflex) installation, or the ``root-config`` utility must be accessible through ``PATH`` (e.g. by adding @@ -82,7 +85,7 @@ $ hg clone https://bitbucket.org/pypy/pypy $ cd pypy - $ hg up reflex-support + $ hg up reflex-support # optional $ cd pypy/translator/goal $ python translate.py -O jit --gcrootfinder=shadowstack targetpypystandalone.py --withmod-cppyy @@ -368,6 +371,11 @@ The C++ side will not see any overridden methods on the python side, as cross-inheritance is planned but not yet supported. +* **memory**: C++ instances created by calling their constructor from python + are owned by python. + You can check/change the ownership with the _python_owns flag that every + bound instance carries. + * **methods**: Are represented as python methods and work as expected. They are first class objects and can be bound to an instance. Virtual C++ methods work as expected. diff --git a/pypy/doc/extending.rst b/pypy/doc/extending.rst --- a/pypy/doc/extending.rst +++ b/pypy/doc/extending.rst @@ -23,7 +23,7 @@ * Write them in RPython as mixedmodule_, using *rffi* as bindings. -* Write them in C++ and bind them through Reflex_ (EXPERIMENTAL) +* Write them in C++ and bind them through Reflex_ .. _ctypes: #CTypes .. _\_ffi: #LibFFI _______________________________________________ pypy-commit mailing list [email protected] http://mail.python.org/mailman/listinfo/pypy-commit
