Skip to content

Commit

Permalink
Move inline implementations to main hpp/cpp.
Browse files Browse the repository at this point in the history
  • Loading branch information
nitrocaster committed Dec 6, 2015
1 parent 3ed4224 commit 594a0f3
Show file tree
Hide file tree
Showing 5 changed files with 43 additions and 59 deletions.
31 changes: 31 additions & 0 deletions src/xrScriptEngine/script_engine.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -1167,6 +1167,37 @@ bool CScriptEngine::function_object(LPCSTR function_to_call, luabind::object &ob
return true;
}

void CScriptEngine::add_script_process(const ScriptProcessor &process_id, CScriptProcess *script_process)
{
VERIFY(m_script_processes.find(process_id)==m_script_processes.end());
m_script_processes.insert(std::make_pair(process_id, script_process));
}

CScriptProcess *CScriptEngine::script_process(const ScriptProcessor &process_id) const
{
auto it = m_script_processes.find(process_id);
if (it!=m_script_processes.end())
return it->second;
return nullptr;
}

void CScriptEngine::parse_script_namespace(const char *name, char *ns, u32 nsSize, char *func, u32 funcSize)
{
auto p = strrchr(name, '.');
if (!p)
{
xr_strcpy(ns, nsSize, GlobalNamespace);
p = name-1;
}
else
{
VERIFY(p-name+1<=nsSize);
strncpy(ns, name, p-name);
ns[p-name] = 0;
}
xr_strcpy(func, funcSize, p+1);
}

#if defined(USE_DEBUGGER) && !defined(USE_LUA_STUDIO)
void CScriptEngine::stopDebugger()
{
Expand Down
16 changes: 12 additions & 4 deletions src/xrScriptEngine/script_engine.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -157,16 +157,16 @@ class XRSCRIPTENGINE_API CScriptEngine
#endif
void setup_callbacks();
bool load_file(const char *scriptName, const char *namespaceName);
IC CScriptProcess *script_process(const ScriptProcessor &process_id) const;
IC void add_script_process(const ScriptProcessor &process_id, CScriptProcess *script_process);
CScriptProcess *script_process(const ScriptProcessor &process_id) const;
void add_script_process(const ScriptProcessor &process_id, CScriptProcess *script_process);
void remove_script_process(const ScriptProcessor &process_id);
static int auto_load(lua_State *L);
void setup_auto_load();
bool process_file_if_exists(LPCSTR file_name, bool warn_if_not_exist);
bool process_file(LPCSTR file_name);
bool process_file(LPCSTR file_name, bool reload_modules);
bool function_object(LPCSTR function_to_call, luabind::object &object, int type = LUA_TFUNCTION);
IC void parse_script_namespace(const char *name, char *ns, u32 nsSize, char *func, u32 funcSize);
void parse_script_namespace(const char *name, char *ns, u32 nsSize, char *func, u32 funcSize);
template<typename TResult>
IC bool functor(LPCSTR function_to_call, luabind::functor<TResult> &lua_function);
#ifdef USE_DEBUGGER
Expand All @@ -193,4 +193,12 @@ class XRSCRIPTENGINE_API CScriptEngine
void DestroyScriptThread(const CScriptThread *thread);
};

#include "script_engine_inline.hpp"
template<typename TResult>
IC bool CScriptEngine::functor(LPCSTR function_to_call, luabind::functor<TResult> &lua_function)
{
luabind::object object;
if (!function_object(function_to_call, object))
return false;
lua_function = object;
return true;
}
51 changes: 0 additions & 51 deletions src/xrScriptEngine/script_engine_inline.hpp

This file was deleted.

1 change: 0 additions & 1 deletion src/xrScriptEngine/xrScriptEngine.vcxproj
Original file line number Diff line number Diff line change
Expand Up @@ -240,7 +240,6 @@
<ClInclude Include="script_debugger_messages.hpp" />
<ClInclude Include="script_debugger_threads.hpp" />
<ClInclude Include="script_engine.hpp" />
<ClInclude Include="script_engine_inline.hpp" />
<ClInclude Include="script_lua_helper.hpp" />
<ClInclude Include="script_process.hpp" />
<ClInclude Include="script_space_forward.hpp" />
Expand Down
3 changes: 0 additions & 3 deletions src/xrScriptEngine/xrScriptEngine.vcxproj.filters
Original file line number Diff line number Diff line change
Expand Up @@ -57,9 +57,6 @@
<ClInclude Include="script_engine.hpp">
<Filter>Engine</Filter>
</ClInclude>
<ClInclude Include="script_engine_inline.hpp">
<Filter>Engine</Filter>
</ClInclude>
<ClInclude Include="script_space_forward.hpp">
<Filter>Engine</Filter>
</ClInclude>
Expand Down

0 comments on commit 594a0f3

Please sign in to comment.