LeviLamina
Loading...
Searching...
No Matches
ScriptSystem.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/deps/scripting/lifetime_registry/StrongTypedObjectHandle.h"
7#include "mc/deps/scripting/lifetime_registry/WeakLifetimeScope.h"
8#include "mc/deps/scripting/runtime/Result.h"
9#include "mc/deps/scripting/script_engine/Closure.h"
10#include "mc/deps/scripting/script_engine/Generator.h"
11#include "mc/deps/scripting/script_engine/Promise.h"
12
13// auto generated forward declare list
14// clang-format off
15class ServerLevel;
16namespace ScriptModuleMinecraft { class ScriptGlobalEventListeners; }
17namespace ScriptModuleMinecraft { class ScriptSystemAfterEvents; }
18namespace ScriptModuleMinecraft { class ScriptSystemBeforeEvents; }
19namespace ScriptModuleMinecraft { class ScriptSystemInfo; }
20namespace ScriptModuleMinecraft { struct ScriptNamespaceNameError; }
21namespace Scripting { class DependencyLocator; }
22namespace Scripting { class ScriptObjectFactory; }
23namespace Scripting { struct ClassBinding; }
24namespace Scripting { struct EngineError; }
25namespace Scripting { struct Error; }
26namespace Scripting { struct InvalidArgumentError; }
27// clang-format on
28
29namespace ScriptModuleMinecraft {
30
31class ScriptSystem {
32public:
33 // ScriptSystem inner types define
35
36public:
37 // member variables
38 // NOLINTBEGIN
39 ::ll::TypedStorage<8, 16, ::Scripting::WeakLifetimeScope> mScope;
40 ::ll::TypedStorage<8, 8, ::gsl::not_null<::ServerLevel*>> mLevel;
41 ::ll::TypedStorage<8, 32, ::Scripting::StrongTypedObjectHandle<::ScriptModuleMinecraft::ScriptSystemAfterEvents>>
42 mSystemAfterEventsHandle;
43 ::ll::TypedStorage<8, 32, ::Scripting::StrongTypedObjectHandle<::ScriptModuleMinecraft::ScriptSystemBeforeEvents>>
44 mSystemBeforeEventsHandle;
45 ::ll::TypedStorage<8, 8, ::gsl::not_null<::ScriptModuleMinecraft::ScriptGlobalEventListeners*>>
46 mGlobalEventListeners;
47 ::ll::TypedStorage<
48 8,
49 40,
50 ::std::optional<::Scripting::StrongTypedObjectHandle<::ScriptModuleMinecraft::ScriptSystemInfo>>>
51 mSystemInfo;
52 // NOLINTEND
53
54public:
55 // prevent constructor by default
56 ScriptSystem& operator=(ScriptSystem const&);
57 ScriptSystem(ScriptSystem const&);
58 ScriptSystem();
59
60public:
61 // member functions
62 // NOLINTBEGIN
63 MCAPI ScriptSystem(::ScriptModuleMinecraft::ScriptSystem&&);
64
65 MCAPI ScriptSystem(
68 ::gsl::not_null<::ServerLevel*> level
69 );
70
71 MCAPI ::Scripting::Result<::Scripting::Promise<void, ::Scripting::Error, void>, ::Scripting::EngineError>
72 _waitTicks(::Scripting::ScriptObjectFactory& factory, uint numberOfTicks);
73
74 MCAPI void
75 clearJob(::Scripting::WeakLifetimeScope const& scope, ::Scripting::DependencyLocator& locator, uint jobId);
76
77 MCAPI void clearRun(uint runId);
78
79 MCFOLD ::Scripting::StrongTypedObjectHandle<::ScriptModuleMinecraft::ScriptSystemAfterEvents>
80 getSystemAfterEvents();
81
82 MCFOLD ::Scripting::StrongTypedObjectHandle<::ScriptModuleMinecraft::ScriptSystemBeforeEvents>
83 getSystemBeforeEvents();
84
85 MCAPI ::Scripting::StrongTypedObjectHandle<::ScriptModuleMinecraft::ScriptSystemInfo> getSystemInfo();
86
87 MCAPI ::ScriptModuleMinecraft::ScriptSystem& operator=(::ScriptModuleMinecraft::ScriptSystem&&);
88
89 MCAPI uint runInterval(::Scripting::Closure<void()> closure, ::std::optional<uint> interval);
90
92
93 MCAPI uint runSafe(::Scripting::Closure<void()> closure);
94
95 MCAPI uint runTimeout(::Scripting::Closure<void()> closure, ::std::optional<uint> delay);
96
97 MCAPI ::Scripting::Result<
98 void,
102 sendScriptEvent(::std::string const& messageId, ::std::string const& messagePayload);
103
104 MCAPI ::Scripting::Result<::Scripting::Promise<void, ::Scripting::Error, void>, ::Scripting::EngineError>
105 waitTicks(::Scripting::ScriptObjectFactory& factory, uint numberOfTicks);
106
107 MCAPI ::Scripting::Result<::Scripting::Promise<void, ::Scripting::Error, void>, ::Scripting::EngineError>
108 waitTicksV1(::Scripting::ScriptObjectFactory& factory, uint numberOfTicks);
109
110 MCAPI ~ScriptSystem();
111 // NOLINTEND
112
113public:
114 // static functions
115 // NOLINTBEGIN
116 MCAPI static ::Scripting::ClassBinding bind();
117 // NOLINTEND
118
119public:
120 // constructor thunks
121 // NOLINTBEGIN
122 MCAPI void* $ctor(::ScriptModuleMinecraft::ScriptSystem&&);
123
124 MCAPI void* $ctor(
127 ::gsl::not_null<::ServerLevel*> level
128 );
129 // NOLINTEND
130
131public:
132 // destructor thunk
133 // NOLINTBEGIN
134 MCAPI void $dtor();
135 // NOLINTEND
136};
137
138} // namespace ScriptModuleMinecraft
Definition ScriptGlobalEventListeners.h:19
Definition ScriptSystemAfterEvents.h:26
Definition ScriptSystemBeforeEvents.h:25
Definition ScriptSystemInfo.h:15
Definition ScriptSystem.h:31
Definition Closure.h:8
Definition DependencyLocator.h:7
Definition Generator.h:8
Definition ScriptObjectFactory.h:7
Definition WeakLifetimeScope.h:7
Definition ServerLevel.h:50
Definition ScriptNamespaceNameError.h:18
Definition ClassBinding.h:19
Definition EngineError.h:15
Definition Error.h:10
Definition InvalidArgumentError.h:17