From ab233d0c9a1edc34836e2249c1eb6d714f1066b5 Mon Sep 17 00:00:00 2001 From: Benoit Germain Date: Thu, 17 Feb 2011 07:52:53 +0100 Subject: 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. --- docs/index.html | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'docs') 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. Take a look at linda_id in lanes.c.
  • Instanciate your userdata using luaG_deep_userdata(), - instead of the regular lua_newuserdata(). - Given an idfunc, it sets up the support + instead of the regular lua_newuserdata(). + Given an idfunc, it sets up the support structures and returns a state-specific proxy userdata for accessing your data. This proxy can also be copied over to other lanes.
  • -- cgit v1.2.3-55-g6feb