microsoft / microsoft/vscode-java-debug

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

Offen
#579 1 Kommentar 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Dieses Issue hat noch niemand übernommen.

evaluation feature request
Vorherrschende Sprache
TypeScript
Sterne
591
Forks
429
Ø Merge
1 T. 9 Std.
Gemergte PRs (30 T.)
19

Beschreibung

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..."

Beitragsleitfaden

Beitragsleitfaden öffnen

Erste Schritte

  1. Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
  3. Forke das Repository und arbeite in einem Branch.
  4. Öffne einen Pull Request, der die Issue-Nummer nennt.

Rechercherichtung

Beginne am Einstiegspunkt der Debug-Konsole und untersuche, wie Ausdrücke ausgewertet und angezeigt werden. Definiere, wie vorherige Ergebnisse Referenzen wie $id_108 erhalten und wie diese Referenzen an spätere Ausdrücke übergeben werden können; abgeschlossen ist die Aufgabe, wenn Ergebnisse wiederverwendet werden können, ohne Aufrufe zu wiederholen, auch als Objekt- oder Array-Argumente.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
java, typescript
Bereich
devtools
Issue-Typ
Feature
Schwierigkeit
5/5
Geschätzter Aufwand
Über eine Woche
Aktivitätsstatus
Veraltet
Klarheit
Größtenteils klar
Anfängerfreundlichkeit
25/100

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.