AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Projekte Delphi-Parser mit Anwendung "Referenzen suchen"
Thema durchsuchen
Ansicht
Themen-Optionen

Delphi-Parser mit Anwendung "Referenzen suchen"

Ein Thema von DenkDirNix · begonnen am 19. Apr 2020 · letzter Beitrag vom 23. Apr 2021
 
DenkDirNix

Registriert seit: 13. Dez 2018
66 Beiträge
 
Delphi 11 Alexandria
 
#1

Delphi-Parser mit Anwendung "Referenzen suchen"

  Alt 19. Apr 2020, 14:47
Moinsen,

ich habe ein altes Tool (aus 2003 für Delphi7) mal etwas aufgefrischt und würde mich über freundliche oder hilfreiche Kommentare freuen. Motivation war die Unzulänglichkeit der IDE für die projektweite Suche im Quelltext und die Funktion "Referenzen suchen" (find References).

Was tut das Tool
  • Input ist ein übersetzbares Delphi-Projekt, eine Library oder Package. Die Entwicklung basiert auf dem Sprachumfang von Delphi 10.3.3.
  • Source-Files werden geparst und alle Elemente entsprechend der statischen Blockstruktur mit Typ-Informationen in einen TreeView einsortiert. Elemente sind im wesentlichen die Identifier, aber auch Pascal-Direktiven und -Attribute, Compiler-Direktiven und -Schalter, Literale und Dateinamen sowie falls gewünscht die Keywords.
  • Alle Referenzen (also textuelle Vorkommen) dieser Ids werden daneben als Liste von Code-Snippets angezeigt. Dazu der Referenz-Typ, also deklarierend, lesend, schreibend, weiterreichend. Alle Identifier in diesen Code-Snippets sind hyperlinked zum TreeView (per DoppelClick).

Nutzen
  • Zusätzlich zum üblichen funktionsbezogen-sequentiellen Blick auf die Anweisungen im Quellcode bekommt man schnellen Zugriff auf den "Lebenslauf" eines Identifiers.
  • schnelles projektweites und intelligentes (weil syntax- statt text-basiertes) Suchen und Umbenennen
  • Anbindung an IDE per Drag&Drop: Ziehen einer Referenz in die IDE springt zu dieser Codestelle
  • Filterung nach speziellen Nutzungen (z.B. ungenutzte Variablen, Generics, Overloads ,...)

Specials
  • Units dürfen fehlen. Nicht deklarierte Elemente werden in einer <Unresolved-unscoped>-Liste geführt. Natürlich ist solch ein Ergebnis nicht mehr exakt, trotzdem kann man idR damit arbeiten.
  • Ids aus System.pas sind rudimentär integriert, können nach Bedarf ergänzt werden.
  • Anzeige als Nassi-Shneiderman-Diagramm

Anzeige und Bedienung
  • siehe Hilfe-Datei

Aktueller Download aus meiner DropBox.
Miniaturansicht angehängter Grafiken
RefPicFilteredName.jpg   RefPicOptions.jpg   RefPicFilters.jpg   RefPicMain.jpg   RefPicFilteredHierarchie.jpg  

RefPicFilteredGenerics.jpg   Diagramm.jpg  

Geändert von DenkDirNix (22. Jan 2024 um 16:29 Uhr) Grund: neue Version
  Mit Zitat antworten Zitat
 

 

Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 09:17 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz