Figure 3-17. Using Nested Keep And Release Handlers (Page 1 Of 2) - HP TACL Programming Manual

Tandem advanced command language
Table of Contents

Advertisement

For this example, the keep handler terminates if you enter an EXIT command.
Usually, a keep handler does not provide an exit mechanism.

Figure 3-17. Using Nested Keep and Release Handlers (Page 1 of 2)

?SECTION restricted_caller ROUTINE
[#CASE [#EXCEPTION]
|_CALL|
#FRAME
#PUSH cmd exceptionlist
#SET exceptionlist _BREAK _ERROR EXIT
|_BREAK|
#OUTPUT BREAK key pressed.
|_ERROR|
#OUTPUT TACL error occurred.
| EXIT |
== for demonstration purposes
#RESET FRAMES RESULTS
#RETURN
|OTHERWISE|
#OUTPUT Unknown exception occurred.
]
== End CASE
== Filter for predefined exceptions only
#FILTER [exceptionlist]
[#LOOP |DO|
#SET cmd [#INPUT Enter cmd: ]
[#CASE [cmd]
|ADD|
protected_code do_add
|SUB|
protected_code do_sub
|EXIT|
== For demonstration purposes
#RAISE EXIT
|OTHERWISE|
#OUTPUT Invalid command
#RAISE _ERROR
]
== End CASE
|UNTIL| 0 = 1 ==
]
== End LOOP
#UNFRAME
107365 Tandem Computers Incorporated
== Get value from terminal
(do forever)
Developing TACL Routines
Writing an Exception Handler
3–31

Hide quick links:

Advertisement

Table of Contents
loading

Table of Contents