| 50 | } |
| 51 | |
| 52 | bool SymbolTreeNode::writeToVM( |
| 53 | QVariant value, |
| 54 | DebugInterface& cpu, |
| 55 | const ccc::SymbolDatabase& database, |
| 56 | const SymbolTreeDisplayOptions& display_options) |
| 57 | { |
| 58 | bool data_changed = false; |
| 59 | |
| 60 | if (value != m_value) |
| 61 | { |
| 62 | m_value = std::move(value); |
| 63 | data_changed = true; |
| 64 | } |
| 65 | |
| 66 | const ccc::ast::Node* logical_type = type.lookup_node(database); |
| 67 | if (logical_type) |
| 68 | { |
| 69 | const ccc::ast::Node& physical_type = *logical_type->physical_type(database).first; |
| 70 | writeValueFromVariant(m_value, physical_type, cpu); |
| 71 | } |
| 72 | |
| 73 | data_changed |= updateDisplayString(cpu, database, display_options); |
| 74 | data_changed |= updateLiveness(cpu); |
| 75 | |
| 76 | return data_changed; |
| 77 | } |
| 78 | |
| 79 | QVariant SymbolTreeNode::readValueAsVariant(const ccc::ast::Node& physical_type, DebugInterface& cpu, const ccc::SymbolDatabase& database) const |
| 80 | { |
no test coverage detected