2023-07-15 14:29:14 +02:00
|
|
|
#pragma once
|
|
|
|
|
|
|
|
#include <loaders/loader.hpp>
|
|
|
|
|
|
|
|
#include <wolv/io/fs.hpp>
|
|
|
|
|
|
|
|
#include <functional>
|
|
|
|
|
|
|
|
namespace hex::script::loader {
|
|
|
|
|
|
|
|
class DotNetLoader : public ScriptLoader {
|
|
|
|
public:
|
2024-05-17 21:01:35 +02:00
|
|
|
DotNetLoader() : ScriptLoader(".NET") {}
|
2023-07-15 14:29:14 +02:00
|
|
|
~DotNetLoader() override = default;
|
|
|
|
|
|
|
|
bool initialize() override;
|
|
|
|
bool loadAll() override;
|
|
|
|
|
|
|
|
private:
|
2024-03-10 22:05:26 +01:00
|
|
|
std::function<int(const std::string &, bool, const std::fs::path&)> m_runMethod;
|
|
|
|
std::function<bool(const std::string &, const std::fs::path&)> m_methodExists;
|
2023-09-08 22:00:15 +02:00
|
|
|
std::fs::path::string_type m_assemblyLoaderPathString;
|
2023-07-15 14:29:14 +02:00
|
|
|
};
|
|
|
|
|
|
|
|
}
|