llvm-project
522045e9 - [Dexter] Add support for aggregate expects in the debugger

Commit
123 days ago
[Dexter] Add support for aggregate expects in the debugger Allows aggregate expects to be written in Dexter scripts, in the form: !value expect: member1: 0 member2: submember1: 1 submember2: 2 This uses the "variables" feature provided in the DAP interface to recursively fetch sub-variables from each evaluated variable, and modifies the DebuggerExpectMatch class to also be recursive, containing submatches for each expected aggregate member value. Some key concepts that are affected by this are the "match_result", which has changed from a bool to a 3-way result ("FALSE", "TRUE", "PARTIAL"), where "PARTIAL" means that at least one submatch was TRUE and at least one was FALSE. We also add a `match_distance`, which is used as a measure of correctness. The match distance ranges from 0.0 to 1.0: a total match has a distance of 0.0, a total mismatch has 1.0, and a partial match's distance is equal to the average distance of its immediate children.
Author
Committer
Parents
Loading