![]() |
Delphi-Version: 11 Alexandria
Funktion als Exception markieren?
Fehlerbehandlung in eine Prozedur ausgelagert und schon fängt der Spaß an, weil überall der Compiler mit Warnungen um sich schmeißt, welche "eigentlich" garnicht stimmen.
Wen hat das noch nicht genervt? (voten wenn ja, wäre bestimmt nett) ![]() Es gibt ja viele Sprachen, wo man zumindestens für die Dokumentation und teilweise auch für die Fehlerbehandlung zu seinen Funktionen irgendwie angeben kann ob und welche Exceptions zu erwarten sind, wenn man jene Methode ausführt. PS: ![]() ![]() ![]() |
AW: Funktion als Exception markieren?
Zitat:
Vielleicht auch als einziges. Aber das war wirklich immer klasse - Das wurde nicht zur Info angegeben, sondern der Aufrufer muss die Exception behandeln. Sonst wirft der Compiler dir das um die Ohren und sagt "Hey, hier kann eine FileNotFoundException auftreten, behandelst du die bitte?" |
AW: Funktion als Exception markieren?
Ein bissl Java ist im Delphi auch drin ... das muß auch GAAAAANZ viel sein, denn Jira will bei Quellcode immer zuerst {code:java} und man muß es selber nach delphi oder cpp umschreiben. :duck:
|
AW: Funktion als Exception markieren?
Zumindest per XMLDOC müsste es ab Delphi 11.1 gehen.
Habe aber den Namen des Tags vergessen... |
AW: Funktion als Exception markieren?
Code:
Aber das keinen Einfluss auf den Compiler.
/// <exception cref="ENotSupported">
/// Sender = nil /// </exception> |
AW: Funktion als Exception markieren?
Ja, das gibt es einen Tag. Den müsste man unschön in der Code-Completion den Code-Templates finden können.
Und Documentation Insight (Werbung) kann noch bissl mehr und schöner. Aber dem Compiler sind diese "Kommentare" leider Scheißegal. :cry: (der müsste ja erstmal deren Inhalt mit parsen, bzw. er braucht eher [Attribute] oder eben Direktiven) |
AW: Funktion als Exception markieren?
Zitat:
Zitat:
Zitat:
|
AW: Funktion als Exception markieren?
Zitat:
Gibt es keinen Pfad, der bis zum END führt, oder bei einem EXIT endet, bzw. gibt es ausschließlich Pfade, die bei einer Exception, Abort oder einer "mit exception" markierten Methode ankommen, dann ist es so. Und es muß nur noch an der Funktion gespeichert werden, dass es so ist, damit bei Verwendung/Aufruf das abgefragt werden kann. |
AW: Funktion als Exception markieren?
Ja okay, wie gesagt, möglich ist es ja. Zumindest, wenn man jetzt mal von ASM-Abschnitten, Zeigern, Labels/GoTos und OS-Fehlern absieht. Diese Sachen kann man halt nicht zuverlässig vorhersagen, aber das wird ja bei keiner der Warnungen auch nur versucht.
Aber ja, du hast wohl recht, wenn man das mit in den Methoden-Cache packt, dann ginge das schon ohne zu viel Overhead. |
AW: Funktion als Exception markieren?
Alternativ, eben, wie hier ursprünglich "gewünscht", dass der Entwickler es einfach manuell setzt.
Wenn der Code dann doch keine Exception auslöst, dass ist es einfach ein Fehler. So als Option an die Deklaration. Attribute oder eben so wie inline/virtual/abstract/cdecl/... |
Alle Zeitangaben in WEZ +1. Es ist jetzt 08:19 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