From 729c9cb217255ff4564cd86a63c178f01f7e965b Mon Sep 17 00:00:00 2001 From: Netkas Date: Mon, 28 Aug 2023 18:27:09 -0400 Subject: [PATCH] - Added a new interface class `SerializableObjectInterface` to implement serializable objects, `BytecodeObjectInterface` extends this interface to allow for serialization of compiled assets - Updated class `\ncc\Objects\ComposerJson > Author` to use method calls rather than direct property access and implemented `SerializableObjectInterface` - Updated class `\ncc\Objects\ComposerJson > Autoloader` to use method calls rather than direct property access and implemented `SerializableObjectInterface` - Updated class `\ncc\Objects\ComposerJson > Funding` to use method calls rather than direct property access and implemented `SerializableObjectInterface` - Updated class `\ncc\Objects\ComposerJson > NamespacePointer` to use method calls rather than direct property access and implemented `SerializableObjectInterface` - Updated class `\ncc\Objects\ComposerJson > PackageLink` to use method calls rather than direct property access and implemented `SerializableObjectInterface` - Updated class `\ncc\Objects\ComposerJson > Suggestion` to use method calls rather than direct property access and implemented `SerializableObjectInterface` - Updated class `\ncc\Objects\ComposerJson > Support` to use method calls rather than direct property access and implemented `SerializableObjectInterface` - Updated class `\ncc\Objects\ExecutionPointers > ExecutionPointer` to use method calls rather than direct property access and implemented `BytecodeObjectInterface` - Updated class `\ncc\Objects\NccVersionInformation > Component` to use method calls rather than direct property access and implemented `SerializableObjectInterface` - Updated class `\ncc\Objects\Package > Component` to use method calls rather than direct property access and implemented `BytecodeObjectInterface` - Updated class `\ncc\Objects\Package > ExecutionUnit` to use method calls rather than direct property access and implemented `BytecodeObjectInterface` - Updated class `\ncc\Objects\Package > Header` to use method calls rather than direct property access and implemented `BytecodeObjectInterface` - Updated class `\ncc\Objects\Package > Installer` to use method calls rather than direct property access and implemented `BytecodeObjectInterface` - Updated class `\ncc\Objects\Package > MagicBytes` to use method calls rather than direct property access and implemented `SerializableObjectInterface` - Updated class `\ncc\Objects\Package > Resource` to use method calls rather than direct property access and implemented `BytecodeObjectInterface` - Updated class `\ncc\Objects\PackageLock > DependencyEntry` to use method calls rather than direct property access and implemented `BytecodeObjectInterface` - Updated class `\ncc\Objects\PackageLock > PackageEntry` to use method calls rather than direct property access and implemented `BytecodeObjectInterface` - Updated class `\ncc\Objects\PackageLock > VersionEntry` to use method calls rather than direct property access and implemented `BytecodeObjectInterface` --- .idea/inspectionProfiles/Project_Default.xml | 1 + CHANGELOG.md | 38 ++++ src/installer/installer | 2 +- src/ncc/CLI/Commands/ExecCommand.php | 4 +- src/ncc/CLI/Management/PackageManagerMenu.php | 16 +- src/ncc/Classes/BashExtension/BashRunner.php | 4 +- .../ComposerSourceBuiltin.php | 38 ++-- src/ncc/Classes/LuaExtension/LuaRunner.php | 4 +- .../Classes/NccExtension/PackageCompiler.php | 44 ++-- src/ncc/Classes/NccExtension/Runner.php | 2 +- src/ncc/Classes/PerlExtension/PerlRunner.php | 4 +- src/ncc/Classes/PhpExtension/PhpCompiler.php | 78 ++++--- src/ncc/Classes/PhpExtension/PhpInstaller.php | 20 +- src/ncc/Classes/PhpExtension/PhpRunner.php | 4 +- .../Classes/PythonExtension/Python2Runner.php | 4 +- .../Classes/PythonExtension/Python3Runner.php | 4 +- .../Classes/PythonExtension/PythonRunner.php | 4 +- .../Interfaces/BytecodeObjectInterface.php | 2 +- .../SerializableObjectInterface.php | 41 ++++ src/ncc/Managers/ExecutionPointerManager.php | 90 ++++---- src/ncc/Managers/PackageManager.php | 92 ++++---- src/ncc/Objects/ComposerJson.php | 12 +- src/ncc/Objects/ComposerJson/Author.php | 119 ++++++---- src/ncc/Objects/ComposerJson/Autoloader.php | 119 ++++++---- src/ncc/Objects/ComposerJson/Funding.php | 92 +++++--- .../Objects/ComposerJson/NamespacePointer.php | 96 ++++---- src/ncc/Objects/ComposerJson/PackageLink.php | 33 ++- src/ncc/Objects/ComposerJson/Suggestion.php | 84 ++++--- src/ncc/Objects/ComposerJson/Support.php | 105 +++++++-- src/ncc/Objects/ExecutionPointers.php | 8 +- .../ExecutionPointers/ExecutionPointer.php | 77 ++++--- .../NccVersionInformation/Component.php | 23 +- src/ncc/Objects/Package.php | 40 ++-- src/ncc/Objects/Package/Component.php | 136 ++++++++++-- src/ncc/Objects/Package/ExecutionUnit.php | 142 +++++++----- src/ncc/Objects/Package/Header.php | 170 ++++++++++++--- src/ncc/Objects/Package/Installer.php | 199 ++++++++++++----- src/ncc/Objects/Package/MagicBytes.php | 206 +++++++++++++----- src/ncc/Objects/Package/Resource.php | 138 ++++++++---- src/ncc/Objects/PackageLock.php | 10 +- .../Objects/PackageLock/DependencyEntry.php | 106 +++++---- src/ncc/Objects/PackageLock/PackageEntry.php | 116 ++++++---- src/ncc/Objects/PackageLock/VersionEntry.php | 192 ++++++++++++---- src/ncc/Runtime.php | 10 +- 44 files changed, 1845 insertions(+), 884 deletions(-) create mode 100644 src/ncc/Interfaces/SerializableObjectInterface.php diff --git a/.idea/inspectionProfiles/Project_Default.xml b/.idea/inspectionProfiles/Project_Default.xml index 56030f7..fc9d4b9 100644 --- a/.idea/inspectionProfiles/Project_Default.xml +++ b/.idea/inspectionProfiles/Project_Default.xml @@ -1,6 +1,7 @@