| 1202 | // ***************************************************************************** |
| 1203 | |
| 1204 | MipsExpressionFunctions::MipsExpressionFunctions( |
| 1205 | DebugInterface* cpu, const ccc::SymbolDatabase* symbolDatabase, bool shouldEnumerateSymbols) |
| 1206 | : m_cpu(cpu) |
| 1207 | , m_database(symbolDatabase) |
| 1208 | { |
| 1209 | if (!shouldEnumerateSymbols) |
| 1210 | return; |
| 1211 | |
| 1212 | if (symbolDatabase) |
| 1213 | { |
| 1214 | enumerateSymbols(*symbolDatabase); |
| 1215 | } |
| 1216 | else |
| 1217 | { |
| 1218 | m_cpu->GetSymbolGuardian().Read([&](const ccc::SymbolDatabase& database) { |
| 1219 | enumerateSymbols(database); |
| 1220 | }); |
| 1221 | } |
| 1222 | } |
| 1223 | |
| 1224 | void MipsExpressionFunctions::enumerateSymbols(const ccc::SymbolDatabase& database) |
| 1225 | { |