This commit is contained in:
T0b1
2023-06-15 02:25:57 +02:00
parent b393f3dd28
commit 9ab08de243
15 changed files with 1294 additions and 166 deletions

View File

@@ -80,6 +80,34 @@ namespace dbgui::frontend
Target(std::string filename);
std::optional<uint16_t> data_idx_for_src_id(size_t id)
{
for (auto &[entry_id, idx] : this->src_id_to_data_idx)
{
if (entry_id == id)
{
return idx;
}
}
return {};
}
data::result::Node *data_node_for_src_id(size_t id)
{
auto idx = this->data_idx_for_src_id(id);
if (!idx)
{
return nullptr;
}
if (*idx >= data_res_nodes.size() || !data_res_nodes[*idx])
{
return nullptr;
}
return &*data_res_nodes[*idx];
}
TargetState state = TargetState::stopped;
std::string filename;
uint64_t id;
@@ -93,6 +121,8 @@ namespace dbgui::frontend
std::vector<std::optional<Thread>> threads;
std::vector<std::optional<Frame>> frames;
std::vector<Breakpoint> breakpoints;
std::vector<std::pair<size_t, uint16_t>> src_id_to_data_idx;
std::vector<std::optional<data::result::Node>> data_res_nodes;
std::shared_ptr<backend::Backend> backend = nullptr;
};