#include "SupportedFeaturesResponse.hpp" namespace DebugServer::Gdb::ResponsePackets { SupportedFeaturesResponse::SupportedFeaturesResponse( const std::set>>& supportedFeatures ) : supportedFeatures(supportedFeatures) { auto output = std::string("qSupported:"); static const auto gdbFeatureMapping = getGdbFeatureToNameMapping(); for (const auto& supportedFeature : this->supportedFeatures) { const auto featureString = gdbFeatureMapping.valueAt(supportedFeature.first); if (featureString.has_value()) { if (supportedFeature.second.has_value()) { output.append(featureString.value() + "=" + supportedFeature.second.value() + ";"); } else { output.append(featureString.value() + "+;"); } } } this->data = {output.begin(), output.end()}; } }