From ea9af87ba4399d094180f06be59c878d864a17e0 Mon Sep 17 00:00:00 2001
From: Ferenc Szontágh <szf@fsociety.hu>
Date: Sat, 19 Apr 2025 17:06:48 +0000
Subject: [PATCH] implemented array, added some new builtin functions
---
src/VoidScript.hpp | 26 ++++++++++++++++++--------
1 files changed, 18 insertions(+), 8 deletions(-)
diff --git a/src/VoidScript.hpp b/src/VoidScript.hpp
index 077cd50..ab472bb 100644
--- a/src/VoidScript.hpp
+++ b/src/VoidScript.hpp
@@ -6,12 +6,18 @@
#include "Interpreter/Interpreter.hpp"
#include "Lexer/Lexer.hpp"
+#include "Modules/BuiltIn/PrintModule.hpp"
#include "Modules/ModuleManager.hpp"
-#include "Modules/PrintNlModule.hpp"
-#include "Modules/PrintModule.hpp"
-#include "Modules/TypeofModule.hpp"
-#include "Modules/FileModule.hpp"
-#include "Modules/JsonModule.hpp"
+// Variable helper functions (typeof)
+#include "Modules/BuiltIn/VariableHelpersModule.hpp"
+// String helper functions
+#include "Modules/BuiltIn/StringModule.hpp"
+// Array helper functions (sizeof)
+#include "Modules/BuiltIn/ArrayModule.hpp"
+// File I/O
+#include "Modules/BuiltIn/FileModule.hpp"
+// JSON encode/decode
+#include "Modules/BuiltIn/JsonModule.hpp"
#include "Parser/Parser.hpp"
class VoidScript {
@@ -55,10 +61,14 @@
lexer(std::make_shared<Lexer::Lexer>()),
parser(std::make_shared<Parser::Parser>()) {
// Register built-in modules (print, etc.)
+ // print functions
Modules::ModuleManager::instance().addModule(std::make_unique<Modules::PrintModule>());
- Modules::ModuleManager::instance().addModule(std::make_unique<Modules::PrintNlModule>());
- // typeof() builtin
- Modules::ModuleManager::instance().addModule(std::make_unique<Modules::TypeofModule>());
+ // variable helpers (typeof)
+ Modules::ModuleManager::instance().addModule(std::make_unique<Modules::VariableHelpersModule>());
+ // string helper functions
+ Modules::ModuleManager::instance().addModule(std::make_unique<Modules::StringModule>());
+ // array helper functions (sizeof)
+ Modules::ModuleManager::instance().addModule(std::make_unique<Modules::ArrayModule>());
// file I/O builtin
Modules::ModuleManager::instance().addModule(std::make_unique<Modules::FileModule>());
// JSON encode/decode builtin
--
Gitblit v1.9.3