================
@@ -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
_______________________________________________
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

Reply via email to