From e13897ca081f87d94d7b78e337c22f986ed63ae8 Mon Sep 17 00:00:00 2001
From: Arkerthan <arkerthan@gmail.com>
Date: Thu, 20 Feb 2020 18:46:23 +0100
Subject: [PATCH] rename Savable to Serializable

---
 devTools/FC.d.ts                               |  3 ++-
 src/002-config/{Savable.js => Serializable.js} | 16 ++++++++--------
 src/004-base/arcologyBuilding.js               |  2 +-
 src/arcologyBuilding/base.js                   |  4 ++--
 4 files changed, 13 insertions(+), 12 deletions(-)
 rename src/002-config/{Savable.js => Serializable.js} (77%)

diff --git a/devTools/FC.d.ts b/devTools/FC.d.ts
index 2b0ae1d0490..f1186870e85 100644
--- a/devTools/FC.d.ts
+++ b/devTools/FC.d.ts
@@ -27,7 +27,6 @@ declare namespace App {
 	namespace Corporate {}
 
 	namespace Data {
-		class Savable {}
 		namespace Pronouns {
 			class Definition {
 				pronoun: string;
@@ -44,6 +43,8 @@ declare namespace App {
 	namespace Desc {}
 
 	namespace Entity {
+		class Serializable {}
+
 		namespace Utils {}
 	}
 
diff --git a/src/002-config/Savable.js b/src/002-config/Serializable.js
similarity index 77%
rename from src/002-config/Savable.js
rename to src/002-config/Serializable.js
index 8e8d9a27422..16d26dad17d 100644
--- a/src/002-config/Savable.js
+++ b/src/002-config/Serializable.js
@@ -1,18 +1,18 @@
 /**
- * The basic class for all classes that can be saved.
+ * The basic class for all classes that can be saved and loaded, i.e. serialized and deserialized.
  *
  * All subclasses HAVE to implement get className(), _cleanUpConfigScheme() and clone(),
  * in the SAME WAY they are implemented here.
  *
- * @type {App.Data.Savable}
+ * @type {App.Entity.Serializable}
  */
-App.Data.Savable = class {
+App.Entity.Serializable = class {
 	/**
 	 * Returns the name of the class including namespaces
 	 *
 	 * @returns {string}
 	 */
-	get className() { return "App.Data.Savable"; }
+	get className() { return "App.Entity.Serializable"; }
 
 	/**
 	 * Updates saved data in case of changes to the class.
@@ -29,21 +29,21 @@ App.Data.Savable = class {
 	}
 
 	/**
-	 * @returns {App.Data.Savable}
+	 * @returns {App.Entity.Serializable}
 	 */
 	clone() {
-		return (new App.Data.Savable())._init(this);
+		return (new App.Entity.Serializable())._init(this);
 	}
 
 	/**
 	 * @param {object} config
 	 * @param {boolean} clean
-	 * @returns {App.Data.Savable}
+	 * @returns {App.Entity.Serializable}
 	 * @protected
 	 */
 	_init(config, clean = false) {
 		if (clean) {
-			App.Data.Savable._cleanupConfigScheme(config);
+			App.Entity.Serializable._cleanupConfigScheme(config);
 		}
 
 		// Clone the given object's own properties into our own properties.
diff --git a/src/004-base/arcologyBuilding.js b/src/004-base/arcologyBuilding.js
index 7646272569d..c9999c606da 100644
--- a/src/004-base/arcologyBuilding.js
+++ b/src/004-base/arcologyBuilding.js
@@ -1,4 +1,4 @@
-App.Arcology.Cell.BaseCell = class extends App.Data.Savable {
+App.Arcology.Cell.BaseCell = class extends App.Entity.Serializable {
 	/**
 	 * @param {number} owner
 	 */
diff --git a/src/arcologyBuilding/base.js b/src/arcologyBuilding/base.js
index c834e83b617..e0eea3125a9 100644
--- a/src/arcologyBuilding/base.js
+++ b/src/arcologyBuilding/base.js
@@ -62,7 +62,7 @@ App.Arcology.defaultBuilding = function() {
  */
 App.Arcology.sectionOrder = ["penthouse", "spire", "shops", "apartments", "markets", "manufacturing"];
 
-App.Arcology.Section = class extends App.Data.Savable {
+App.Arcology.Section = class extends App.Entity.Serializable {
 	/**
 	 * @param {string} id unique ID
 	 * @param {Array<Array<App.Arcology.Cell.BaseCell>>} rows
@@ -173,7 +173,7 @@ App.Arcology.Section = class extends App.Data.Savable {
 	get className() { return "App.Arcology.Section"; }
 };
 
-App.Arcology.Building = class extends App.Data.Savable {
+App.Arcology.Building = class extends App.Entity.Serializable {
 	/**
 	 * @param {Array<App.Arcology.Section>} sections
 	 */
-- 
GitLab