[Lldb-commits] [lldb] [lldb-dap] Add module symbol table viewer to VS Code extension #140626 (PR #153836)
Ely Ronnen via lldb-commits
lldb-commits at lists.llvm.org
Wed Aug 20 14:48:57 PDT 2025
================
@@ -1,9 +1,110 @@
#include "Protocol/DAPTypes.h"
+#include "lldb/lldb-enumerations.h"
using namespace llvm;
namespace lldb_dap::protocol {
+static std::string SymbolTypeToString(lldb::SymbolType symbol_type) {
+ switch (symbol_type) {
+ case lldb::eSymbolTypeInvalid:
+ return "Invalid";
+ case lldb::eSymbolTypeAbsolute:
+ return "Absolute";
+ case lldb::eSymbolTypeCode:
+ return "Code";
+ case lldb::eSymbolTypeResolver:
+ return "Resolver";
+ case lldb::eSymbolTypeData:
+ return "Data";
+ case lldb::eSymbolTypeTrampoline:
+ return "Trampoline";
+ case lldb::eSymbolTypeRuntime:
+ return "Runtime";
+ case lldb::eSymbolTypeException:
+ return "Exception";
+ case lldb::eSymbolTypeSourceFile:
+ return "SourceFile";
+ case lldb::eSymbolTypeHeaderFile:
+ return "HeaderFile";
+ case lldb::eSymbolTypeObjectFile:
+ return "ObjectFile";
+ case lldb::eSymbolTypeCommonBlock:
+ return "CommonBlock";
+ case lldb::eSymbolTypeBlock:
+ return "Block";
+ case lldb::eSymbolTypeLocal:
+ return "Local";
+ case lldb::eSymbolTypeParam:
+ return "Param";
+ case lldb::eSymbolTypeVariable:
+ return "Variable";
+ case lldb::eSymbolTypeVariableType:
+ return "VariableType";
+ case lldb::eSymbolTypeLineEntry:
+ return "LineEntry";
+ case lldb::eSymbolTypeLineHeader:
+ return "LineHeader";
+ case lldb::eSymbolTypeScopeBegin:
+ return "ScopeBegin";
+ case lldb::eSymbolTypeScopeEnd:
+ return "ScopeEnd";
+ case lldb::eSymbolTypeAdditional:
+ return "Additional";
+ case lldb::eSymbolTypeCompiler:
+ return "Compiler";
+ case lldb::eSymbolTypeInstrumentation:
+ return "Instrumentation";
+ case lldb::eSymbolTypeUndefined:
+ return "Undefined";
+ case lldb::eSymbolTypeObjCClass:
+ return "ObjCClass";
+ case lldb::eSymbolTypeObjCMetaClass:
+ return "ObjCMetaClass";
+ case lldb::eSymbolTypeObjCIVar:
+ return "ObjCIVar";
+ case lldb::eSymbolTypeReExported:
+ return "ReExported";
+ }
+
+ llvm_unreachable("unhandled symbol type.");
+}
+
+static lldb::SymbolType StringToSymbolType(const std::string &symbol_type) {
+ return llvm::StringSwitch<lldb::SymbolType>(symbol_type)
+ .Case("Invalid", lldb::eSymbolTypeInvalid)
----------------
eronnen wrote:
:100:
https://github.com/llvm/llvm-project/pull/153836
More information about the lldb-commits
mailing list