3#include "mc/_HeaderOutputPredefine.h"
6#include "mc/deps/scripting/binding_factory/IModuleBindingFactory.h"
14namespace Scripting {
struct Version; }
15namespace mce {
class UUID; }
41 ModuleData& operator=(ModuleData
const&);
52 ::std::function<::std::optional<::Scripting::ModuleBinding>(
54 ::std::optional<::Scripting::ContextConfig>
const&
55 )>&& _moduleCreatorFn,
56 ::std::vector<::Scripting::ModuleDependency>&& _dependencies,
57 bool _importRestricted
71 ::std::function<::std::optional<::Scripting::ModuleBinding>(
73 ::std::optional<::Scripting::ContextConfig>
const&
74 )>&& _moduleCreatorFn,
75 ::std::vector<::Scripting::ModuleDependency>&& _dependencies,
76 bool _importRestricted
97 GenericModuleBindingFactory& operator=(GenericModuleBindingFactory
const&);
98 GenericModuleBindingFactory(GenericModuleBindingFactory
const&);
99 GenericModuleBindingFactory();
104 virtual ~GenericModuleBindingFactory() ;
106 virtual ::std::string getName() const ;
108 virtual ::mce::UUID getUUID() const ;
110 virtual
bool hasAlias(::
std::
string const& alias) const ;
112 virtual ::
std::vector<::Scripting::
Version> getSupportedVersions() const ;
120 bool requireDynamicImport
127 MCNAPI GenericModuleBindingFactory(::
std::
string moduleName, ::mce::UUID moduleUUID);
131 ::Scripting::
Version runtimeVersion
140 ::Scripting::
Version runtimeVersion,
142 bool importRestricted
152 ::Scripting::
Version runtimeVersion,
154 bool importRestricted
161 MCNAPI
void*
$ctor(::
std::
string moduleName, ::mce::UUID moduleUUID);
186 bool requireDynamicImport
MCAPI void addVersionedModuleBinding(::Scripting::Version version, ::std::function<::std::optional<::Scripting::ModuleBinding >(::Scripting::ModuleBindingBuilder &, ::std::optional<::Scripting::ContextConfig > const &)> moduleCreatorFn, ::Scripting::Version runtimeVersion, ::std::vector<::Scripting::ModuleDependency > dependencies, bool importRestricted)
MCAPI ::std::optional<::Scripting::ModuleBinding > $createModuleBinding(::Scripting::Version version, ::std::optional<::Scripting::ContextConfig > const &config, bool requireDynamicImport)
MCAPI::mce::UUID $getUUID() const
MCAPI ::std::vector<::Scripting::Version > $getSupportedVersions() const
static MCAPI void ** $vftable()
MCAPI bool $hasAlias(::std::string const &alias) const
MCAPI::std::string $getName() const
MCAPI void * $ctor(::std::string moduleName, ::mce::UUID moduleUUID)
MCAPI void _addRuntimeDependency(::std::vector<::Scripting::ModuleDependency > &dependencies, ::Scripting::Version runtimeVersion)
MCAPI ::std::vector<::Scripting::ModuleDependency > $getDependencies(::Scripting::Version version) const
Definition IModuleBindingFactory.h:16
Definition ModuleBindingBuilder.h:31
Definition ContextConfig.h:20
Definition GenericModuleBindingFactory.h:28
MCAPI void * $ctor(::Scripting::GenericModuleBindingFactory::ModuleData const &)
MCAPI ModuleData(::std::string _alias, ::Scripting::Version &&_version, ::std::function<::std::optional<::Scripting::ModuleBinding >(::Scripting::ModuleBindingBuilder &, ::std::optional<::Scripting::ContextConfig > const &)> &&_moduleCreatorFn, ::std::vector<::Scripting::ModuleDependency > &&_dependencies, bool _importRestricted)
MCAPI void * $ctor(::std::string _alias, ::Scripting::Version &&_version, ::std::function<::std::optional<::Scripting::ModuleBinding >(::Scripting::ModuleBindingBuilder &, ::std::optional<::Scripting::ContextConfig > const &)> &&_moduleCreatorFn, ::std::vector<::Scripting::ModuleDependency > &&_dependencies, bool _importRestricted)
MCAPI ModuleData(::Scripting::GenericModuleBindingFactory::ModuleData const &)
Definition ModuleBinding.h:23
Definition ModuleDependency.h:14