Hex Artifact Content Вы: nobody
Вход

Artifact 302194101722beeef25a2b31bf59f8e812982983:


0000: 24 65 6e 67 69 6e 65 20 4a 53 63 72 69 70 74 0d  $engine JScript.
0010: 0a 24 75 6e 61 6d 65 20 74 65 73 74 45 78 63 65  .$uname testExce
0020: 70 74 69 6f 6e 73 4c 69 62 0d 0a 0d 0a 76 61 72  ptionsLib....var
0030: 20 45 72 72 6f 72 48 61 6e 64 6c 65 72 20 3d 20   ErrorHandler = 
0040: 6e 75 6c 6c 3b 0d 0a 0d 0a 66 75 6e 63 74 69 6f  null;....functio
0050: 6e 20 53 65 74 45 72 72 6f 72 48 61 6e 64 6c 65  n SetErrorHandle
0060: 72 28 65 72 72 6f 72 48 61 6e 64 6c 65 72 29 0d  r(errorHandler).
0070: 0a 7b 0d 0a 20 20 20 20 45 72 72 6f 72 48 61 6e  .{..    ErrorHan
0080: 64 6c 65 72 20 3d 20 65 72 72 6f 72 48 61 6e 64  dler = errorHand
0090: 6c 65 72 3b 0d 0a 7d 0d 0a 0d 0a 66 75 6e 63 74  ler;..}....funct
00a0: 69 6f 6e 20 74 68 72 6f 77 45 72 72 6f 72 28 65  ion throwError(e
00b0: 29 0d 0a 7b 0d 0a 20 20 20 20 69 66 20 28 45 72  )..{..    if (Er
00c0: 72 6f 72 48 61 6e 64 6c 65 72 29 0d 0a 20 20 20  rorHandler)..   
00d0: 20 7b 0d 0a 20 20 20 20 20 20 20 20 45 72 72 6f   {..        Erro
00e0: 72 48 61 6e 64 6c 65 72 2e 63 61 6c 6c 28 6e 75  rHandler.call(nu
00f0: 6c 6c 2c 20 65 29 3b 20 20 20 0d 0a 20 20 20 20  ll, e);   ..    
0100: 20 20 20 20 2f 2f 45 72 72 6f 72 48 61 6e 64 6c      //ErrorHandl
0110: 65 72 28 65 29 3b 20 20 20 0d 0a 20 20 20 20 20  er(e);   ..     
0120: 20 20 20 72 65 74 75 72 6e 20 65 3b 0d 0a 20 20     return e;..  
0130: 20 20 7d 0d 0a 0d 0a 20 20 20 20 74 68 72 6f 77    }....    throw
0140: 20 65 3b 0d 0a 7d 0d 0a 0d 0a 66 75 6e 63 74 69   e;..}....functi
0150: 6f 6e 20 74 68 72 6f 77 45 72 72 6f 72 46 75 6e  on throwErrorFun
0160: 63 74 69 6f 6e 28 29 0d 0a 7b 0d 0a 20 20 20 20  ction()..{..    
0170: 74 68 72 6f 77 20 22 45 78 63 65 70 69 74 6f 6e  throw "Excepiton
0180: 20 66 72 6f 6d 20 74 65 73 74 45 78 63 65 70 74   from testExcept
0190: 69 6f 6e 73 4c 69 62 2e 74 68 72 6f 77 45 72 72  ionsLib.throwErr
01a0: 6f 72 46 75 6e 63 74 69 6f 6e 28 29 22 3b 0d 0a  orFunction()";..
01b0: 7d 0d 0a 0d 0a 66 75 6e 63 74 69 6f 6e 20 6d 61  }....function ma
01c0: 63 72 6f 73 54 68 72 6f 77 45 72 72 6f 72 4d 61  crosThrowErrorMa
01d0: 63 72 6f 73 28 29 0d 0a 7b 0d 0a 20 20 20 20 74  cros()..{..    t
01e0: 68 72 6f 77 20 22 45 78 63 65 70 69 74 6f 6e 20  hrow "Excepiton 
01f0: 66 72 6f 6d 20 74 65 73 74 45 78 63 65 70 74 69  from testExcepti
0200: 6f 6e 73 4c 69 62 2e 74 68 72 6f 77 45 72 72 6f  onsLib.throwErro
0210: 72 4d 61 63 72 6f 73 28 29 22 3b 0d 0a 7d 0d 0a  rMacros()";..}..
0220: 0d 0a 66 75 6e 63 74 69 6f 6e 20 74 68 72 6f 77  ..function throw
0230: 45 72 72 6f 72 46 75 6e 63 74 69 6f 6e 57 6f 72  ErrorFunctionWor
0240: 6b 61 72 6f 75 6e 64 28 29 0d 0a 7b 0d 0a 20 20  karound()..{..  
0250: 20 20 74 68 72 6f 77 45 72 72 6f 72 28 22 45 78    throwError("Ex
0260: 63 65 70 69 74 6f 6e 20 66 72 6f 6d 20 74 65 73  cepiton from tes
0270: 74 45 78 63 65 70 74 69 6f 6e 73 4c 69 62 2e 74  tExceptionsLib.t
0280: 68 72 6f 77 45 72 72 6f 72 46 75 6e 63 74 69 6f  hrowErrorFunctio
0290: 6e 28 29 22 29 3b 0d 0a 7d 0d 0a 0d 0a           n()");..}....