LLDB
mainline
llvm-project
lldb
source
Plugins
Platform
Emscripten
PlatformEmscripten.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_EMSCRIPTEN_PLATFORMEMSCRIPTEN_H
10
#define LLDB_SOURCE_PLUGINS_PLATFORM_EMSCRIPTEN_PLATFORMEMSCRIPTEN_H
11
12
#include "
Plugins/Platform/POSIX/PlatformPOSIX.h
"
13
14
namespace
lldb_private::platform_emscripten
{
15
16
class
PlatformEmscripten
:
public
PlatformPOSIX
{
17
public
:
18
explicit
PlatformEmscripten
(
bool
is_host);
19
20
static
void
Initialize
();
21
static
void
Terminate
();
22
23
static
lldb::PlatformSP
CreateInstance
(
bool
force,
const
ArchSpec
*arch);
24
25
static
llvm::StringRef
GetPluginNameStatic
(
bool
is_host) {
26
return
is_host ?
Platform::GetHostPlatformName
() :
"remote-emscripten"
;
27
}
28
29
static
llvm::StringRef
GetPluginDescriptionStatic
(
bool
is_host);
30
31
llvm::StringRef
GetPluginName
()
override
{
32
return
GetPluginNameStatic
(
IsHost
());
33
}
34
35
llvm::StringRef
GetDescription
()
override
{
36
return
GetPluginDescriptionStatic
(
IsHost
());
37
}
38
39
std::vector<ArchSpec>
40
GetSupportedArchitectures
(
const
ArchSpec
&process_host_arch)
override
;
41
42
bool
CanDebugProcess
()
override
;
43
44
private
:
45
std::vector<ArchSpec>
m_supported_architectures
;
46
};
47
48
}
// namespace lldb_private::platform_emscripten
49
50
#endif
// LLDB_SOURCE_PLUGINS_PLATFORM_EMSCRIPTEN_PLATFORMEMSCRIPTEN_H
PlatformPOSIX.h
PlatformPOSIX::PlatformPOSIX
PlatformPOSIX(bool is_host)
Default Constructor.
Definition
PlatformPOSIX.cpp:44
lldb_private::ArchSpec
An architecture specification class.
Definition
ArchSpec.h:32
lldb_private::Platform::IsHost
bool IsHost() const
Definition
Platform.h:575
lldb_private::Platform::GetHostPlatformName
static const char * GetHostPlatformName()
Definition
Platform.cpp:66
lldb_private::platform_emscripten::PlatformEmscripten::GetPluginDescriptionStatic
static llvm::StringRef GetPluginDescriptionStatic(bool is_host)
Definition
PlatformEmscripten.cpp:37
lldb_private::platform_emscripten::PlatformEmscripten::Initialize
static void Initialize()
Definition
PlatformEmscripten.cpp:43
lldb_private::platform_emscripten::PlatformEmscripten::Terminate
static void Terminate()
Definition
PlatformEmscripten.cpp:58
lldb_private::platform_emscripten::PlatformEmscripten::CanDebugProcess
bool CanDebugProcess() override
Not all platforms will support debugging a process by spawning somehow halted for a debugger (specifi...
Definition
PlatformEmscripten.cpp:80
lldb_private::platform_emscripten::PlatformEmscripten::GetSupportedArchitectures
std::vector< ArchSpec > GetSupportedArchitectures(const ArchSpec &process_host_arch) override
Get the platform's supported architectures in the order in which they should be searched.
Definition
PlatformEmscripten.cpp:73
lldb_private::platform_emscripten::PlatformEmscripten::m_supported_architectures
std::vector< ArchSpec > m_supported_architectures
Definition
PlatformEmscripten.h:45
lldb_private::platform_emscripten::PlatformEmscripten::GetPluginNameStatic
static llvm::StringRef GetPluginNameStatic(bool is_host)
Definition
PlatformEmscripten.h:25
lldb_private::platform_emscripten::PlatformEmscripten::CreateInstance
static lldb::PlatformSP CreateInstance(bool force, const ArchSpec *arch)
Definition
PlatformEmscripten.cpp:24
lldb_private::platform_emscripten::PlatformEmscripten::GetDescription
llvm::StringRef GetDescription() override
Definition
PlatformEmscripten.h:35
lldb_private::platform_emscripten::PlatformEmscripten::GetPluginName
llvm::StringRef GetPluginName() override
Definition
PlatformEmscripten.h:31
lldb_private::platform_emscripten::PlatformEmscripten::PlatformEmscripten
PlatformEmscripten(bool is_host)
Definition
PlatformEmscripten.cpp:65
lldb_private::platform_emscripten
Definition
PlatformEmscripten.h:14
lldb::PlatformSP
std::shared_ptr< lldb_private::Platform > PlatformSP
Definition
lldb-forward.h:406
Generated on
for LLDB by
1.14.0