Skip to content

Refactor LuaDef::LoadFunctions() to use array instead of map for inlining #1453

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 3 commits into from
May 21, 2020
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 3 additions & 5 deletions Client/mods/deathmatch/logic/lua/CLuaManager.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -151,7 +151,7 @@ CLuaMain* CLuaManager::GetVirtualMachine(lua_State* luaVM)

void CLuaManager::LoadCFunctions()
{
std::map<const char*, lua_CFunction> functions{
constexpr static const std::pair<const char*, lua_CFunction> functions[]{
// ** BACKWARDS COMPATIBILITY FUNCS. SHOULD BE REMOVED BEFORE FINAL RELEASE! **
{"getPlayerRotation", CLuaPedDefs::GetPedRotation},
{"canPlayerBeKnockedOffBike", CLuaPedDefs::CanPedBeKnockedOffBike},
Expand Down Expand Up @@ -405,10 +405,8 @@ void CLuaManager::LoadCFunctions()
};

// Add all functions
for (const auto& pair : functions)
{
CLuaCFunctions::AddFunction(pair.first, pair.second);
}
for (const auto& [name, func] : functions)
CLuaCFunctions::AddFunction(name, func);

// Luadef definitions
CLuaAudioDefs::LoadFunctions();
Expand Down
8 changes: 3 additions & 5 deletions Client/mods/deathmatch/logic/luadefs/CLuaAudioDefs.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@

void CLuaAudioDefs::LoadFunctions()
{
std::map<const char*, lua_CFunction> functions{
constexpr static const std::pair<const char*, lua_CFunction> functions[]{
// Audio funcs
{"playSoundFrontEnd", PlaySoundFrontEnd},
{"setAmbientSoundEnabled", SetAmbientSoundEnabled},
Expand Down Expand Up @@ -65,10 +65,8 @@ void CLuaAudioDefs::LoadFunctions()
};

// Add functions
for (const auto& pair : functions)
{
CLuaCFunctions::AddFunction(pair.first, pair.second);
}
for (const auto& [name, func] : functions)
CLuaCFunctions::AddFunction(name, func);
}

void CLuaAudioDefs::AddClass(lua_State* luaVM)
Expand Down
8 changes: 3 additions & 5 deletions Client/mods/deathmatch/logic/luadefs/CLuaBlipDefs.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@

void CLuaBlipDefs::LoadFunctions()
{
std::map<const char*, lua_CFunction> functions{
constexpr static const std::pair<const char*, lua_CFunction> functions[]{
{"createBlip", CreateBlip},
{"createBlipAttachedTo", CreateBlipAttachedTo},
{"getBlipIcon", GetBlipIcon},
Expand All @@ -30,10 +30,8 @@ void CLuaBlipDefs::LoadFunctions()
};

// Add functions
for (const auto& pair : functions)
{
CLuaCFunctions::AddFunction(pair.first, pair.second);
}
for (const auto& [name, func] : functions)
CLuaCFunctions::AddFunction(name, func);
}

void CLuaBlipDefs::AddClass(lua_State* luaVM)
Expand Down
8 changes: 3 additions & 5 deletions Client/mods/deathmatch/logic/luadefs/CLuaBrowserDefs.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@
void CLuaBrowserDefs::LoadFunctions()
{
// Define browser functions
std::map<const char*, lua_CFunction> functions{
constexpr static const std::pair<const char*, lua_CFunction> functions[]{
{"createBrowser", CreateBrowser},
{"requestBrowserDomains", RequestBrowserDomains},
{"loadBrowserURL", LoadBrowserURL},
Expand Down Expand Up @@ -49,10 +49,8 @@ void CLuaBrowserDefs::LoadFunctions()
};

// Add browser functions
for (const auto& pair : functions)
{
CLuaCFunctions::AddFunction(pair.first, pair.second);
}
for (const auto& [name, func] : functions)
CLuaCFunctions::AddFunction(name, func);
}

void CLuaBrowserDefs::AddClass(lua_State* luaVM)
Expand Down
8 changes: 3 additions & 5 deletions Client/mods/deathmatch/logic/luadefs/CLuaCameraDefs.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@

void CLuaCameraDefs::LoadFunctions()
{
std::map<const char*, lua_CFunction> functions{
constexpr static const std::pair<const char*, lua_CFunction> functions[]{
// Cam get funcs
{"getCamera", GetCamera},
{"getCameraViewMode", GetCameraViewMode},
Expand All @@ -39,10 +39,8 @@ void CLuaCameraDefs::LoadFunctions()
};

// Add functions
for (const auto& pair : functions)
{
CLuaCFunctions::AddFunction(pair.first, pair.second);
}
for (const auto& [name, func] : functions)
CLuaCFunctions::AddFunction(name, func);
}

void CLuaCameraDefs::AddClass(lua_State* luaVM)
Expand Down
8 changes: 3 additions & 5 deletions Client/mods/deathmatch/logic/luadefs/CLuaColShapeDefs.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@

void CLuaColShapeDefs::LoadFunctions()
{
std::map<const char*, lua_CFunction> functions{
constexpr static const std::pair<const char*, lua_CFunction> functions[]{
{"createColCircle", CreateColCircle},
{"createColCuboid", CreateColCuboid},
{"createColSphere", CreateColSphere},
Expand All @@ -36,10 +36,8 @@ void CLuaColShapeDefs::LoadFunctions()
};

// Add functions
for (const auto& pair : functions)
{
CLuaCFunctions::AddFunction(pair.first, pair.second);
}
for (const auto& [name, func] : functions)
CLuaCFunctions::AddFunction(name, func);
}

void CLuaColShapeDefs::AddClass(lua_State* luaVM)
Expand Down
8 changes: 3 additions & 5 deletions Client/mods/deathmatch/logic/luadefs/CLuaDrawingDefs.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ extern bool g_bAllowAspectRatioAdjustment;

void CLuaDrawingDefs::LoadFunctions()
{
std::map<const char*, lua_CFunction> functions{
constexpr static const std::pair<const char*, lua_CFunction> functions[]{
{"dxDrawLine", DxDrawLine},
{"dxDrawMaterialLine3D", DxDrawMaterialLine3D},
{"dxDrawMaterialSectionLine3D", DxDrawMaterialSectionLine3D},
Expand Down Expand Up @@ -61,10 +61,8 @@ void CLuaDrawingDefs::LoadFunctions()
};

// Add functions
for (const auto& pair : functions)
{
CLuaCFunctions::AddFunction(pair.first, pair.second);
}
for (const auto& [name, func] : functions)
CLuaCFunctions::AddFunction(name, func);
}

void CLuaDrawingDefs::AddClass(lua_State* luaVM)
Expand Down
8 changes: 3 additions & 5 deletions Client/mods/deathmatch/logic/luadefs/CLuaEffectDefs.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@

void CLuaEffectDefs::LoadFunctions()
{
std::map<const char*, lua_CFunction> functions{
constexpr static const std::pair<const char*, lua_CFunction> functions[]{
{"fxAddBlood", fxAddBlood},
{"fxAddWood", fxAddWood},
{"fxAddSparks", fxAddSparks},
Expand All @@ -36,10 +36,8 @@ void CLuaEffectDefs::LoadFunctions()
};

// Add functions
for (const auto& pair : functions)
{
CLuaCFunctions::AddFunction(pair.first, pair.second);
}
for (const auto& [name, func] : functions)
CLuaCFunctions::AddFunction(name, func);
}

void CLuaEffectDefs::AddClass(lua_State* luaVM)
Expand Down
8 changes: 3 additions & 5 deletions Client/mods/deathmatch/logic/luadefs/CLuaElementDefs.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ using std::list;

void CLuaElementDefs::LoadFunctions()
{
std::map<const char*, lua_CFunction> functions{
constexpr static const std::pair<const char*, lua_CFunction> functions[]{
// Element get funcs
{"getRootElement", GetRootElement},
{"isElement", IsElement},
Expand Down Expand Up @@ -98,10 +98,8 @@ void CLuaElementDefs::LoadFunctions()
};

// Add functions
for (const auto& pair : functions)
{
CLuaCFunctions::AddFunction(pair.first, pair.second);
}
for (const auto& [name, func] : functions)
CLuaCFunctions::AddFunction(name, func);
}

void CLuaElementDefs::AddClass(lua_State* luaVM)
Expand Down
8 changes: 3 additions & 5 deletions Client/mods/deathmatch/logic/luadefs/CLuaEngineDefs.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@

void CLuaEngineDefs::LoadFunctions()
{
std::map<const char*, lua_CFunction> functions{
constexpr static const std::pair<const char*, lua_CFunction> functions[]{
{"engineFreeModel", EngineFreeModel},
{"engineLoadTXD", EngineLoadTXD},
{"engineLoadCOL", EngineLoadCOL},
Expand Down Expand Up @@ -59,10 +59,8 @@ void CLuaEngineDefs::LoadFunctions()
};

// Add functions
for (const auto& pair : functions)
{
CLuaCFunctions::AddFunction(pair.first, pair.second);
}
for (const auto& [name, func] : functions)
CLuaCFunctions::AddFunction(name, func);
}

void CLuaEngineDefs::AddClass(lua_State* luaVM)
Expand Down
8 changes: 3 additions & 5 deletions Client/mods/deathmatch/logic/luadefs/CLuaFireDefs.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -12,16 +12,14 @@

void CLuaFireDefs::LoadFunctions()
{
std::map<const char*, lua_CFunction> functions{
constexpr static const std::pair<const char*, lua_CFunction> functions[]{
{"createFire", CreateFire},
{"extinguishFire", ExtinguishFire},
};

// Add functions
for (const auto& pair : functions)
{
CLuaCFunctions::AddFunction(pair.first, pair.second);
}
for (const auto& [name, func] : functions)
CLuaCFunctions::AddFunction(name, func);
}

int CLuaFireDefs::CreateFire(lua_State* luaVM)
Expand Down
8 changes: 3 additions & 5 deletions Client/mods/deathmatch/logic/luadefs/CLuaGUIDefs.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@ static const SFixedArray<const char*, MAX_CHATBOX_LAYOUT_CVARS> g_chatboxLayoutC

void CLuaGUIDefs::LoadFunctions()
{
std::map<const char*, lua_CFunction> functions{
constexpr static const std::pair<const char*, lua_CFunction> functions[]{
{"guiGetInputEnabled", GUIGetInputEnabled},
{"guiSetInputEnabled", GUISetInputEnabled},
{"guiGetInputMode", GUIGetInputMode},
Expand Down Expand Up @@ -195,10 +195,8 @@ void CLuaGUIDefs::LoadFunctions()
};

// Add functions
for (const auto& pair : functions)
{
CLuaCFunctions::AddFunction(pair.first, pair.second);
}
for (const auto& [name, func] : functions)
CLuaCFunctions::AddFunction(name, func);
}

void CLuaGUIDefs::AddClass(lua_State* luaVM)
Expand Down
8 changes: 3 additions & 5 deletions Client/mods/deathmatch/logic/luadefs/CLuaMarkerDefs.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@

void CLuaMarkerDefs::LoadFunctions()
{
std::map<const char*, lua_CFunction> functions{
constexpr static const std::pair<const char*, lua_CFunction> functions[]{
{"createMarker", CreateMarker},

{"getMarkerCount", GetMarkerCount},
Expand All @@ -31,10 +31,8 @@ void CLuaMarkerDefs::LoadFunctions()
};

// Add functions
for (const auto& pair : functions)
{
CLuaCFunctions::AddFunction(pair.first, pair.second);
}
for (const auto& [name, func] : functions)
CLuaCFunctions::AddFunction(name, func);
}

void CLuaMarkerDefs::AddClass(lua_State* luaVM)
Expand Down
8 changes: 3 additions & 5 deletions Client/mods/deathmatch/logic/luadefs/CLuaObjectDefs.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@

void CLuaObjectDefs::LoadFunctions()
{
std::map<const char*, lua_CFunction> functions{
constexpr static const std::pair<const char*, lua_CFunction> functions[]{
// Object create/destroy funcs
{"createObject", CreateObject},

Expand All @@ -38,10 +38,8 @@ void CLuaObjectDefs::LoadFunctions()
};

// Add functions
for (const auto& pair : functions)
{
CLuaCFunctions::AddFunction(pair.first, pair.second);
}
for (const auto& [name, func] : functions)
CLuaCFunctions::AddFunction(name, func);
}

void CLuaObjectDefs::AddClass(lua_State* luaVM)
Expand Down
8 changes: 3 additions & 5 deletions Client/mods/deathmatch/logic/luadefs/CLuaPedDefs.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@

void CLuaPedDefs::LoadFunctions()
{
std::map<const char*, lua_CFunction> functions{
constexpr static const std::pair<const char*, lua_CFunction> functions[]{
{"createPed", CreatePed},
{"detonateSatchels", DetonateSatchels},
{"killPed", KillPed},
Expand Down Expand Up @@ -92,10 +92,8 @@ void CLuaPedDefs::LoadFunctions()
};

// Add functions
for (const auto& pair : functions)
{
CLuaCFunctions::AddFunction(pair.first, pair.second);
}
for (const auto& [name, func] : functions)
CLuaCFunctions::AddFunction(name, func);
}

void CLuaPedDefs::AddClass(lua_State* luaVM)
Expand Down
8 changes: 3 additions & 5 deletions Client/mods/deathmatch/logic/luadefs/CLuaPickupDefs.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@

void CLuaPickupDefs::LoadFunctions()
{
std::map<const char*, lua_CFunction> functions{
constexpr static const std::pair<const char*, lua_CFunction> functions[]{
{"createPickup", CreatePickup},

{"getPickupType", GetPickupType},
Expand All @@ -25,10 +25,8 @@ void CLuaPickupDefs::LoadFunctions()
};

// Add functions
for (const auto& pair : functions)
{
CLuaCFunctions::AddFunction(pair.first, pair.second);
}
for (const auto& [name, func] : functions)
CLuaCFunctions::AddFunction(name, func);
}

void CLuaPickupDefs::AddClass(lua_State* luaVM)
Expand Down
8 changes: 3 additions & 5 deletions Client/mods/deathmatch/logic/luadefs/CLuaPlayerDefs.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@

void CLuaPlayerDefs::LoadFunctions()
{
std::map<const char*, lua_CFunction> functions{
constexpr static const std::pair<const char*, lua_CFunction> functions[]{
// Player get funcs
{"getLocalPlayer", GetLocalPlayer},
{"getPlayerName", GetPlayerName},
Expand Down Expand Up @@ -50,10 +50,8 @@ void CLuaPlayerDefs::LoadFunctions()
};

// Add functions
for (const auto& pair : functions)
{
CLuaCFunctions::AddFunction(pair.first, pair.second);
}
for (const auto& [name, func] : functions)
CLuaCFunctions::AddFunction(name, func);
}

void CLuaPlayerDefs::AddClass(lua_State* luaVM)
Expand Down
8 changes: 3 additions & 5 deletions Client/mods/deathmatch/logic/luadefs/CLuaPointLightDefs.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@

void CLuaPointLightDefs::LoadFunctions()
{
std::map<const char*, lua_CFunction> functions{
constexpr static const std::pair<const char*, lua_CFunction> functions[]{
{"createLight", CreateLight},
{"getLightType", GetLightType},
{"getLightRadius", GetLightRadius},
Expand All @@ -25,10 +25,8 @@ void CLuaPointLightDefs::LoadFunctions()
};

// Add functions
for (const auto& pair : functions)
{
CLuaCFunctions::AddFunction(pair.first, pair.second);
}
for (const auto& [name, func] : functions)
CLuaCFunctions::AddFunction(name, func);
}

void CLuaPointLightDefs::AddClass(lua_State* luaVM)
Expand Down
Loading