LLDB mainline
PlatformWebInspectorWasm.h
Go to the documentation of this file.
1//===----------------------------------------------------------------------===//
2//
3// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4// See https://llvm.org/LICENSE.txt for license information.
5// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
6//
7//===----------------------------------------------------------------------===//
8
9#ifndef LLDB_SOURCE_PLUGINS_PLATFORM_WEBASSEMBLY_PLATFORMWEBINSPECTORWASM_H
10#define LLDB_SOURCE_PLUGINS_PLATFORM_WEBASSEMBLY_PLATFORMWEBINSPECTORWASM_H
11
12#include "PlatformWasm.h"
13
14namespace lldb_private {
15
17public:
18 static void Initialize();
19 static void Terminate();
20
21 static llvm::StringRef GetPluginNameStatic() { return "webinspector-wasm"; }
22 static llvm::StringRef GetPluginDescriptionStatic();
23
24 llvm::StringRef GetPluginName() override { return GetPluginNameStatic(); }
25 llvm::StringRef GetDescription() override {
27 }
28
30
31 Status ConnectRemote(Args &args) override;
32
33 lldb::ProcessSP Attach(ProcessAttachInfo &attach_info, Debugger &debugger,
34 Target *target, Status &status) override;
35
37 Debugger &debugger, Target &target,
38 Status &error) override;
39
40 uint32_t FindProcesses(const ProcessInstanceInfoMatch &match_info,
41 ProcessInstanceInfoList &proc_infos) override;
42
43 bool GetProcessInfo(lldb::pid_t pid, ProcessInstanceInfo &proc_info) override;
44
45private:
46 static lldb::PlatformSP CreateInstance(bool force, const ArchSpec *arch);
47
49
50 llvm::Error LaunchPlatformServer();
51 llvm::Error EnsureConnected();
52
54};
55
56} // namespace lldb_private
57
58#endif // LLDB_SOURCE_PLUGINS_PLATFORM_WEBASSEMBLY_PLATFORMWEBINSPECTORWASM_H
static llvm::raw_ostream & error(Stream &strm)
An architecture specification class.
Definition ArchSpec.h:32
A command line argument class.
Definition Args.h:33
A class to manage flag bits.
Definition Debugger.h:101
lldb::ProcessSP DebugProcess(ProcessLaunchInfo &launch_info, Debugger &debugger, Target &target, Status &error) override
Subclasses do not need to implement this function as it uses the Platform::LaunchProcess() followed b...
uint32_t FindProcesses(const ProcessInstanceInfoMatch &match_info, ProcessInstanceInfoList &proc_infos) override
Attach to an existing process by process name.
static lldb::PlatformSP CreateInstance(bool force, const ArchSpec *arch)
lldb::ProcessSP Attach(ProcessAttachInfo &attach_info, Debugger &debugger, Target *target, Status &status) override
Attach to an existing process using a process ID.
bool GetProcessInfo(lldb::pid_t pid, ProcessInstanceInfo &proc_info) override
An error handling class.
Definition Status.h:118
#define LLDB_INVALID_PROCESS_ID
A class that represents a running process on the host machine.
std::vector< ProcessInstanceInfo > ProcessInstanceInfoList
Definition Host.h:32
std::shared_ptr< lldb_private::Platform > PlatformSP
std::shared_ptr< lldb_private::Process > ProcessSP
uint64_t pid_t
Definition lldb-types.h:83