This is an archive of the discontinued LLVM Phabricator instance.

[lldb-vscode] Creating a new flag for adjusting the behavior of evaluation repl expressions to allow users to more easily invoke lldb commands.
ClosedPublic

Authored by ashgti on Jul 13 2023, 4:13 PM.

Details

Summary

This adds a new flag and lldb runtime command to allow users to manage the behavior of the lldb-vscode evaluate repl request.

When evaluating a repl context this now has runtime managed flag for control how the repl behaviors with the follow values:

  • variable - the existing behavior, with this mode requests are evaluted in the current frame context as variable expressions. To trigger a lldb command prefix an expression with ` and it will be evaluted as an lldb command.
  • command - all expressions are evaluated as lldb commands.
  • auto - An alternative mode that will attempt to determine if the expression is an lldb command or a variable expression. Based off the intepreted results the expression will be evaluted either as a command or an expression.

Additionally, I enabled completions and ensured they work with the new repl expression behavior to provide auto-completes.

This commit includes updates to the tests to verify the new behavior after the previous failures from submitting https://reviews.llvm.org/D154030.

Diff Detail

Event Timeline

ashgti created this revision.Jul 13 2023, 4:13 PM
Herald added a project: Restricted Project. · View Herald TranscriptJul 13 2023, 4:13 PM
ashgti requested review of this revision.Jul 13 2023, 4:13 PM
Herald added a project: Restricted Project. · View Herald TranscriptJul 13 2023, 4:13 PM
ashgti updated this revision to Diff 540216.Jul 13 2023, 4:17 PM

Applying formatting.

ashgti updated this revision to Diff 540219.Jul 13 2023, 4:26 PM

Adjusting the startDebugging test.

Hi wallace, this is a second attempt at this change set including updates to existing tests to check the behavior changes. LMKWYT

wallace accepted this revision.Jul 15 2023, 10:44 AM

fingers crossed

This revision is now accepted and ready to land.Jul 15 2023, 10:44 AM
ashgti updated this revision to Diff 541728.Jul 18 2023, 2:13 PM

Updating patch.