home *** CD-ROM | disk | FTP | other *** search
/ TestDrive Super Store 3.0 / TESTDRIVE_3.ISO / realizer / lib / stderror.rlz < prev    next >
Encoding:
Text File  |  1992-09-30  |  1.6 KB  |  60 lines

  1. '***********************************************************************
  2. '    StdError.rlz                              
  3. '
  4. '    Standard Error Library
  5. '
  6. '    Copyright ⌐ 1991-1992 Computer Associates International, Inc.
  7. '    All rights reserved.
  8. '
  9. '***********************************************************************
  10.  
  11. IF QVar(%%StdError, _Defined) THEN
  12.     EXIT MACRO
  13. END IF
  14. %%StdError = 1
  15.  
  16. PROC ECType(ggActual, tExpected, rsParamNum)
  17.     IF Not(QVar(ggActual, tExpected)) THEN
  18.         IF Not(QVar(ggActual, _Defined)) THEN
  19.             IF rsParamNum > 0 THEN
  20.                 STOP USING Sprint("Parameter P(0): Undefined value.", rsParamNum), 2
  21.             ELSE
  22.                 STOP USING Sprint("Modifier P(0): Undefined value.", -rsParamNum), 2
  23.             END IF
  24.         ELSE
  25.             IF rsParamNum > 0 THEN
  26.                 STOP USING Sprint("Parameter P(0): Incorrect type.", rsParamNum), 2
  27.             ELSE
  28.                 STOP USING Sprint("Modifier P(0): Incorrect type.", -rsParamNum), 2
  29.             END IF
  30.         END IF
  31.     END IF
  32. END PROC
  33.  
  34. PROC ECProto(rsNumParams, rsMax, asProto)
  35.     IF rsNumParams > rsMax THEN
  36.         STOP USING "Syntax: " + asProto, 2
  37.     END IF
  38. END PROC
  39.  
  40. PROC ECMods(rsNumMods, rsMax, asProto)
  41.     IF rsNumMods > rsMax THEN
  42.         STOP USING "Syntax: " + asProto, 2
  43.     END IF
  44. END PROC
  45.  
  46. PROC ECRange(rsActual, rsMin, rsMax, rsParamNum)
  47.     IF rsActual < rsMin OR rsActual > rsMax THEN
  48.         IF rsParamNum > 0 THEN
  49.             STOP USING Sprint("Parameter P(0) is out of range P(0)..P(0).", rsParamNum, rsMin, rsMax), 2
  50.         ELSE
  51.             STOP USING Sprint("Modifier P(0) is out of range P(0)..P(0).", -rsParamNum, rsMin, rsMax), 2
  52.         END IF
  53.     END IF
  54. END PROC
  55.  
  56. PROC ECCond(rsCond, asMsg)
  57.     IF Not(rsCond) THEN
  58.         STOP USING asMsg, 2
  59.     END IF
  60. END PROC