diff options
author | Marcelo Lira <marcelo.lira@openbossa.org> | 2009-11-21 21:29:12 -0300 |
---|---|---|
committer | Marcelo Lira <marcelo.lira@openbossa.org> | 2009-11-23 11:48:03 -0300 |
commit | 8560b8437fdc84f16221cabb37397f092f52e087 (patch) | |
tree | e9b4cf66ced0df729f91066723cccf7994bbeb61 /doc | |
parent | 2b8bc79e05b3e6800f6c31e4d66991c288029710 (diff) |
The code injections in the native/beginning position come after the
C++ arguments conversion to a Python argument tuple. The documentation
was updated with this information. The virtual method writer was also
fixed to not convert removed arguments.
Diffstat (limited to 'doc')
-rw-r--r-- | doc/codeinjectionsemantics.rst | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/doc/codeinjectionsemantics.rst b/doc/codeinjectionsemantics.rst index e1891188c..c0d6fa2d7 100644 --- a/doc/codeinjectionsemantics.rst +++ b/doc/codeinjectionsemantics.rst @@ -66,9 +66,10 @@ The following table describes the semantics of ``inject-code`` tag as used on | | | |code here will be executed after all the wrapped class | | | | |components have been initialized. | +---------------+------+---------+--------------------------------------------------------------+ - |modify-function|native|beginning|Code here is put on the beginning of a virtual method | - | | | |override on the C++ wrapper class (the one responsible for | - | | | |passing C++ calls to Python overrides, if there is any). | + |modify-function|native|beginning|Code here is put on the virtual method override of a C++ | + | | | |wrapper class (the one responsible for passing C++ calls to a | + | | | |Python override, if there is any), right after the C++ | + | | | |arguments have been converted but before the Python call. | | | +---------+--------------------------------------------------------------+ | | |end |This code injection goes to the end of a virtual method | | | | |override on the C++ wrapper class, right before the return | @@ -199,8 +200,11 @@ class is polymorphic. if (!method) return this->InjectCode::virtualMethod(arg); + (... here C++ arguments are converted to Python ...) + // INJECT-CODE: <modify-function><inject-code class="native" position="beginning"> - // Uses: pre method call custom code. + // Uses: pre method call custom code, modify the argument before the + // Python call. (... Python method call goes in here ...) |