Skip to content

[lldb-vscode] Show a fake child with the raw value of synthetic types #65552

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 1 commit into from
Sep 7, 2023

Conversation

walter-erquinigo
Copy link
Member

@walter-erquinigo walter-erquinigo commented Sep 7, 2023

Currently, if the user wants to inspect the raw version of a synthetic variable, they have to go to the debug console and type frame var <variable>, which is not a great experience. Taking inspiration from CodeLLDB, this adds a [raw] child to every synthetic variable so that this kind of inspection can be done visually.

Some examples:

Screenshot 2023-09-06 at 7 56 25 PM Screenshot 2023-09-06 at 6 58 25 PM

Currently, if the user wants to inspect the raw version of a synthetic variable, they have to go to the debug console and type `frame var <variable>, which is not a great experience. Taking inspiration from CodeLLDB, this adds a `[raw]` child to every synthetic variable so that this kind of inspection can be done visually.
@walter-erquinigo walter-erquinigo merged commit cf5d8de into llvm:main Sep 7, 2023
@walter-erquinigo walter-erquinigo deleted the walter/synthetic branch September 7, 2023 00:15
@clayborg
Copy link
Collaborator

clayborg commented Sep 7, 2023

Not sure I like this showing up all of the time. It is fine for people that want to debug synthetic child providers, but seeing this all of the time adds noise to the variable window for no real benefit. I believe that plug-ins can have settings within VS code and it would be nice to make this a setting that can be set in the IDE, though I am not sure if native DAP plug-ins like lldb-vscode can access those settings.

avillega pushed a commit to avillega/llvm-project that referenced this pull request Sep 11, 2023
…llvm#65552)

Currently, if the user wants to inspect the raw version of a synthetic
variable, they have to go to the debug console and type `frame var
<variable>`, which is not a great experience. Taking inspiration from
CodeLLDB, this adds a `[raw]` child to every synthetic variable so that
this kind of inspection can be done visually.

Some examples:

<img width="500" alt="Screenshot 2023-09-06 at 7 56 25 PM"
src="https://github.com/llvm/llvm-project/assets/1613874/7fefb7c5-0da7-49c7-968b-78ac88348fea">
<img width="479" alt="Screenshot 2023-09-06 at 6 58 25 PM"
src="https://github.com/llvm/llvm-project/assets/1613874/6e650567-16e1-462f-9bf5-4a3a605cf6fc">
adrian-prantl pushed a commit to adrian-prantl/llvm-project that referenced this pull request Jan 18, 2024
…llvm#65552)

Currently, if the user wants to inspect the raw version of a synthetic
variable, they have to go to the debug console and type `frame var
<variable>`, which is not a great experience. Taking inspiration from
CodeLLDB, this adds a `[raw]` child to every synthetic variable so that
this kind of inspection can be done visually.

Some examples:

<img width="500" alt="Screenshot 2023-09-06 at 7 56 25 PM"
src="https://github.com/llvm/llvm-project/assets/1613874/7fefb7c5-0da7-49c7-968b-78ac88348fea">
<img width="479" alt="Screenshot 2023-09-06 at 6 58 25 PM"
src="https://github.com/llvm/llvm-project/assets/1613874/6e650567-16e1-462f-9bf5-4a3a605cf6fc">

(cherry picked from commit cf5d8de)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants