| 41 | } |
| 42 | |
| 43 | SymbolInfo SymbolGuardian::SymbolAfterAddress( |
| 44 | u32 address, u32 descriptors) const |
| 45 | { |
| 46 | SymbolInfo info; |
| 47 | Read([&](const ccc::SymbolDatabase& database) { |
| 48 | ccc::SymbolDescriptor descriptor; |
| 49 | const ccc::Symbol* symbol = database.symbol_after_address(address, descriptors, &descriptor); |
| 50 | if (!symbol) |
| 51 | return; |
| 52 | |
| 53 | info.descriptor = descriptor; |
| 54 | info.handle = symbol->raw_handle(); |
| 55 | info.name = symbol->name(); |
| 56 | info.address = symbol->address(); |
| 57 | info.size = symbol->size(); |
| 58 | }); |
| 59 | return info; |
| 60 | } |
| 61 | |
| 62 | SymbolInfo SymbolGuardian::SymbolOverlappingAddress( |
| 63 | u32 address, u32 descriptors) const |
no test coverage detected