From: Jeroen D. <jer...@gm...> - 2009-09-02 15:06:35
|
Hi, We recently started converting our LUA bindings from luabind to SWIG. It works quite well, but even after skimming through all documentation, forums and mailing lists I could find, I still have a couple of questions: - with luabind, we could create a LUA property (object.myvariable = ...) using a get and set function. Is that possible with SWIG? It is not that common to use get/set functions in high-level scripting languages. - When including headers in a .i file, I have to enable -includeall (right?). What I would want is including a header in my .i file, but not including the headers included from that header. I know I could solve this by adding #ifdef SWIG blocks in my headers, but I don't want to include such clutter. Script bindings are a layer on top of the native code, and I want it to stay that way. Does SWIG have support for such "one-level-deep" includes? - I am using a std::map<std::string, std::string> typedef in our plugin system to provide starting plugins with settings. I included "stl_map.i" and used the correct %template code in my interface file, but only after actually looking at stl_map.i I knew that I had to use "mySettings:set(key, value)" in stead of "mySettings[key] = value". Is that documented somewhere? It works perfectly now though. - Is using a module obligated? I would want to use "PluginManager:someFunction" in stead of "plugin.PluginManager:someFunction". Most of our bindings will be in the same module, and it would make sense to expose them to lua in the global table (they are all classes anyway). Greetings, JeDi |