================ @@ -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