swirl
Guide to OmniMark 7   OmniMark home
docs home 
IndexConceptsTasksSyntaxLibrariesLegacy LibrariesErrors
 
  Related Syntax    
declaration/definition  

declare catch

 
 

Syntax

  (declare | export | require) catch catch-name catch-parameter*


Purpose

You can use declare catch to declare the name and the parameters of a catch that you will use elsewhere in your program. The following declares a catch named no-planet:

  declare catch no-planet

A catch declared in a module may use "export" instead of "declare" to make it available to the importing program or module.

A catch declared in a module may use "require" instead of "declare". The program or module that imports this module must supply a catch, using a supply clause in the import statement. The supplied catch must match the required one in all respects except its name and the names of its arguments.

The catch declaration can also declare parameters, following the same form as function parameters. Read-only, value, and remainder parameters are supported, but not modifiable. Optional parameters are not supported. See declare function for a full description of function parameters.

The following is an example of a catch declaration with parameters:

  declare catch invalid-item
   value stream the-item
   error value stream the-error
   times value integer num-times 

Catches can use either the heralded or parameterized form for declaring arguments, just like function definitions. The same considerations as for functions apply to choosing one or the other.

It is a compile-time error to use a catch that has not been declared. It is also a compile-time error to declare the same catch twice.

    Related Syntax
   catch
 
 
 

Top [ INDEX ] [ CONCEPTS ] [ TASKS ] [ SYNTAX ] [ LIBRARIES ] [ LEGACYLIBRARIES ] [ ERRORS ]

OmniMark 7.1.2 Documentation Generated: June 28, 2005 at 5:45:09 pm
If you have any comments about this section of the documentation, send email to [email protected]

Copyright © Stilo Corporation, 1988-2005.