OSSP CVS Repository

ossp - Difference in ossp-pkg/ex/ex.pod versions 1.9 and 1.10
Not logged in
[Honeypot]  [Browse]  [Home]  [Login]  [Reports
[Search]  [Ticket]  [Timeline
  [History

ossp-pkg/ex/ex.pod 1.9 -> 1.10

--- ex.pod       2002/01/29 20:10:53     1.9
+++ ex.pod       2002/01/30 10:33:36     1.10
@@ -36,13 +36,13 @@
 
 B<ex_t> I<variable>;
 
-B<ex_try> { ... } B<ex_catch> (I<variable>) { ... }
+B<ex_try> {...} [B<ex_cleanup> {...}] B<ex_catch> (I<variable>) {...}
 
 B<ex_throw>(I<class>, I<object>, I<value>);
 
 B<ex_rethrow>;
 
-B<ex_shield> { ... };
+B<ex_shield> {...};
 
 if (B<ex_catching>) ...
 
@@ -53,7 +53,7 @@
 B<OSSP ex> is a small ISO-C++ style exception handling library for use
 in the ISO-C language. It allows you to use the paradigm of throwing
 and catching exceptions in order to reduce the amount of error handling
-code in without making your program less robust. This is achieved
+code without making your program less robust. This is achieved
 by directly transferring exceptional return codes (and the program
 control flow) from the location where it was raised (throw point) to
 the location where it is handled (catch point) - usually from a deeply
@@ -133,22 +133,25 @@
 
 =back
 
-=item B<ex_try> { ... } B<ex_catch> (I<variable>) { ... }
+=item B<ex_try> {...} [B<ex_cleanup> {...}] B<ex_catch> (I<variable>) {...}
 
 This is the main construct provided by B<OSSP ex>. It is modeled after
 the ISO-C++ C<try>-C<catch> construct which in turn is very similar to
 an ISO-C C<if>-C<else> construct. It consists of an B<ex_try> block
 which forms the dynamic scope of the exception handling (i.e. exceptions
-thrown there are or from routines called from there are catched) and a
+directly thrown there or thrown from subroutines are catched), an
+optional B<ex_cleanup> block for performing cleanup sequences and a
 B<ex_catch> block where the caught exceptions are handled.
 
-The B<ex_trx> and B<ex_catch> cannot be used seperately, they work only
-in combination. In contrast to ISO-C++ there is only one B<ex_catch>
-block and not multiple ones (all B<OSSP ex> exceptions are of the
-same ISO-C type B<ex_t>). If an exception is caught, it is stored in
-I<variable> for inspection (or re-throwing) inside the B<ex_catch>
-block. Although declared outside, the I<variable> is only valid
-within the B<ex_catch> block. But it can be re-used in following
+# CONTROL FLOW FIXME!
+
+The B<ex_try>, B<ex_cleanup> and B<ex_catch> cannot be used seperately,
+they work only in combination. In contrast to ISO-C++ there is only
+one B<ex_catch> block and not multiple ones (all B<OSSP ex> exceptions
+are of the same ISO-C type B<ex_t>). If an exception is caught, it
+is stored in I<variable> for inspection (or re-throwing) inside the
+B<ex_catch> block. Although declared outside, the I<variable> is only
+valid within the B<ex_catch> block. But it can be re-used in following
 B<ex_try>/B<ex_catch> constructs, of course.
 
 The B<ex_try> block is a regular ISO-C language block, but it is not
@@ -182,7 +185,7 @@
 I<variable>.ex_value) but with the difference that the C<ex_file>,
 C<ex_line> and C<ex_func> elements of the thrown exception are kept.
 
-=item B<ex_shield> { ... }
+=item B<ex_shield> {...}
 
 This directive executes its block while shielding against the throwing
 of exceptions, i.e., in the dynamic scope of B<ex_shield> any
@@ -232,7 +235,7 @@
 
 This is called by the epilog of B<ex_try> to perform additional
 operations at the new (restored) machine context after an exception was
-cought. Usually this is a no-operation macro.
+caught. Usually this is a no-operation macro.
 
 =item B<__ex_mctx_restore>(I<mctx>)
 

CVSTrac 2.0.1