LeviLamina
Loading...
Searching...
No Matches
Debugger.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/deps/scripting/runtime/IDebuggerController.h"
7
8// auto generated forward declare list
9// clang-format off
10struct JSContext;
11struct JSRuntime;
12struct JSValue;
13// clang-format on
14
15namespace Scripting::QuickJS {
16
18public:
19 // member variables
20 // NOLINTBEGIN
26 // NOLINTEND
27
28public:
29 // prevent constructor by default
30 Debugger& operator=(Debugger const&);
31 Debugger(Debugger const&);
32 Debugger();
33
34public:
35 // virtual functions
36 // NOLINTBEGIN
37 // vIndex: 0
38 virtual ~Debugger() /*override*/ = default;
39
40 // vIndex: 1
41 virtual bool attach(
42 bool performHandshake,
43 ::std::optional<::std::string> targetModuleUuid,
44 ::std::function<void(::std::string_view)> handler
45 ) /*override*/;
46
47 // vIndex: 2
48 virtual void detach() /*override*/;
49
50 // vIndex: 3
51 virtual bool closed() const /*override*/;
52
53 // vIndex: 4
54 virtual void pumpMessages() /*override*/;
55 // NOLINTEND
56
57public:
58 // static functions
59 // NOLINTBEGIN
60 MCNAPI static uint ContextToId(::JSContext* ctx, void*);
61
62 MCNAPI static char const* ContextToModuleUuidLowerCase(::JSContext* ctx, void*);
63
64 MCNAPI static void MessageHandler(void* udata, char const* message, uint64 length);
65
66 MCNAPI static void NotifyResume(void* udata);
67
68 MCNAPI static char const* ToTypeName(::JSContext* ctx, ::JSValue val);
69
70 MCNAPI static void TransportClose(::JSRuntime* rt, void* udata);
71
72 MCNAPI static uint64 TransportPeek(void* udata);
73
74 MCNAPI static uint64 TransportRead(void* udata, char* buffer, uint64 length);
75
76 MCNAPI static uint64 TransportWrite(void* udata, char const* buffer, uint64 length);
77 // NOLINTEND
78
79public:
80 // virtual function thunks
81 // NOLINTBEGIN
82 MCNAPI bool $attach(
83 bool performHandshake,
84 ::std::optional<::std::string> targetModuleUuid,
85 ::std::function<void(::std::string_view)> handler
86 );
87
88 MCNAPI void $detach();
89
90 MCNAPI bool $closed() const;
91
92 MCNAPI void $pumpMessages();
93 // NOLINTEND
94
95public:
96 // vftables
97 // NOLINTBEGIN
98 MCNAPI static void** $vftable();
99 // NOLINTEND
100};
101
102} // namespace Scripting::QuickJS
Definition IDebuggerController.h:7
Definition Debugger.h:17
static MCAPI void MessageHandler(void *udata, char const *message, uint64 length)
MCAPI bool $closed() const
static MCAPI char const * ToTypeName(::JSContext *ctx, ::JSValue val)
static MCAPI void TransportClose(::JSRuntime *rt, void *udata)
static MCAPI void NotifyResume(void *udata)
static MCAPI char const * ContextToModuleUuidLowerCase(::JSContext *ctx, void *)
static MCAPI uint64 TransportPeek(void *udata)
MCAPI bool $attach(bool performHandshake, ::std::optional<::std::string > targetModuleUuid, ::std::function< void(::std::string_view)> handler)
static MCAPI void ** $vftable()
static MCAPI uint ContextToId(::JSContext *ctx, void *)
static MCAPI uint64 TransportRead(void *udata, char *buffer, uint64 length)
static MCAPI uint64 TransportWrite(void *udata, char const *buffer, uint64 length)
Definition JSContext.h:5
Definition JSRuntime.h:8
Definition JSValue.h:5
Definition buffer.h:5
Definition ctx.h:5
Definition Alias.h:14