LeviLamina
Loading...
Searching...
No Matches
GenericModuleBindingFactory.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/deps/scripting/binding_factory/IModuleBindingFactory.h"
7
8// auto generated forward declare list
9// clang-format off
10namespace Scripting { class ModuleBindingBuilder; }
11namespace Scripting { struct ContextConfig; }
12namespace Scripting { struct ModuleBinding; }
13namespace Scripting { struct ModuleDependency; }
14namespace Scripting { struct UUID; }
15namespace Scripting { struct Version; }
16// clang-format on
17
18namespace Scripting {
19
21public:
22 // GenericModuleBindingFactory inner types declare
23 // clang-format off
24 struct ModuleData;
25 // clang-format on
26
27 // GenericModuleBindingFactory inner types define
28 struct ModuleData {
29 public:
30 // member variables
31 // NOLINTBEGIN
37 // NOLINTEND
38
39 public:
40 // prevent constructor by default
41 ModuleData& operator=(ModuleData const&);
42 ModuleData(ModuleData const&);
43 ModuleData();
44
45 public:
46 // member functions
47 // NOLINTBEGIN
48 MCNAPI ModuleData(
49 ::std::string _alias,
50 ::Scripting::Version&& _version,
51 ::std::function<::std::optional<::Scripting::ModuleBinding>(
53 ::std::optional<::Scripting::ContextConfig> const&
54 )>&& _moduleCreatorFn,
55 ::std::vector<::Scripting::ModuleDependency>&& _dependencies,
56 bool _importRestricted
57 );
58
59 MCNAPI ~ModuleData();
60 // NOLINTEND
61
62 public:
63 // constructor thunks
64 // NOLINTBEGIN
65 MCNAPI void* $ctor(
66 ::std::string _alias,
67 ::Scripting::Version&& _version,
68 ::std::function<::std::optional<::Scripting::ModuleBinding>(
70 ::std::optional<::Scripting::ContextConfig> const&
71 )>&& _moduleCreatorFn,
72 ::std::vector<::Scripting::ModuleDependency>&& _dependencies,
73 bool _importRestricted
74 );
75 // NOLINTEND
76
77 public:
78 // destructor thunk
79 // NOLINTBEGIN
80 MCNAPI void $dtor();
81 // NOLINTEND
82 };
83
84public:
85 // member variables
86 // NOLINTBEGIN
90 // NOLINTEND
91
92public:
93 // prevent constructor by default
97
98public:
99 // virtual functions
100 // NOLINTBEGIN
101 // vIndex: 0
102 virtual ~GenericModuleBindingFactory() /*override*/;
103
104 // vIndex: 1
105 virtual ::std::string getName() const /*override*/;
106
107 // vIndex: 2
108 virtual ::Scripting::UUID getUUID() const /*override*/;
109
110 // vIndex: 3
111 virtual bool hasAlias(::std::string const& alias) const /*override*/;
112
113 // vIndex: 4
114 virtual ::std::vector<::Scripting::Version> getSupportedVersions() const /*override*/;
115
116 // vIndex: 5
117 virtual ::std::vector<::Scripting::ModuleDependency> getDependencies(::Scripting::Version version) const
118 /*override*/;
119
120 // vIndex: 6
121 virtual ::std::optional<::Scripting::ModuleBinding> createModuleBinding(
122 ::Scripting::Version version,
123 ::std::optional<::Scripting::ContextConfig> const& config
124 ) /*override*/;
125 // NOLINTEND
126
127public:
128 // member functions
129 // NOLINTBEGIN
130 MCNAPI GenericModuleBindingFactory(::std::string moduleName, ::Scripting::UUID moduleUUID);
131
133 ::std::vector<::Scripting::ModuleDependency>& dependencies,
134 ::Scripting::Version runtimeVersion
135 );
136
138 ::Scripting::Version version,
139 ::std::function<::std::optional<::Scripting::ModuleBinding>(
140 ::Scripting::ModuleBindingBuilder&,
141 ::std::optional<::Scripting::ContextConfig> const&
142 )> moduleCreatorFn,
143 ::Scripting::Version runtimeVersion,
144 ::std::vector<::Scripting::ModuleDependency> dependencies,
145 bool importRestricted
146 );
147
149 ::std::string alias,
150 ::Scripting::Version version,
151 ::std::function<::std::optional<::Scripting::ModuleBinding>(
152 ::Scripting::ModuleBindingBuilder&,
153 ::std::optional<::Scripting::ContextConfig> const&
154 )> moduleCreatorFn,
155 ::Scripting::Version runtimeVersion,
156 ::std::vector<::Scripting::ModuleDependency> dependencies,
157 bool importRestricted
158 );
159 // NOLINTEND
160
161public:
162 // constructor thunks
163 // NOLINTBEGIN
164 MCNAPI void* $ctor(::std::string moduleName, ::Scripting::UUID moduleUUID);
165 // NOLINTEND
166
167public:
168 // destructor thunk
169 // NOLINTBEGIN
170 MCNAPI void $dtor();
171 // NOLINTEND
172
173public:
174 // virtual function thunks
175 // NOLINTBEGIN
176 MCNAPI ::std::string $getName() const;
177
178 MCNAPI ::Scripting::UUID $getUUID() const;
179
180 MCNAPI bool $hasAlias(::std::string const& alias) const;
181
182 MCNAPI ::std::vector<::Scripting::Version> $getSupportedVersions() const;
183
184 MCNAPI ::std::vector<::Scripting::ModuleDependency> $getDependencies(::Scripting::Version version) const;
185
186 MCNAPI ::std::optional<::Scripting::ModuleBinding>
187 $createModuleBinding(::Scripting::Version version, ::std::optional<::Scripting::ContextConfig> const& config);
188 // NOLINTEND
189
190public:
191 // vftables
192 // NOLINTBEGIN
193 MCNAPI static void** $vftable();
194 // NOLINTEND
195};
196
197} // namespace Scripting
Definition GenericModuleBindingFactory.h:20
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 void * $ctor(::std::string moduleName, ::Scripting::UUID moduleUUID)
MCAPI ::std::vector<::Scripting::Version > $getSupportedVersions() const
MCAPI ::std::optional<::Scripting::ModuleBinding > $createModuleBinding(::Scripting::Version version, ::std::optional<::Scripting::ContextConfig > const &config)
MCAPI bool $hasAlias(::std::string const &alias) const
MCAPI::Scripting::UUID $getUUID() const
MCAPI::std::string $getName() const
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:30
STL namespace.
Definition ContextConfig.h:7
Definition GenericModuleBindingFactory.h:28
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)
Definition ModuleBinding.h:21
Definition ModuleDependency.h:12
Definition UUID.h:7
Definition Version.h:7
Definition Alias.h:14