AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Projekte UnitOptimizer
Thema durchsuchen
Ansicht
Themen-Optionen

UnitOptimizer

Ein Thema von stahli · begonnen am 25. Mai 2018 · letzter Beitrag vom 31. Okt 2021
 
Benutzerbild von stahli
stahli

Registriert seit: 26. Nov 2003
Ort: Halle/Saale
4.355 Beiträge
 
Delphi 11 Alexandria
 
#34

AW: UnitOptimizer

  Alt 31. Okt 2021, 16:29
Die bedingten Kompilierungen ziehen mir noch den Zahn.

Jetzt wollte ich mich endlich mal dem Problem der auf allen Wegen aufgehenden begin...ends widmen und schon stellt sich ein anderes Problem. Oder doch nicht?

Die Vererbungen und Verwendung von Interfaces in Klassendeklarationen soll der Optimizer berücksichtigen und entsprechenden Code vervollständigen. Dazu schlägt er auch in verwendeten Units (aus den Uses-Klauseln) nach.
In folgendem Beispiel werden vom Compiler je nach Situation unterschiedliche Units verwendet, was ich wohl nicht prüfen kann.
Ich würde zwar nicht davon ausgehen, dass in solchen Konstellationen verschiedene Basisklassen oder Interfaces zur Anwendung kommen, aber man weiß ja nie. :-/

Ich weiß jetzt nicht, was der richtige Ansatz ist.

Für das Einrücken von Code müsste ich immer alle möglichen Wege durchgehen (Bedingung erfüllt und nicht erfüllt).

Für das Prüfen auf gültige Bindungen (begin...ends z.B.) würde es reichen, nur die Wege zu prüfen, die der Compiler anhand seiner Einstellungen gerade gehen würde. Aber ich weiß ja nicht, ob der Programmierer mit oder ohne Compiler kompilieren wird.

Ich habe einfach überhaupt keine Idee, wie ich an das Problem heran gehen soll.

Vermutlich kann ich keine Unterscheidungen nach definierten Bedingungen machen und muss immer alle möglichen Wege durchgehen.
Beim Nachschauen in anderen Units nach Basisklassen und Interfacedeklarationen werde ich die erste passende Unit verwenden, unabhängig ob sie von einer bedingten Kompilierung abhängig ist oder nicht.

Ist schon alles sehr komplex geworden inzwischen.

Ja dazu evtl. jemand Erfahrungen oder Hinweise?

Delphi-Quellcode:
  uses ..

 JvExExtCtrls, JvExtComponent, JvCaptionPanel

    //unterschiedliche pas dateien im Debugmodus / releaseModus
   {$IFDEF DEBUG} , Codes_Debug {$ELSE}, Codes_Release {$ENDIF} ;
Stahli
http://www.StahliSoft.de
---
"Jetzt muss ich seh´n, dass ich kein Denkfehler mach...!?" Dittsche (2004)
  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 07:28 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz