diff options
author | Benoit Germain <bnt.germain@gmail.com> | 2011-02-17 07:52:53 +0100 |
---|---|---|
committer | Benoit Germain <bnt.germain@gmail.com> | 2011-02-17 07:52:53 +0100 |
commit | ab233d0c9a1edc34836e2249c1eb6d714f1066b5 (patch) | |
tree | a91078b0ca240f870f5f15c2930bc0719a86c9d1 /docs | |
parent | afb2da4789cdaddc5a0c3c9c2d57ccd36bcc74c7 (diff) | |
download | lanes-ab233d0c9a1edc34836e2249c1eb6d714f1066b5.tar.gz lanes-ab233d0c9a1edc34836e2249c1eb6d714f1066b5.tar.bz2 lanes-ab233d0c9a1edc34836e2249c1eb6d714f1066b5.zip |
Lane userdata implementation refactoring:
- Refactor lane proxy implementation: it is now a full userdata instead
of a table, and its methods are implemented in C instead of Lua.
* its metatable is no longer accessible.
* writing to the proxy raises an error.
* it is no longer possible to overwrite its join() and cancel() methods
- when a deep userdata idfunc requests a module to be required, manually
check that it is not loaded before requiring it instead of relying on
the require function's loop detection feature.
- when a module must be required, raise an error if the 'require' function
is not found in the target state.
- we know Lanes is loaded in the master state, so we don't force it
to be required in every lane too when a linda deep userdata is copied.
Diffstat (limited to 'docs')
-rw-r--r-- | docs/index.html | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/docs/index.html b/docs/index.html index 9d66510..03c91f7 100644 --- a/docs/index.html +++ b/docs/index.html | |||
@@ -804,8 +804,8 @@ and for making metatables for the state-specific proxies for accessing it. | |||
804 | Take a look at <tt>linda_id</tt> in <tt>lanes.c</tt>. | 804 | Take a look at <tt>linda_id</tt> in <tt>lanes.c</tt>. |
805 | </li> | 805 | </li> |
806 | <li>Instanciate your userdata using <tt>luaG_deep_userdata()</tt>, | 806 | <li>Instanciate your userdata using <tt>luaG_deep_userdata()</tt>, |
807 | instead of the regular <tt>lua_newuserdata()</tt>. | 807 | instead of the regular <tt>lua_newuserdata()</tt>. |
808 | Given an <tt>idfunc</tt>, it sets up the support | 808 | Given an <tt>idfunc</tt>, it sets up the support |
809 | structures and returns a state-specific proxy userdata for accessing your | 809 | structures and returns a state-specific proxy userdata for accessing your |
810 | data. This proxy can also be copied over to other lanes. | 810 | data. This proxy can also be copied over to other lanes. |
811 | </li> | 811 | </li> |