-- file: ExceptionDefs.Mesa -- edited by Brotz, June 24, 1982 10:43 AM -- edited by Levin, August 6, 1980 4:47 PM -- edited by Schroeder, August 6, 1980 4:47 PM exD: DEFINITIONS = PUBLIC BEGIN -- Exceptions Department of the Interactor Division -- Provides mnemonic constants identifying exception strings defined in IntExceptions. maxExceptionStringLength: CARDINAL = 100; Exception: TYPE = CARDINAL; nil: Exception = 0; tryToContinue: Exception = 1; recursiveTrouble: Exception = 2; mustEndSession: Exception = 3; unrecDiskError: Exception = 4; systemError: Exception = 5; autoErrorReport: Exception = 6; noBugReportFile: Exception = 7; cannotProceed: Exception = 8; cantConnect: Exception = 9; loginTryAgain: Exception = 10; noMailboxes: Exception = 11; newMailOverfill: Exception = 12; tocOverflow: Exception = 13; noNewMail: Exception = 14; probDiskError: Exception = 15; diskFull: Exception = 16; dotsEmpty: Exception = 17; dots: Exception = 18; emptySemi: Exception = 19; semi: Exception = 20; moveTargetExists: Exception = 21; cantAnswer: Exception = 22; willReplaceMessage: Exception = 23; answerIncomplete: Exception = 24; confirmMessage: Exception = 25; illegalCommand: Exception = 26; noCurrentFile: Exception = 27; noSelectedEntries: Exception = 28; noUndeletedMessages: Exception = 29; cantDisplayMessage: Exception = 30; newFile: Exception = 31; cantMoveToFileInUse: Exception = 32; noMessagesMoved: Exception = 33; moveWouldOverfill: Exception = 34; noMoveIllegalName: Exception = 35; diskErrorTargetDamage: Exception = 36; cantForward: Exception = 37; noUndeletedEntries: Exception = 38; printerNotRespond: Exception = 39; cancelHardcopy: Exception = 40; printerBusy: Exception = 41; hardcopyCanceled: Exception = 42; printerTimeout: Exception = 43; printerTrouble: Exception = 44; cantFindPrinter: Exception = 45; cannotConnectToPrinter: Exception = 46; transmissionTo: Exception = 47; proceeding: Exception = 48; hardcopyTo: Exception = 49; completed: Exception = 50; onePagePrinted: Exception = 51; pagesPrinted: Exception = 52; suggestRestart: Exception = 53; internalError: Exception = 54; messageNotFiled: Exception = 55; noFileCantGetMail: Exception = 56; formatErrorCantGet: Exception = 57; mayBeTruncated: Exception = 58; tocOverflowSomeNotIndexed: Exception = 59; diskFullSomeNotIndexed: Exception = 60; illegalMailFileName: Exception = 61; diskErrorGetFailed: Exception = 62; returnMayBeDamaged: Exception = 63; programTooLarge: Exception = 64; insertionOverflow: Exception = 65; errorsDuringInstall: Exception = 66; totalMessageLengthTooBig: Exception = 67; textNotFound: Exception = 68; findHintOne: Exception = 69; findHintTwo: Exception = 70; oneSubMade: Exception = 71; noSubMade: Exception = 72; malformedSearchString: Exception = 73; installFailed: Exception = 74; noMessage: Exception = 75; notAuthentic: Exception = 76; tryAgainOrCancel: Exception = 77; wishToCancelDelivery: Exception = 78; errorNearSelection: Exception = 79; errorInDL: Exception = 80; cannotExpandDL: Exception = 81; unqualNameInDL: Exception = 82; arpaNeedsRegistry: Exception = 83; noRecipients: Exception = 84; unexpectedServerResp: Exception = 85; deliveryCanceled: Exception = 86; arpaAtExpansion: Exception = 87; passwordWritten: Exception = 88; maybeDelivered: Exception = 89; notDelivered: Exception = 90; expandingMsg: Exception = 91; deliveryToDL: Exception = 92; noValidRecipients: Exception = 93; uncertainClosing: Exception = 94; cantExpand: Exception = 95; busySemi: Exception = 96; anotherServer: Exception = 97; badServerNameSemi: Exception = 98; cantConnectToMailServer: Exception = 99; ftpError: Exception = 100; failedSemi: Exception = 101; fileNotFound: Exception = 102; cancelingDelivery: Exception = 103; fileTooLong: Exception = 104; ioError: Exception = 105; cantPut: Exception = 106; badCredentialsSemi: Exception = 107; dotsDidntRespond: Exception = 108; overflow: Exception = 109; unknownErrorSemi: Exception = 110; illegalBrackets: Exception = 111; pressToContinue: Exception = 112; pressSpaceWhenReady: Exception = 113; continuationHeader: Exception = 114; fileInUse: Exception = 115; confirmFileName: Exception = 116; commandsAre: Exception = 117; unrecCommand: Exception = 118; hytypeNotConnected: Exception = 119; getFailed: Exception = 120; messageTooBig: Exception = 121; putWillOverwrite: Exception = 122; runCanceled: Exception = 123; remoteFileWillOverwrite: Exception = 124; hardcopyCompleted: Exception = 125; noBlankFound: Exception = 126; retrievingRemoteFile: Exception = 127; printing: Exception = 128; versionMismatch: Exception = 129; requiredFileMissing: Exception = 130; bcdUnexecutable: Exception = 131; noReplyTo: Exception = 132; spare133: Exception = 133; spare134: Exception = 134; spare135: Exception = 135; spare136: Exception = 136; spare137: Exception = 137; spare138: Exception = 138; spare139: Exception = 139; SysBugSignal: SIGNAL [systemError: BOOLEAN]; SysBug: PROCEDURE [exception: Exception _ nil, message: STRING _ NIL]; -- Called when Laurel cannot proceed due to internal or user errors. When exception = nil -- and message = NIL, assumes that an internal error has occurred. Otherwise, -- assumes that a user error has occurred. DisplayException: PROCEDURE [exception: Exception _ nil]; -- Displays error messages in the exceptions region. DisplayExceptionString: PROCEDURE [string: STRING]; -- Displays error string in the exceptions region. DisplayExceptionLine: PROCEDURE [exception: Exception, lineNumber: CARDINAL]; -- Maps exception to its string and displays it on lineNumber of the exceptions region. DisplayExceptionStringOnLine: PROCEDURE [exceptionString: STRING, lineNumber: CARDINAL]; -- Displays exceptionString on lineNumber of the exceptions region. DisplayExceptionOrStringOnLine: PROCEDURE [exception: Exception, string: STRING, lineNumber: CARDINAL]; -- Displays exception if non-nil, otherwise string on lineNumber of the exceptions region. DisplayBothExceptionLines: PROCEDURE [string1: STRING, exception1: Exception, string2: STRING, exception2: Exception, flash: BOOLEAN _ TRUE]; -- Displays exception messages. Will use string1 if non-NIL and non-zero length, exception1 -- otherwise. Mutatis mutandis for string2. If flash, then will flash exceptions region. AppendStringToExceptionLine: PROCEDURE [s: STRING, line: CARDINAL]; -- Appends s to the text already on line. May signal ExceptionLineOverflow with parameter -- i being the index of the first character in s that doesn't fit on line. AppendExceptionToExceptionLine: PROCEDURE [exception: Exception, line: CARDINAL]; -- Appends exception to the text already on line. May signal ExceptionLineOverflow with -- parameter i being the the index of the first character in exception that doesn't fit on line. AppendDecimalToExceptionLine: PROCEDURE [n: CARDINAL, line: CARDINAL]; -- Appends n to the text already on line. May signal ExceptionLineOverflow with parameter -- i being the index of the first character in n that doesn't fit on line. ExceptionLineOverflow: ERROR [i: CARDINAL]; -- Raised by AppendStringToExceptionLine (see above). FlashExceptionsRegion: PROCEDURE; -- Flashes a rectangle within the exceptions region. ClearExceptionsRegion: PROCEDURE = INLINE -- Clears the exceptions region only if needed. {IF exceptionRegionDirty THEN RealClearExceptionsRegion[]}; exceptionRegionDirty: BOOLEAN; RealClearExceptionsRegion: PROCEDURE; -- Really clears the entire text area of the exceptions region. ExceptionType: TYPE = {Laurel, LaurelX}; InitializeExceptions: PROCEDURE; -- Must be called before BringInLaurelState. SetUpExceptionTable: PROCEDURE; -- Establishes proper table for Get/Append ExceptionString. GetExceptionString: PROCEDURE [exception: Exception, exceptionString: STRING]; -- Fills in caller supplied exceptionString with text corresponding to exception. AppendExceptionString: PROCEDURE [exception: Exception, exceptionString: STRING]; -- Appends text corresponding to exception to end of caller supplied exceptionString. SetExternalExceptionProc: PUBLIC PROCEDURE [proc: PROCEDURE [STRING] ]; -- Allows a loaded program to redirect exception output. To cancel, call this procedure with -- argument NIL. END. -- of ExceptionDefs -- z20638(635)\f1 8296f0