From: Matt Borchers <mattborchers@gmail.com>
Subject: Re: stopping a loop iteration without exiting it
Date: Sat, 6 Jan 2018 18:05:23 -0800 (PST)
Date: 2018-01-06T18:05:23-08:00 [thread overview]
Message-ID: <bac41ff8-4495-4717-afba-076ec0348fd2@googlegroups.com> (raw)
In-Reply-To: <p2rh4m$2ms$1@dont-email.me>
On Saturday, January 6, 2018 at 5:04:08 PM UTC-5, J-P. Rosen wrote:
> Le 06/01/2018 à 01:26, Matt Borchers a écrit :
> > begin
> > ...
> > exception
> > when EX1 => ...
> > when EX2 => ...
> > when others => ...
> > finally
> > ...
> > end;
> >
> > This would allow programmers to handle common cleanup operations that would otherwise have to be duplicated in every exception case.
> Actually, it is possible (ever since Ada 83!) to have a common part for
> all exception handlers, and then different handlings according to the
> exception:
>
> exception
> when others =>
> begin
> Common_Part;
> raise;
> exception
> when EX1 => ...
> when EX2 => ...
> ...
> end;
> end
>
> --
> J-P. Rosen
> Adalog
> 2 rue du Docteur Lombard, 92441 Issy-les-Moulineaux CEDEX
> Tel: +33 1 45 29 21 52, Fax: +33 1 45 29 25 00
> http://www.adalog.fr
Interesting, but to get the common part to execute AFTER the exception handling looks very strange and begs for a better solution that to re-raise the exception in the first line of the exception handler.
exception
when others =>
begin
raise;
exception
when EX1 => ...
when EX2 => ...
...
end;
Common_Part;
end;
next prev parent reply other threads:[~2018-01-07 2:05 UTC|newest]
Thread overview: 80+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-01-03 16:54 stopping a loop iteration without exiting it Mehdi Saada
2018-01-03 17:23 ` Lucretia
2018-01-03 21:19 ` Randy Brukardt
2018-01-03 23:17 ` Robert A Duff
2018-01-04 8:47 ` Niklas Holsti
2018-01-05 1:31 ` Randy Brukardt
2018-01-04 10:08 ` Jeffrey R. Carter
2018-01-04 11:02 ` Dmitry A. Kazakov
2018-01-04 19:46 ` Robert A Duff
2018-01-04 20:47 ` Mehdi Saada
2018-01-04 21:17 ` Dmitry A. Kazakov
2018-01-04 23:08 ` Niklas Holsti
2018-01-05 8:38 ` Dmitry A. Kazakov
2018-01-06 16:50 ` Niklas Holsti
2018-01-06 17:20 ` Dmitry A. Kazakov
2018-01-07 11:36 ` Niklas Holsti
2018-01-07 12:05 ` Dmitry A. Kazakov
2018-01-07 21:22 ` Niklas Holsti
2018-01-08 8:35 ` Dmitry A. Kazakov
2018-01-08 20:57 ` Randy Brukardt
2018-01-08 21:19 ` Dmitry A. Kazakov
2018-01-08 21:48 ` Submitting requests to the ARG, was: " Simon Clubley
2018-01-09 9:45 ` Dmitry A. Kazakov
2018-01-08 22:35 ` Jeffrey R. Carter
2018-01-05 16:34 ` Robert A Duff
2018-01-05 19:09 ` G. B.
2018-01-07 11:52 ` Niklas Holsti
2018-01-07 12:27 ` Dmitry A. Kazakov
2018-01-06 0:53 ` Keith Thompson
2018-01-06 8:36 ` Dmitry A. Kazakov
2018-01-06 8:49 ` gautier_niouzes
2018-01-06 9:26 ` Dmitry A. Kazakov
2018-01-08 11:05 ` mockturtle
2018-01-09 11:05 ` AdaMagica
2018-01-09 11:26 ` Dmitry A. Kazakov
2018-01-09 12:50 ` Simon Wright
2018-01-09 13:07 ` Dmitry A. Kazakov
2018-01-09 13:47 ` Dennis Lee Bieber
2018-01-09 14:53 ` Dmitry A. Kazakov
2018-01-09 20:07 ` G. B.
2018-01-10 8:13 ` Dmitry A. Kazakov
2018-01-10 21:14 ` G. B.
2018-01-11 12:48 ` AdaMagica
2018-01-11 20:54 ` G. B.
2018-01-11 13:06 ` Dmitry A. Kazakov
2018-01-11 17:11 ` Simon Wright
2018-01-11 17:30 ` Dmitry A. Kazakov
2018-01-11 18:09 ` Simon Wright
2018-01-11 20:54 ` G. B.
2018-01-12 8:20 ` Dmitry A. Kazakov
2018-01-12 9:22 ` G. B.
2018-01-12 9:42 ` Dmitry A. Kazakov
2018-01-10 10:52 ` AdaMagica
2018-01-10 11:14 ` Dmitry A. Kazakov
2018-01-10 11:21 ` AdaMagica
2018-01-10 13:47 ` Dmitry A. Kazakov
2018-01-04 21:52 ` Mart van de Wege
2018-01-05 13:17 ` Jeffrey R. Carter
2018-01-05 14:35 ` Mart van de Wege
2018-01-05 15:21 ` Jeffrey R. Carter
2018-01-05 19:13 ` Paul Rubin
2018-01-05 23:50 ` Randy Brukardt
2018-01-06 1:19 ` G. B.
2018-01-06 9:59 ` Jeffrey R. Carter
2018-01-05 1:17 ` Randy Brukardt
2018-01-05 14:05 ` Jeffrey R. Carter
2018-01-05 23:58 ` Randy Brukardt
2018-01-04 12:43 ` gautier_niouzes
2018-01-03 17:28 ` Jeffrey R. Carter
2018-01-03 18:27 ` Mehdi Saada
2018-01-06 0:26 ` Matt Borchers
2018-01-06 22:04 ` J-P. Rosen
2018-01-07 2:05 ` Matt Borchers [this message]
2018-01-08 20:49 ` Randy Brukardt
2018-01-07 11:33 ` Mehdi Saada
2018-01-07 11:45 ` Simon Wright
2018-01-08 0:58 ` Matt Borchers
2018-01-07 17:47 ` Micah Waddoups
2018-01-07 21:04 ` Simon Wright
2018-01-23 3:49 ` Robert Eachus
replies disabled
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox