aboutsummaryrefslogtreecommitdiff
path: root/src/modules.cpp
diff options
context:
space:
mode:
authorCara Salter <cara@devcara.com>2023-03-30 15:58:57 -0400
committerCara Salter <cara@devcara.com>2023-03-30 15:58:57 -0400
commite63f88aa3f8fe1c0cf8366ee09188a4b18ede166 (patch)
treea5184887a2ad23623bd1cf1c9d545bd9bf3aac4b /src/modules.cpp
parent8233fc4bcffc82907e82b31072cb8129aa200ae5 (diff)
download142bot-e63f88aa3f8fe1c0cf8366ee09188a4b18ede166.tar.gz
142bot-e63f88aa3f8fe1c0cf8366ee09188a4b18ede166.zip
Finish reactions module
Diffstat (limited to 'src/modules.cpp')
-rw-r--r--src/modules.cpp16
1 files changed, 16 insertions, 0 deletions
diff --git a/src/modules.cpp b/src/modules.cpp
index 6a8d500..b2e56e1 100644
--- a/src/modules.cpp
+++ b/src/modules.cpp
@@ -182,6 +182,22 @@ bool ModuleLoader::reload(const std::string &filename)
return (unload(filename) && load(filename));
}
+
+/**
+ * Load all modules from the config file modules.json
+ */
+void ModuleLoader::load_all()
+{
+ json document;
+ std::ifstream configfile("./config.json");
+ configfile >> document;
+ json modlist = document["modules"];
+ for (auto entry = modlist.begin(); entry != modlist.end(); ++entry) {
+ std::string modulename = entry->get<std::string>();
+ this->load(modulename);
+ }
+}
+
/**
* Return a given symbol name from a shared object represented by the ModuleNative value.
*/