LeviLamina
Loading...
Searching...
No Matches
DependencyResolver.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated forward declare list
6// clang-format off
7namespace Scripting { class IModuleBindingFactory; }
8namespace Scripting { struct ModuleDescriptor; }
9namespace Scripting { struct ModuleResolveResult; }
10namespace Scripting { struct SupportedBindingModule; }
11namespace Scripting { struct UUID; }
12namespace Scripting { struct Version; }
13namespace Scripting { struct VersionRequestKey; }
14namespace Scripting { struct VersionRequestedBy; }
15// clang-format on
16
17namespace Scripting {
18
20public:
21 // member variables
22 // NOLINTBEGIN
25 // NOLINTEND
26
27public:
28 // prevent constructor by default
29 DependencyResolver& operator=(DependencyResolver const&);
32
33public:
34 // member functions
35 // NOLINTBEGIN
36 MCNAPI ::std::unordered_map<::Scripting::VersionRequestKey, ::std::vector<::Scripting::VersionRequestedBy>>
38 ::Scripting::ModuleDescriptor const& forModule,
39 ::std::vector<::Scripting::ModuleDescriptor> const& dependencies
40 ) const;
41
42 MCNAPI ::Scripting::IModuleBindingFactory* _getModuleBindingFactory(::Scripting::UUID const& uuid) const;
43
44 MCNAPI bool _isVersionMissing(
45 ::Scripting::IModuleBindingFactory const& moduleFactory,
46 ::Scripting::Version const& version
47 ) const;
48
50 ::Scripting::IModuleBindingFactory const& moduleFactory,
51 ::Scripting::Version const& version
52 ) const;
53
54 MCNAPI ::std::vector<::Scripting::ModuleDescriptor>
55 _orderModulesByDependency(::std::vector<::Scripting::SupportedBindingModule>&& unorderedModules) const;
56
57 MCNAPI ::Scripting::ModuleResolveResult _resolveDependencyRequests(
58 ::std::unordered_map<::Scripting::VersionRequestKey, ::std::vector<::Scripting::VersionRequestedBy>> const&
59 versionRequestTable
60 ) const;
61 // NOLINTEND
62};
63
64} // namespace Scripting
Definition DependencyResolver.h:19
MCAPI bool _isVersionMissing(::Scripting::IModuleBindingFactory const &moduleFactory, ::Scripting::Version const &version) const
MCAPI ::std::unordered_map<::Scripting::VersionRequestKey, ::std::vector<::Scripting::VersionRequestedBy > > _buildVersionRequestTable(::Scripting::ModuleDescriptor const &forModule, ::std::vector<::Scripting::ModuleDescriptor > const &dependencies) const
MCAPI::Scripting::ModuleResolveResult _resolveDependencyRequests(::std::unordered_map<::Scripting::VersionRequestKey, ::std::vector<::Scripting::VersionRequestedBy > > const &versionRequestTable) const
MCAPI::Scripting::IModuleBindingFactory * _getModuleBindingFactory(::Scripting::UUID const &uuid) const
MCAPI bool _isVersionSupported(::Scripting::IModuleBindingFactory const &moduleFactory, ::Scripting::Version const &version) const
MCAPI ::std::vector<::Scripting::ModuleDescriptor > _orderModulesByDependency(::std::vector<::Scripting::SupportedBindingModule > &&unorderedModules) const
Definition IModuleBindingFactory.h:16
Definition ModuleDescriptor.h:7
Definition UUID.h:7
Definition VersionRequestKey.h:7
Definition Version.h:7
Definition Alias.h:14