ViewerErrorsImpl.mesa
Copyright Ó 1991 by Xerox Corporation. All rights reserved.
Christian Jacobi, September 5, 1991 11:51 am PDT
DIRECTORY ViewerErrors;
ViewerErrorsImpl: CEDAR MONITOR
EXPORTS ViewerErrors ~
BEGIN OPEN 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.