From: John L. <jr...@us...> - 2007-12-10 05:39:42
|
Update of /cvsroot/wxlua/wxLua/bindings In directory sc8-pr-cvs9.sourceforge.net:/tmp/cvs-serv23281/wxLua/bindings Modified Files: genwxbind.lua Log Message: genwxbind.lua - don't create "returns" variable before use to save a line of code. Applied Lua patches for 5.1.2 8-11 Added wxlua_lreg_createtable(..) to create the LUA_REGISTRYINDEX tables for wxLua Added wxlua_lreg_regtable_key in LUA_REGISTRYINDEX to help the wxLuaDebugData find wxLua's tables faster to give more information Index: genwxbind.lua =================================================================== RCS file: /cvsroot/wxlua/wxLua/bindings/genwxbind.lua,v retrieving revision 1.152 retrieving revision 1.153 diff -C2 -d -r1.152 -r1.153 *** genwxbind.lua 7 Dec 2007 06:44:41 -0000 1.152 --- genwxbind.lua 10 Dec 2007 05:39:04 -0000 1.153 *************** *** 3490,3494 **** memberCast = origMemberTypeWithAttrib else ! memberTypeWithAttrib = memberTypeWithAttrib.." "..returnPtr end --- 3490,3494 ---- memberCast = origMemberTypeWithAttrib else ! memberTypeWithAttrib = memberTypeWithAttrib..returnPtr end *************** *** 3498,3506 **** end ! if memberTypeWithAttrib == "voidptr_long " then memberTypeWithAttrib = "long " end - - table.insert(codeList, " "..memberTypeWithAttrib.."returns;\n") end --- 3498,3504 ---- end ! if string.find("voidptr_long", memberTypeWithAttrib, 1, 1) then memberTypeWithAttrib = "long " end end *************** *** 3554,3558 **** if member.IsConstructor then CommentBindingTable(codeList, " // call constructor\n") ! table.insert(codeList, " returns = new "..parseObject.Name.."("..argList..");\n") if parseObject["%gc_this"] or (parseObject["%delete"] and (not parseObject["%ungc_this"])) then --- 3552,3556 ---- if member.IsConstructor then CommentBindingTable(codeList, " // call constructor\n") ! table.insert(codeList, " "..memberTypeWithAttrib.." returns = new "..parseObject.Name.."("..argList..");\n") if parseObject["%gc_this"] or (parseObject["%delete"] and (not parseObject["%ungc_this"])) then *************** *** 3642,3650 **** -- call function, get return value if member["%operator"] and origMemberPtr and string.find(origMemberPtr, "&", 1, 1) then ! table.insert(codeList, " returns = self;\n") table.insert(codeList, " *returns = ("..functor..");\n") elseif (not numeric) and (not memberPtr) then CommentBindingTable(codeList, " // allocate a new object using the copy constructor\n") ! table.insert(codeList, " returns = new "..memberType.."("..functor..");\n") CommentBindingTable(codeList, " // add the new object to the tracked memory list\n") --- 3640,3648 ---- -- call function, get return value if member["%operator"] and origMemberPtr and string.find(origMemberPtr, "&", 1, 1) then ! table.insert(codeList, " "..memberTypeWithAttrib.." returns = self;\n") table.insert(codeList, " *returns = ("..functor..");\n") elseif (not numeric) and (not memberPtr) then CommentBindingTable(codeList, " // allocate a new object using the copy constructor\n") ! table.insert(codeList, " "..memberTypeWithAttrib.." returns = new "..memberType.."("..functor..");\n") CommentBindingTable(codeList, " // add the new object to the tracked memory list\n") *************** *** 3662,3668 **** elseif (not member["%operator"]) and (memberPtr == "&") and (memberType ~= "wxString") then ! table.insert(codeList, " returns = &"..functor..";\n") elseif (memberPtr == "*") or (memberType == "voidptr_long") then ! table.insert(codeList, " returns = ("..memberTypeWithAttrib..")"..functor..";\n") if member.GC then --- 3660,3666 ---- elseif (not member["%operator"]) and (memberPtr == "&") and (memberType ~= "wxString") then ! table.insert(codeList, " "..memberTypeWithAttrib.." returns = &"..functor..";\n") elseif (memberPtr == "*") or (memberType == "voidptr_long") then ! table.insert(codeList, " "..memberTypeWithAttrib.." returns = ("..memberTypeWithAttrib..")"..functor..";\n") if member.GC then *************** *** 3677,3681 **** else ! table.insert(codeList, " returns = ("..functor..");\n") end --- 3675,3679 ---- else ! table.insert(codeList, " "..memberTypeWithAttrib.." returns = ("..functor..");\n") end *************** *** 4070,4073 **** --- 4068,4082 ---- table.insert(fileData, "\n") + table.insert(fileData, "// ---------------------------------------------------------------------------\n") + table.insert(fileData, "// Functions to access wxLuaBindXXX structs\n") + table.insert(fileData, "// ---------------------------------------------------------------------------\n\n") + + table.insert(fileData, "extern wxLuaBindClass *"..hook_cpp_class_funcname.."(size_t &count);\n") + table.insert(fileData, "extern wxLuaBindDefine *"..hook_cpp_define_funcname.."(size_t &count);\n") + table.insert(fileData, "extern wxLuaBindString *"..hook_cpp_string_funcname.."(size_t &count);\n") + table.insert(fileData, "extern wxLuaBindEvent *"..hook_cpp_event_funcname.."(size_t &count);\n") + table.insert(fileData, "extern wxLuaBindObject *"..hook_cpp_object_funcname.."(size_t &count);\n") + table.insert(fileData, "extern wxLuaBindMethod *"..hook_cpp_function_funcname.."(size_t &count);\n\n") + -- ------------------------------------------------------------------------ -- Class Tag Declaration - sorted by condition for the C++ compiler *************** *** 4103,4107 **** end ! table.insert(fileData, "\n\n") -- ------------------------------------------------------------------------ --- 4112,4116 ---- end ! table.insert(fileData, "\n") -- ------------------------------------------------------------------------ *************** *** 4202,4208 **** table.insert(fileData, " count = sizeof(classList)/sizeof(wxLuaBindClass) - 1;\n\n") table.insert(fileData, " return classList;\n") ! table.insert(fileData, "}\n") ! ! table.insert(fileData, "\n\n") table.insert(fileData, "// ---------------------------------------------------------------------------\n") --- 4211,4215 ---- table.insert(fileData, " count = sizeof(classList)/sizeof(wxLuaBindClass) - 1;\n\n") table.insert(fileData, " return classList;\n") ! table.insert(fileData, "}\n\n") table.insert(fileData, "// ---------------------------------------------------------------------------\n") *************** *** 4214,4227 **** end ! table.insert(fileData, "// binding class\n") ! table.insert(fileData, "extern wxLuaBindClass *"..hook_cpp_class_funcname.."(size_t &count);\n") ! table.insert(fileData, "extern wxLuaBindDefine *"..hook_cpp_define_funcname.."(size_t &count);\n") ! table.insert(fileData, "extern wxLuaBindString *"..hook_cpp_string_funcname.."(size_t &count);\n") ! table.insert(fileData, "extern wxLuaBindEvent *"..hook_cpp_event_funcname.."(size_t &count);\n") ! table.insert(fileData, "extern wxLuaBindObject *"..hook_cpp_object_funcname.."(size_t &count);\n") ! table.insert(fileData, "extern wxLuaBindMethod *"..hook_cpp_function_funcname.."(size_t &count);\n") ! table.insert(fileData, "\n\n") ! table.insert(fileData, "IMPLEMENT_DYNAMIC_CLASS("..hook_cpp_binding_classname..", wxLuaBinding)\n") ! table.insert(fileData, "\n") table.insert(fileData, ""..hook_cpp_binding_classname.."::"..hook_cpp_binding_classname.."() : wxLuaBinding()\n") table.insert(fileData, "{\n") --- 4221,4225 ---- end ! table.insert(fileData, "IMPLEMENT_DYNAMIC_CLASS("..hook_cpp_binding_classname..", wxLuaBinding)\n\n") table.insert(fileData, ""..hook_cpp_binding_classname.."::"..hook_cpp_binding_classname.."() : wxLuaBinding()\n") table.insert(fileData, "{\n") *************** *** 4235,4240 **** table.insert(fileData, " m_functionArray = "..hook_cpp_function_funcname.."(m_functionCount);\n") table.insert(fileData, " InitBinding();\n") ! table.insert(fileData, "}\n") ! table.insert(fileData, "\n") -- load preregister fn from rules file --- 4233,4237 ---- table.insert(fileData, " m_functionArray = "..hook_cpp_function_funcname.."(m_functionCount);\n") table.insert(fileData, " InitBinding();\n") ! table.insert(fileData, "}\n\n") -- load preregister fn from rules file *************** *** 4255,4263 **** table.insert(fileData, "{\n") table.insert(fileData, wxLuaBinding_PostRegister or "") ! table.insert(fileData, "}\n") ! table.insert(fileData, "\n\n") - table.insert(fileData, "// bind "..hook_cpp_binding_classname.." to a single wxLuaState\n") table.insert(fileData, "bool "..hook_cpp_binding_classname.."_bind(const wxLuaState& wxlState_)\n") table.insert(fileData, "{\n") --- 4252,4259 ---- table.insert(fileData, "{\n") table.insert(fileData, wxLuaBinding_PostRegister or "") ! table.insert(fileData, "}\n\n") ! table.insert(fileData, "// ---------------------------------------------------------------------------\n\n") table.insert(fileData, "bool "..hook_cpp_binding_classname.."_bind(const wxLuaState& wxlState_)\n") table.insert(fileData, "{\n") *************** *** 4275,4281 **** table.insert(fileData, "\n") table.insert(fileData, " return true;\n") ! table.insert(fileData, "}\n") - table.insert(fileData, "// initialize "..hook_cpp_binding_classname.." for all wxLuaStates\n") table.insert(fileData, "bool "..hook_cpp_binding_classname.."_init()\n") table.insert(fileData, "{\n") --- 4271,4276 ---- table.insert(fileData, "\n") table.insert(fileData, " return true;\n") ! table.insert(fileData, "}\n\n") table.insert(fileData, "bool "..hook_cpp_binding_classname.."_init()\n") table.insert(fileData, "{\n") |