microsoft / microsoft/vscode-java-debug

Feature request: Allow reference to previous expression evaluations in debug console

Ouverte
#579 1 commentaire 0 réactions 0 personnes assignées Voir sur GitHub

Personne n'a encore pris cette issue.

evaluation feature request
Langage dominant
TypeScript
Étoiles
591
Forks
429
Merge moyen
1 j 9 h
PR mergées (30 j)
19

Description

It's often generally useful to be able to refer to the results of an earlier expression when exploring the state of a program. This is related to #281, but different. And possibly possible to implement.

result.getBlob("details")
> JDBCBlobClient (id=108)
result.getBlob("details").toString()
> "org.hsqldb.jdbc.JDBCBlobClient@63611043" (id=111)
Utils.fromJson(result.getBlob("details").getBinaryStream())
> BuildRequest (id=119)

This could be changed to

result.getBlob("details")
> JDBCBlobClient ($id_108)
$id_108.toString()
> "org.hsqldb.jdbc.JDBCBlobClient@63611043" ($id_111)
Utils.fromJson($id_108.getBinaryStream())
> BuildRequest ($id_119)

This would allow exploring the results from calls where repeating the call would return different results, and would also allow use of APIs that require objects as parameters, for example,

new byte[10000]
> byte[10000] ($id_120)
result.getBlob("details").getBinaryStream().read($id_120, 0, 10000)
> 200
new String($id_120)
> "The string result is displayed here..."

Guide de contribution

Ouvrir le guide de contribution

Par où commencer

  1. Lisez l'issue en entier, puis le guide de contribution du projet.
  2. Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
  3. Forkez le dépôt et travaillez sur une branche.
  4. Ouvrez une pull request qui référence le numéro de l'issue.

Piste de recherche

Commencez par le point d’entrée de la console de débogage et examinez comment les expressions sont évaluées et affichées. Définissez comment les résultats précédents reçoivent des références telles que $id_108 et comment ces références peuvent être transmises à des expressions ultérieures ; le travail est terminé lorsque les résultats peuvent être réutilisés sans répéter les appels, y compris comme arguments d’objet ou de tableau.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Évaluation

Stack technique
java, typescript
Domaine
devtools
Type d'issue
Fonctionnalité
Difficulté
5/5
Temps estimé
Plus d'une semaine
Activité
À l'abandon
Clarté
Plutôt claire
Accessibilité débutants
25/100

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.