003 File Manager
Current Path:
/usr/src/contrib/llvm-project/lldb/source/Plugins/Platform/POSIX
usr
/
src
/
contrib
/
llvm-project
/
lldb
/
source
/
Plugins
/
Platform
/
POSIX
/
📁
..
📄
PlatformPOSIX.cpp
(34.76 KB)
📄
PlatformPOSIX.h
(4.4 KB)
Editing: PlatformPOSIX.h
//===-- PlatformPOSIX.h -----------------------------------------*- C++ -*-===// // // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. // See https://llvm.org/LICENSE.txt for license information. // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception // //===----------------------------------------------------------------------===// #ifndef LLDB_SOURCE_PLUGINS_PLATFORM_POSIX_PLATFORMPOSIX_H #define LLDB_SOURCE_PLUGINS_PLATFORM_POSIX_PLATFORMPOSIX_H #include <map> #include <memory> #include "lldb/Interpreter/Options.h" #include "lldb/Target/RemoteAwarePlatform.h" class PlatformPOSIX : public lldb_private::RemoteAwarePlatform { public: PlatformPOSIX(bool is_host); ~PlatformPOSIX() override; // lldb_private::Platform functions lldb_private::OptionGroupOptions * GetConnectionOptions(lldb_private::CommandInterpreter &interpreter) override; lldb_private::Status PutFile(const lldb_private::FileSpec &source, const lldb_private::FileSpec &destination, uint32_t uid = UINT32_MAX, uint32_t gid = UINT32_MAX) override; lldb_private::Status GetFile(const lldb_private::FileSpec &source, const lldb_private::FileSpec &destination) override; const lldb::UnixSignalsSP &GetRemoteUnixSignals() override; lldb::ProcessSP Attach(lldb_private::ProcessAttachInfo &attach_info, lldb_private::Debugger &debugger, lldb_private::Target *target, // Can be nullptr, if // nullptr create a new // target, else use // existing one lldb_private::Status &error) override; lldb::ProcessSP DebugProcess(lldb_private::ProcessLaunchInfo &launch_info, lldb_private::Debugger &debugger, lldb_private::Target *target, // Can be nullptr, // if nullptr // create a new // target, else use // existing one lldb_private::Status &error) override; std::string GetPlatformSpecificConnectionInformation() override; void CalculateTrapHandlerSymbolNames() override; lldb_private::Status ConnectRemote(lldb_private::Args &args) override; lldb_private::Status DisconnectRemote() override; uint32_t DoLoadImage(lldb_private::Process *process, const lldb_private::FileSpec &remote_file, const std::vector<std::string> *paths, lldb_private::Status &error, lldb_private::FileSpec *loaded_image) override; lldb_private::Status UnloadImage(lldb_private::Process *process, uint32_t image_token) override; size_t ConnectToWaitingProcesses(lldb_private::Debugger &debugger, lldb_private::Status &error) override; lldb_private::ConstString GetFullNameForDylib(lldb_private::ConstString basename) override; protected: std::unique_ptr<lldb_private::OptionGroupPlatformRSync> m_option_group_platform_rsync; std::unique_ptr<lldb_private::OptionGroupPlatformSSH> m_option_group_platform_ssh; std::unique_ptr<lldb_private::OptionGroupPlatformCaching> m_option_group_platform_caching; std::map<lldb_private::CommandInterpreter *, std::unique_ptr<lldb_private::OptionGroupOptions>> m_options; lldb_private::Status EvaluateLibdlExpression(lldb_private::Process *process, const char *expr_cstr, llvm::StringRef expr_prefix, lldb::ValueObjectSP &result_valobj_sp); std::unique_ptr<lldb_private::UtilityFunction> MakeLoadImageUtilityFunction(lldb_private::ExecutionContext &exe_ctx, lldb_private::Status &error); virtual llvm::StringRef GetLibdlFunctionDeclarations(lldb_private::Process *process); private: PlatformPOSIX(const PlatformPOSIX &) = delete; const PlatformPOSIX &operator=(const PlatformPOSIX &) = delete; }; #endif // LLDB_SOURCE_PLUGINS_PLATFORM_POSIX_PLATFORMPOSIX_H
Upload File
Create Folder