ViewerErrorsImpl.mesa
Copyright Ó 1991 by Xerox Corporation. All rights reserved.
Christian Jacobi, September 5, 1991 11:51 am PDT
ViewerErrorsImpl:
CEDAR
MONITOR
EXPORTS ViewerErrors ~
RegistrationPair: TYPE = RECORD [signalOrError: SIGANY, handle: PreCatchProc];
registrations: LIST OF RegistrationPair ¬ NIL;
Register:
PUBLIC ENTRY
PROC [signalOrError:
SIGANY, handle: PreCatchProc] = {
registrations ¬ CONS[[signalOrError, handle], registrations];
};
Query:
PUBLIC
PROC [signalOrError:
SIGANY]
RETURNS [continue:
BOOL ¬
FALSE] = {
FOR l:
LIST
OF RegistrationPair ¬ registrations, l.rest
WHILE l#
NIL
DO
IF l.first.signalOrError=signalOrError THEN RETURN [l.first.handle[signalOrError]]
ENDLOOP
};
END.