LeviLamina
Loading...
Searching...
No Matches
CustomCommandRegistry.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/deps/scripting/runtime/Result.h"
7#include "mc/deps/scripting/script_engine/ClosureGeneric.h"
8#include "mc/scripting/modules/minecraft/ScriptServerStateMonitor.h"
9
10// auto generated forward declare list
11// clang-format off
12class CommandRegistry;
14namespace ScriptModuleMinecraft { struct ScriptCustomCommandError; }
15namespace ScriptModuleMinecraft { struct ScriptCustomCommandInterface; }
16namespace ScriptModuleMinecraft { struct ScriptCustomCommandResult; }
17namespace ScriptModuleMinecraft { struct ScriptNamespaceNameError; }
18namespace Scripting { struct EngineError; }
19// clang-format on
20
21namespace ScriptModuleMinecraft {
22
23class CustomCommandRegistry : public ::ScriptModuleMinecraft::ScriptServerStateMonitor {
24public:
25 // CustomCommandRegistry inner types declare
26 // clang-format off
28 // clang-format on
29
30 // CustomCommandRegistry inner types define
31 struct PendingRegistrations {
32 public:
33 // PendingRegistrations inner types declare
34 // clang-format off
35 struct CommandData;
36 // clang-format on
37
38 // PendingRegistrations inner types define
39 struct CommandData {
40 public:
41 // member variables
42 // NOLINTBEGIN
46 // NOLINTEND
47
48 public:
49 // prevent constructor by default
50 CommandData& operator=(CommandData const&);
51 CommandData(CommandData const&);
52 CommandData();
53
54 public:
55 // member functions
56 // NOLINTBEGIN
57 MCNAPI ~CommandData();
58 // NOLINTEND
59
60 public:
61 // destructor thunk
62 // NOLINTBEGIN
63 MCNAPI void $dtor();
64 // NOLINTEND
65 };
66
67 public:
68 // member variables
69 // NOLINTBEGIN
73 // NOLINTEND
74
75 public:
76 // prevent constructor by default
77 PendingRegistrations& operator=(PendingRegistrations const&);
78 PendingRegistrations(PendingRegistrations const&);
79 PendingRegistrations();
80
81 public:
82 // member functions
83 // NOLINTBEGIN
85 // NOLINTEND
86
87 public:
88 // destructor thunk
89 // NOLINTBEGIN
90 MCNAPI void $dtor();
91 // NOLINTEND
92 };
93
94public:
95 // member variables
96 // NOLINTBEGIN
102 // NOLINTEND
103
104public:
105 // prevent constructor by default
106 CustomCommandRegistry& operator=(CustomCommandRegistry const&);
107 CustomCommandRegistry(CustomCommandRegistry const&);
108 CustomCommandRegistry();
109
110public:
111 // virtual functions
112 // NOLINTBEGIN
113 virtual ~CustomCommandRegistry() /*override*/;
114
115 virtual void _onScriptInitializationComplete() /*override*/;
116 // NOLINTEND
117
118public:
119 // member functions
120 // NOLINTBEGIN
122
123 MCNAPI ::std::optional<::ScriptModuleMinecraft::ScriptCustomCommandError> _checkNamespaceConsistency(
125 ::std::string_view newNamespace
126 ) const;
127
128 MCNAPI ::ScriptModuleMinecraft::CustomCommandRegistry::PendingRegistrations&
129 _getOrCreatePendingRegistrationsForPack(::std::string const& packUUID, ::std::string_view newNamespace);
130
132
133 MCNAPI void _reloadRegistrations();
134
135 MCNAPI ::std::optional<::std::string> _tryClaimAlias(::std::string const& commandName);
136
137 MCNAPI ::std::optional<::std::string> _validateEnumDependencies(
140 ) const;
141
142 MCNAPI ::Scripting::Result<
143 void,
148 ::std::string const& packUUID,
150 ::Scripting::ClosureGeneric<::std::optional<::ScriptModuleMinecraft::ScriptCustomCommandResult>>&& closure
151 );
152
153 MCNAPI ::Scripting::Result<
154 void,
159 ::std::string const& packUUID,
160 ::std::string const& name,
161 ::std::vector<::std::string> const& values
162 );
163 // NOLINTEND
164
165public:
166 // constructor thunks
167 // NOLINTBEGIN
168 MCNAPI void* $ctor(::ServerScriptManagerEvents& events, ::CommandRegistry& commandRegistry);
169 // NOLINTEND
170
171public:
172 // destructor thunk
173 // NOLINTBEGIN
174 MCNAPI void $dtor();
175 // NOLINTEND
176
177public:
178 // virtual function thunks
179 // NOLINTBEGIN
181
182
183 // NOLINTEND
184
185public:
186 // vftables
187 // NOLINTBEGIN
188 MCNAPI static void** $vftable();
189 // NOLINTEND
190};
191
192} // namespace ScriptModuleMinecraft
Definition CommandRegistry.h:47
MCAPI void * $ctor(::ServerScriptManagerEvents &events, ::CommandRegistry &commandRegistry)
MCAPI ::std::optional<::ScriptModuleMinecraft::ScriptCustomCommandError > _checkNamespaceConsistency(::ScriptModuleMinecraft::CustomCommandRegistry::PendingRegistrations const &registrations, ::std::string_view newNamespace) const
MCAPI ::Scripting::Result< void, ::ScriptModuleMinecraft::ScriptNamespaceNameError, ::ScriptModuleMinecraft::ScriptCustomCommandError, ::Scripting::EngineError > addPendingEnum(::std::string const &packUUID, ::std::string const &name, ::std::vector<::std::string > const &values)
MCAPI::ScriptModuleMinecraft::CustomCommandRegistry::PendingRegistrations & _getOrCreatePendingRegistrationsForPack(::std::string const &packUUID, ::std::string_view newNamespace)
MCAPI ::Scripting::Result< void, ::ScriptModuleMinecraft::ScriptNamespaceNameError, ::ScriptModuleMinecraft::ScriptCustomCommandError, ::Scripting::EngineError > addPendingCommand(::std::string const &packUUID, ::ScriptModuleMinecraft::ScriptCustomCommandInterface const &commandInterface, ::Scripting::ClosureGeneric<::std::optional<::ScriptModuleMinecraft::ScriptCustomCommandResult > > &&closure)
MCAPI ::std::optional<::std::string > _validateEnumDependencies(::ScriptModuleMinecraft::CustomCommandRegistry::PendingRegistrations const &registrations, ::ScriptModuleMinecraft::ScriptCustomCommandInterface const &commandInterface) const
MCAPI CustomCommandRegistry(::ServerScriptManagerEvents &events, ::CommandRegistry &commandRegistry)
MCAPI ::std::optional<::std::string > _tryClaimAlias(::std::string const &commandName)
Definition ScriptServerStateMonitor.h:12
Definition ClosureGeneric.h:8
Definition ScriptCustomCommandError.h:16
Definition ScriptCustomCommandInterface.h:12
Definition ScriptCustomCommandResult.h:12
Definition ScriptNamespaceNameError.h:18
Definition EngineError.h:15
Definition ServerScriptManagerEvents.h:13
Definition Alias.h:14