Move Script* classes to Script namespace

- Rename ScriptEngine, ScriptContext, ScriptInterface, ScriptRequest to
  Script::Engine, Script::Context, Script::Interface, Script::Request
- Remove 'Script' prefix from filenames:
  ScriptContext.* → Context.*
  ScriptInterface.* → Interface.*
  ScriptRequest.* → Request.*
  ScriptEngine.* → Engine.*
  ScriptConversions.* → Conversions.*
  ScriptExceptions.* → Exceptions.*
  ScriptForward.* → ForwardDeclarations.*
  ScriptStats.* → Stats.*
- Update all includes, forward declarations, and friend classes
- Use namespace Script { ... } in .cpp definitions to avoid repetitive
  Script:: prefix (keeping global callbacks outside)
- Rename internal implementation structs:
  ScriptInterface_impl → Interface_impl
  ScriptFunction → Function
- Update copyright year to 2026 in all touched files
- Suppress pre-existing cppcheck warnings (uninitvar, nullPointer, unknown
  macro) by adding them to suppressions-list.txt (these are not caused
  by this refactor)

Fixes #7516
This commit is contained in:
vyordan
2026-06-02 15:06:50 -06:00
committed by phosit
parent 310c4bf028
commit ec8b420abc
220 changed files with 2224 additions and 2153 deletions
+20 -20
View File
@@ -1,4 +1,4 @@
/* Copyright (C) 2025 Wildfire Games.
/* Copyright (C) 2026 Wildfire Games.
* This file is part of 0 A.D.
*
* 0 A.D. is free software: you can redistribute it and/or modify
@@ -26,8 +26,8 @@
#include "scriptinterface/FunctionWrapper.h"
#include "scriptinterface/JSON.h"
#include "scriptinterface/Object.h"
#include "scriptinterface/ScriptConversions.h"
#include "scriptinterface/ScriptRequest.h"
#include "scriptinterface/Conversions.h"
#include "scriptinterface/Request.h"
#include <fmt/format.h>
#include <js/Array.h>
@@ -37,8 +37,8 @@
#include <stdexcept>
#include <vector>
class ScriptInterface;
namespace JS { class CallArgs; }
namespace Script { class Interface; }
extern void RestartEngine();
@@ -46,7 +46,7 @@ extern void RestartEngine();
using ModDataCPtr = const Mod::ModData*;
template<>
void Script::ToJSVal(const ScriptRequest& rq, JS::MutableHandleValue ret, const ModDataCPtr& data)
void Script::ToJSVal(const Script::Request& rq, JS::MutableHandleValue ret, const ModDataCPtr& data)
{
ret.set(Script::CreateObject(rq));
Script::SetProperty(rq, ret, "mod", data->m_Pathname);
@@ -57,7 +57,7 @@ void Script::ToJSVal(const ScriptRequest& rq, JS::MutableHandleValue ret, const
// Required by JSVAL_VECTOR, but can't be implemented.
template<>
bool Script::FromJSVal(const ScriptRequest &, const JS::HandleValue, ModDataCPtr&)
bool Script::FromJSVal(const Script::Request &, const JS::HandleValue, ModDataCPtr&)
{
LOGERROR("Not implemented");
return false;
@@ -67,7 +67,7 @@ JSVAL_VECTOR(const Mod::ModData*);
// Implement FromJSVal as a non-pointer type.
template<>
void Script::ToJSVal(const ScriptRequest& rq, JS::MutableHandleValue ret, const Mod::ModData& data)
void Script::ToJSVal(const Script::Request& rq, JS::MutableHandleValue ret, const Mod::ModData& data)
{
ret.set(Script::CreateObject(rq));
Script::SetProperty(rq, ret, "mod", data.m_Pathname);
@@ -77,7 +77,7 @@ void Script::ToJSVal(const ScriptRequest& rq, JS::MutableHandleValue ret, const
}
template<>
bool Script::FromJSVal(const ScriptRequest& rq, const JS::HandleValue val, Mod::ModData& data)
bool Script::FromJSVal(const Script::Request& rq, const JS::HandleValue val, Mod::ModData& data)
{
// To avoid errors & for convenience, some retro-compatibility when reading
// TODO: remove this once we hit A26.
@@ -119,14 +119,14 @@ JSVAL_VECTOR(Mod::ModData);
namespace JSI_Mod
{
Mod* ModGetter(const ScriptRequest&, JS::CallArgs&)
Mod* ModGetter(const Script::Request&, JS::CallArgs&)
{
return &g_Mods;
}
JS::Value GetEngineInfo(const ScriptInterface& scriptInterface)
JS::Value GetEngineInfo(const Script::Interface& scriptInterface)
{
ScriptRequest rq(scriptInterface);
Script::Request rq(scriptInterface);
JS::RootedValue mods(rq.cx);
Script::ToJSVal(rq, &mods, g_Mods.GetEnabledModsData());
@@ -144,7 +144,7 @@ JS::Value GetEngineInfo(const ScriptInterface& scriptInterface)
return metainfo;
}
JS::Value GetAvailableMods(const ScriptRequest& rq)
JS::Value GetAvailableMods(const Script::Request& rq)
{
JS::RootedValue ret(rq.cx, Script::CreateObject(rq));
for (const Mod::ModData& data : g_Mods.GetAvailableMods())
@@ -186,14 +186,14 @@ bool HasIncompatibleMods()
return g_Mods.GetIncompatibleMods().size() > 0;
}
void RegisterScriptFunctions(const ScriptRequest& rq)
void RegisterScriptFunctions(const Script::Request& rq)
{
ScriptFunction::Register<GetEngineInfo>(rq, "GetEngineInfo");
ScriptFunction::Register<GetAvailableMods>(rq, "GetAvailableMods");
ScriptFunction::Register<&Mod::GetEnabledMods, ModGetter>(rq, "GetEnabledMods");
ScriptFunction::Register<AreModsPlayCompatible>(rq, "AreModsPlayCompatible");
ScriptFunction::Register<HasIncompatibleMods> (rq, "HasIncompatibleMods");
ScriptFunction::Register<&Mod::GetIncompatibleMods, ModGetter>(rq, "GetIncompatibleMods");
ScriptFunction::Register<&SetModsAndRestartEngine>(rq, "SetModsAndRestartEngine");
Script::Function::Register<GetEngineInfo>(rq, "GetEngineInfo");
Script::Function::Register<GetAvailableMods>(rq, "GetAvailableMods");
Script::Function::Register<&Mod::GetEnabledMods, ModGetter>(rq, "GetEnabledMods");
Script::Function::Register<AreModsPlayCompatible>(rq, "AreModsPlayCompatible");
Script::Function::Register<HasIncompatibleMods> (rq, "HasIncompatibleMods");
Script::Function::Register<&Mod::GetIncompatibleMods, ModGetter>(rq, "GetIncompatibleMods");
Script::Function::Register<&SetModsAndRestartEngine>(rq, "SetModsAndRestartEngine");
}
}