Hex Artifact Content Вы: nobody
Вход

Artifact 58b1b965183684884ca91d5104ac62a6df7089cf:


0000: ef bb bf 24 65 6e 67 69 6e 65 20 4a 53 63 72 69  ...$engine JScri
0010: 70 74 0d 0a 24 75 6e 61 6d 65 20 53 79 6e 74 61  pt..$uname Synta
0020: 78 41 6e 61 6c 79 73 69 73 0d 0a 24 64 6e 61 6d  xAnalysis..$dnam
0030: 65 20 d0 9a d0 bb d0 b0 d1 81 d1 81 20 53 79 6e  e .......... Syn
0040: 74 61 78 41 6e 61 6c 79 73 69 73 0d 0a 24 61 64  taxAnalysis..$ad
0050: 64 69 6e 20 67 6c 6f 62 61 6c 0d 0a 24 61 64 64  din global..$add
0060: 69 6e 20 73 74 64 6c 69 62 0d 0a 0d 0a 2f 2f 2f  in stdlib....///
0070: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f  ////////////////
0080: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f  ////////////////
0090: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f  ////////////////
00a0: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f  ////////////////
00b0: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f  ////////////////
00c0: 2f 2f 2f 2f 2f 0d 0a 2f 2f 2f 2f 7b 20 43 d0 ba  /////..////{ C..
00d0: d1 80 d0 b8 d0 bf d1 82 2d d0 b1 d0 b8 d0 b1 d0  ........-.......
00e0: bb d0 b8 d0 be d1 82 d0 b5 d0 ba d0 b0 20 53 79  ............. Sy
00f0: 6e 74 61 78 41 6e 61 6c 79 73 69 73 20 28 53 79  ntaxAnalysis (Sy
0100: 6e 74 61 78 41 6e 61 6c 79 73 69 73 2e 6a 73 29  ntaxAnalysis.js)
0110: 20 d0 b4 d0 bb d1 8f 20 d0 bf d1 80 d0 be d0 b5   ...... ........
0120: d0 ba d1 82 d0 b0 20 22 d0 a1 d0 bd d0 b5 d0 b3  ...... "........
0130: d0 be d0 bf d0 b0 d1 82 22 0d 0a 2f 2f 2f 2f 0d  ........"..////.
0140: 0a 2f 2f 2f 2f 20 d0 9e d0 bf d0 b8 d1 81 d0 b0  .//// ..........
0150: d0 bd d0 b8 d0 b5 3a 20 d0 a0 d0 b5 d0 b0 d0 bb  ......: ........
0160: d0 b8 d0 b7 d1 83 d0 b5 d1 82 20 d1 84 d1 83 d0  .......... .....
0170: bd d0 ba d1 86 d0 b8 d0 be d0 bd d0 b0 d0 bb 20  ............... 
0180: d0 bf d0 be 20 63 d0 b8 d0 bd d1 82 d0 b0 d0 ba  .... c..........
0190: d1 81 d0 b8 d1 87 d0 b5 d1 81 d0 ba d0 be d0 bc  ................
01a0: d1 83 20 d0 b0 d0 bd d0 b0 d0 bb d0 b8 d0 b7 d1  .. .............
01b0: 83 20 d0 b8 d1 81 d1 85 d0 be d0 b4 d0 bd d0 be  . ..............
01c0: d0 b3 d0 be 20 d0 ba d0 be d0 b4 d0 b0 20 d0 bd  .... ........ ..
01d0: d0 b0 20 0d 0a 2f 2f 2f 2f 20 d0 b2 d0 bd d1 83  .. ..//// ......
01e0: d1 82 d1 80 d0 b5 d0 bd d0 bd d0 b5 d0 bc 20 d1  .............. .
01f0: 8f d0 b7 d1 8b d0 ba d0 b5 20 31 d0 a1 3a d0 9f  ......... 1..:..
0200: d1 80 d0 b5 d0 b4 d0 bf d1 80 d0 b8 d1 8f d1 82  ................
0210: d0 b8 d1 8f 20 38 2e 0d 0a 2f 2f 2f 2f 20 0d 0a  .... 8...//// ..
0220: 2f 2f 2f 2f 20 d0 9e d1 81 d0 bd d0 be d0 b2 d0  //// ...........
0230: b0 d0 bd d0 b0 20 d0 bd d0 b0 20 d0 b8 d1 81 d1  ..... .... .....
0240: 85 d0 be d0 b4 d0 bd d0 be d0 bc 20 d0 ba d0 be  ........... ....
0250: d0 b4 d0 b5 20 d1 81 d0 ba d1 80 d0 b8 d0 bf d1  .... ...........
0260: 82 d0 bb d0 b5 d1 82 d0 b0 20 53 79 6e 74 61 78  ......... Syntax
0270: 41 6e 61 6c 79 73 69 73 2e 77 73 63 20 d0 b4 d0  Analysis.wsc ...
0280: bb d1 8f 20 d0 bf d1 80 d0 be d0 b5 d0 ba d1 82  ... ............
0290: d0 b0 20 4f 70 65 6e 43 6f 6e 66 2e 0d 0a 2f 2f  .. OpenConf...//
02a0: 2f 2f 0d 0a 2f 2f 2f 2f 20 d0 90 d0 b2 d1 82 d0  //..//// .......
02b0: be d1 80 20 53 79 6e 74 61 78 41 6e 61 6c 79 73  ... SyntaxAnalys
02c0: 69 73 2e 77 73 63 3a 20 d0 90 d0 bb d0 b5 d0 ba  is.wsc: ........
02d0: d1 81 d0 b5 d0 b9 20 d0 94 d0 b8 d1 80 d0 ba d1  ...... .........
02e0: 81 20 3c 61 64 69 72 6b 73 40 6e 67 73 2e 72 75  . <adirks@ngs.ru
02f0: 3e 20 20 0d 0a 2f 2f 2f 2f 20 d0 90 d0 b2 d1 82  >  ..//// ......
0300: d0 be d1 80 20 d0 bf d0 be d1 80 d1 82 d0 b0 3a  .... ..........:
0310: 20 d0 90 d0 bb d0 b5 d0 ba d1 81 d0 b0 d0 bd d0   ...............
0320: b4 d1 80 20 d0 9a d1 83 d0 bd d1 82 d0 b0 d1 88  ... ............
0330: d0 be d0 b2 20 3c 6b 75 6e 74 61 73 68 6f 76 40  .... <kuntashov@
0340: 67 6d 61 69 6c 2e 63 6f 6d 3e 2c 20 68 74 74 70  gmail.com>, http
0350: 3a 2f 2f 63 6f 6d 70 61 75 64 2e 72 75 2f 62 6c  ://compaud.ru/bl
0360: 6f 67 0d 0a 2f 2f 2f 2f 7d 0d 0a 2f 2f 2f 2f 2f  og..////}../////
0370: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f  ////////////////
0380: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f  ////////////////
0390: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f  ////////////////
03a0: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f  ////////////////
03b0: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f  ////////////////
03c0: 2f 2f 2f 0d 0a 0d 0a 53 79 6e 74 61 78 41 6e 61  ///....SyntaxAna
03d0: 6c 79 73 69 73 20 3d 20 7b 7d 3b 0d 0a 0d 0a 53  lysis = {};....S
03e0: 79 6e 74 61 78 41 6e 61 6c 79 73 69 73 2e 41 6e  yntaxAnalysis.An
03f0: 61 6c 79 73 65 54 65 78 74 44 6f 63 75 6d 65 6e  alyseTextDocumen
0400: 74 20 3d 20 66 75 6e 63 74 69 6f 6e 20 28 74 65  t = function (te
0410: 78 74 57 69 6e 64 6f 77 29 20 7b 0d 0a 20 20 20  xtWindow) {..   
0420: 20 72 65 74 75 72 6e 20 6e 65 77 20 5f 31 43 4d   return new _1CM
0430: 6f 64 75 6c 65 28 74 65 78 74 57 69 6e 64 6f 77  odule(textWindow
0440: 29 0d 0a 7d 0d 0a 0d 0a 53 79 6e 74 61 78 41 6e  )..}....SyntaxAn
0450: 61 6c 79 73 69 73 2e 43 72 65 61 74 65 31 43 4d  alysis.Create1CM
0460: 6f 64 75 6c 65 43 6f 6e 74 65 78 74 44 65 73 63  oduleContextDesc
0470: 72 69 70 74 69 6f 6e 20 3d 20 66 75 6e 63 74 69  ription = functi
0480: 6f 6e 28 69 6e 69 74 56 61 6c 75 65 54 61 62 6c  on(initValueTabl
0490: 65 29 20 7b 0d 0a 20 20 20 20 72 65 74 75 72 6e  e) {..    return
04a0: 20 6e 65 77 20 5f 31 43 4d 6f 64 75 6c 65 43 6f   new _1CModuleCo
04b0: 6e 74 65 78 74 44 65 73 63 72 69 70 74 69 6f 6e  ntextDescription
04c0: 28 69 6e 69 74 56 61 6c 75 65 54 61 62 6c 65 29  (initValueTable)
04d0: 3b 0d 0a 7d 0d 0a 0d 0a 53 79 6e 74 61 78 41 6e  ;..}....SyntaxAn
04e0: 61 6c 79 73 69 73 2e 43 72 65 61 74 65 31 43 4d  alysis.Create1CM
04f0: 65 74 68 6f 64 44 65 73 63 72 69 70 74 69 6f 6e  ethodDescription
0500: 20 3d 20 66 75 6e 63 74 69 6f 6e 28 70 61 72 65   = function(pare
0510: 6e 74 4d 6f 64 75 6c 65 29 20 7b 0d 0a 20 20 20  ntModule) {..   
0520: 20 72 65 74 75 72 6e 20 6e 65 77 20 5f 31 43 4d   return new _1CM
0530: 65 74 68 6f 64 44 65 73 63 72 69 70 74 69 6f 6e  ethodDescription
0540: 28 70 61 72 65 6e 74 4d 6f 64 75 6c 65 29 3b 0d  (parentModule);.
0550: 0a 7d 0d 0a 0d 0a 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f  .}....//////////
0560: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f  ////////////////
0570: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f  ////////////////
0580: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f  ////////////////
0590: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f  ////////////////
05a0: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 0d 0a  //////////////..
05b0: 2f 2f 2f 2f 7b 20 d0 a0 d0 b5 d0 b3 d1 83 d0 bb  ////{ ..........
05c0: d1 8f d1 80 d0 bd d1 8b d0 b5 20 d0 b2 d1 8b d1  .......... .....
05d0: 80 d0 b0 d0 b6 d0 b5 d0 bd d0 b8 d1 8f 20 d0 b4  ............. ..
05e0: d0 bb d1 8f 20 d0 bf d0 be d0 b8 d1 81 d0 ba d0  .... ...........
05f0: b0 20 d0 ba d0 be d0 bd d1 81 d1 82 d1 80 d1 83  . ..............
0600: d0 ba d1 86 d0 b8 d0 b9 20 d0 b2 d1 81 d1 82 d1  ........ .......
0610: 80 d0 be d0 b5 d0 bd d0 bd d0 be d0 b3 d0 be 20  ............... 
0620: d1 8f d0 b7 d1 8b d0 ba d0 b0 20 31 d0 a1 2e 0d  .......... 1....
0630: 0a 2f 2f 2f 2f 54 4f 44 4f 3a 20 0d 0a 2f 2f 2f  .////TODO: ..///
0640: 2f 20 20 20 20 2d 20 d0 a3 d0 b4 d0 b0 d0 bb d0  /    - .........
0650: b8 d1 82 d1 8c 20 d0 b8 d0 b7 20 d1 80 d0 b5 d0  ..... .... .....
0660: b3 d1 83 d0 bb d1 8f d1 80 d0 be d0 ba 20 d0 be  ............. ..
0670: d0 bf d1 80 d0 b5 d0 b4 d0 b5 d0 bb d0 b5 d0 bd  ................
0680: d0 b8 d1 8f 20 d0 bc d0 b5 d1 82 d0 be d0 b4 d0  .... ...........
0690: b0 20 d0 94 d0 b0 d0 bb d0 b5 d0 b5 20 2d 20 d0  . .......... - .
06a0: bd d0 b5 20 d0 b8 d0 bc d0 b5 d0 b5 d1 82 20 d1  ... .......... .
06b0: 81 d0 bc d1 8b d1 81 d0 bb d0 b0 20 d0 b4 d0 bb  ........... ....
06c0: d1 8f 20 38 2e d1 85 0d 0a 2f 2f 2f 2f 20 20 20  .. 8.....////   
06d0: 20 2d 20 d0 9e d0 bf d0 b8 d1 81 d0 b0 d1 82 d1   - .............
06e0: 8c 20 d0 b8 d0 bd d0 b4 d0 b5 d0 ba d1 81 d1 8b  . ..............
06f0: 20 d0 b8 20 d0 bd d0 b0 d0 b7 d0 bd d0 b0 d1 87   .. ............
0700: d0 b5 d0 bd d0 b8 d1 8f 20 d0 b3 d1 80 d1 83 d0  ........ .......
0710: bf d0 bf d0 b8 d1 80 d0 be d0 b2 d0 be d0 ba 2c  ...............,
0720: 20 d0 bf d0 be d0 b4 d0 be d0 b1 d0 bd d0 be 20   .............. 
0730: d1 82 d0 be d0 bc d1 83 2c 20 d0 ba d0 b0 d0 ba  ........, ......
0740: 20 d1 81 d0 b4 d0 b5 d0 bb d0 b0 d0 bd d0 be 20   .............. 
0750: d0 b4 d0 bb d1 8f 20 52 45 5f 56 41 52 2e 0d 0a  ...... RE_VAR...
0760: 53 79 6e 74 61 78 41 6e 61 6c 79 73 69 73 2e 52  SyntaxAnalysis.R
0770: 45 5f 43 4f 4d 4d 45 4e 54 20 20 20 20 20 20 20  E_COMMENT       
0780: 3d 20 6e 65 77 20 52 65 67 45 78 70 28 27 5e 5c  = new RegExp('^\
0790: 5c 73 2a 28 28 3f 3a 28 3f 3a 28 3f 3a 22 5b 5e  \s*((?:(?:(?:"[^
07a0: 22 5d 22 29 2a 29 7c 28 3f 3a 5b 5e 2f 5d 2a 29  "]")*)|(?:[^/]*)
07b0: 7c 28 3f 3a 5b 5e 2f 5d 2b 2f 29 29 2a 29 28 2f  |(?:[^/]+/))*)(/
07c0: 2f 2e 2a 29 3f 5c 5c 73 2a 24 27 2c 20 22 22 29  /.*)?\\s*$', "")
07d0: 3b 0d 0a 2f 2a 20 d0 93 d1 80 d1 83 d0 bf d0 bf  ;../* ..........
07e0: d0 b8 d1 80 d0 be d0 b2 d0 ba d0 b8 3a 20 31 3a  ............: 1:
07f0: 20 d0 9e d0 b1 d1 8a d1 8f d0 b2 d0 bb d0 b5 d0   ...............
0800: bd d0 b8 d0 b5 20 d0 bc d0 b5 d1 82 d0 be d0 b4  ..... ..........
0810: d0 b0 20 28 d0 bf d1 80 d0 be d1 86 d0 b5 d0 b4  .. (............
0820: d1 83 d1 80 d0 b0 2f d1 84 d1 83 d0 bd d0 ba d1  ....../.........
0830: 86 d0 b8 d1 8f 29 2c 20 32 3a 20 d0 98 d0 bc d1  .....), 2: .....
0840: 8f 20 d0 bc d0 b5 d1 82 d0 be d0 b4 d0 b0 2c 20  . ............, 
0850: 33 3a 20 d0 a1 d0 bf d0 b8 d1 81 d0 be d0 ba 20  3: ............ 
0860: d0 bf d0 b0 d1 80 d0 b0 d0 bc d0 b5 d1 82 d1 80  ................
0870: d0 be d0 b2 20 d0 bc d0 b5 d1 82 d0 be d0 b4 d0  .... ...........
0880: b0 20 d1 81 d1 82 d1 80 d0 be d0 ba d0 be d0 b9  . ..............
0890: 2c 20 34 3a 20 22 d0 94 d0 b0 d0 bb d0 b5 d0 b5  , 4: "..........
08a0: 22 20 2d 20 d0 b8 d0 bc d0 b5 d0 b5 d1 82 20 d1  " - .......... .
08b0: 81 d0 bc d1 8b d1 81 d0 bb 20 d1 82 d0 be d0 bb  ......... ......
08c0: d1 8c d0 ba d0 be 20 d0 b4 d0 bb d1 8f 20 37 2e  ...... ...... 7.
08d0: 37 2e 20 2a 2f 0d 0a 2f 2f 53 79 6e 74 61 78 41  7. */..//SyntaxA
08e0: 6e 61 6c 79 73 69 73 2e 52 45 5f 50 52 4f 43 20  nalysis.RE_PROC 
08f0: 20 20 20 20 20 20 20 20 20 3d 20 6e 65 77 20 52           = new R
0900: 65 67 45 78 70 28 27 5e 5c 5c 73 2a 28 28 3f 3a  egExp('^\\s*((?:
0910: 70 72 6f 63 65 64 75 72 65 29 7c 28 3f 3a 66 75  procedure)|(?:fu
0920: 6e 63 74 69 6f 6e 29 7c 28 3f 3a d0 bf d1 80 d0  nction)|(?:.....
0930: be d1 86 d0 b5 d0 b4 d1 83 d1 80 d0 b0 29 7c 28  .............)|(
0940: 3f 3a d1 84 d1 83 d0 bd d0 ba d1 86 d0 b8 d1 8f  ?:..............
0950: 29 29 5c 5c 73 2b 28 5b 5c 5c 77 d0 90 2d d1 8f  ))\\s+([\\w..-..
0960: d1 91 d0 81 5c 5c 64 5d 2b 29 5c 5c 73 2a 5c 5c  ....\\d]+)\\s*\\
0970: 28 28 5b 5c 5c 77 d0 90 2d d1 8f d1 91 d0 81 5c  (([\\w..-......\
0980: 5c 64 5c 5c 73 2c 2e 3d 22 5c 27 5d 2a 29 5c 5c  \d\\s,.="\']*)\\
0990: 29 5c 5c 73 2a 28 28 3f 3a 66 6f 72 77 61 72 64  )\\s*((?:forward
09a0: 29 7c 28 3f 3a d0 b4 d0 b0 d0 bb d0 b5 d0 b5 29  )|(?:..........)
09b0: 29 3f 28 2e 2a 29 24 27 2c 20 22 69 22 29 3b 0d  )?(.*)$', "i");.
09c0: 0a 53 79 6e 74 61 78 41 6e 61 6c 79 73 69 73 2e  .SyntaxAnalysis.
09d0: 52 45 5f 50 52 4f 43 20 20 20 20 20 20 20 20 20  RE_PROC         
09e0: 20 20 20 20 20 3d 20 6e 65 77 20 52 65 67 45 78       = new RegEx
09f0: 70 28 27 5e 5c 5c 73 2a 28 28 3f 3a 70 72 6f 63  p('^\\s*((?:proc
0a00: 65 64 75 72 65 29 7c 28 3f 3a 66 75 6e 63 74 69  edure)|(?:functi
0a10: 6f 6e 29 7c 28 3f 3a d0 bf d1 80 d0 be d1 86 d0  on)|(?:.........
0a20: b5 d0 b4 d1 83 d1 80 d0 b0 29 7c 28 3f 3a d1 84  .........)|(?:..
0a30: d1 83 d0 bd d0 ba d1 86 d0 b8 d1 8f 29 29 5c 5c  ............))\\
0a40: 73 2b 28 5b 5c 5c 77 d0 90 2d d1 8f d1 91 d0 81  s+([\\w..-......
0a50: 5c 5c 64 5d 2b 29 5c 5c 73 2a 5c 5c 28 27 2c 20  \\d]+)\\s*\\(', 
0a60: 27 69 27 29 3b 0d 0a 53 79 6e 74 61 78 41 6e 61  'i');..SyntaxAna
0a70: 6c 79 73 69 73 2e 52 45 5f 50 41 52 41 4d 20 20  lysis.RE_PARAM  
0a80: 20 20 20 20 20 20 20 20 20 20 3d 20 6e 65 77 20            = new 
0a90: 52 65 67 45 78 70 28 27 28 3f 3a 28 3f 3a 56 61  RegExp('(?:(?:Va
0aa0: 6c 29 7c 28 3f 3a d0 97 d0 bd d0 b0 d1 87 29 5c  l)|(?:........)\
0ab0: 5c 73 2b 29 3f 28 5b 5c 5c 77 d0 90 2d d1 8f d1  \s+)?([\\w..-...
0ac0: 91 d0 81 5c 5c 64 5d 2b 29 28 5c 5c 73 2a 3d 5c  ...\\d]+)(\\s*=\
0ad0: 5c 73 2a 28 3f 3a 28 3f 3a 22 5b 5e 22 5d 22 29  \s*(?:(?:"[^"]")
0ae0: 7c 28 3f 3a 5b 5e 2c 29 5d 2a 29 29 2a 29 3f 27  |(?:[^,)]*))*)?'
0af0: 2c 20 22 69 67 22 29 3b 0d 0a 53 79 6e 74 61 78  , "ig");..Syntax
0b00: 41 6e 61 6c 79 73 69 73 2e 52 45 5f 50 41 52 41  Analysis.RE_PARA
0b10: 4d 5f 45 4e 44 20 20 20 20 20 3d 20 6e 65 77 20  M_END     = new 
0b20: 52 65 67 45 78 70 28 27 28 5b 5c 5c 77 d0 90 2d  RegExp('([\\w..-
0b30: d1 8f d1 91 d0 81 5c 5c 64 5c 5c 73 2c 2e 3d 22  ......\\d\\s,.="
0b40: 5c 27 5d 2a 29 5c 5c 29 28 2e 2a 29 27 2c 20 27  \']*)\\)(.*)', '
0b50: 69 27 29 3b 0d 0a 53 79 6e 74 61 78 41 6e 61 6c  i');..SyntaxAnal
0b60: 79 73 69 73 2e 52 45 5f 50 52 4f 43 5f 45 4e 44  ysis.RE_PROC_END
0b70: 20 20 20 20 20 20 3d 20 6e 65 77 20 52 65 67 45        = new RegE
0b80: 78 70 28 27 28 28 3f 3a 45 6e 64 50 72 6f 63 65  xp('((?:EndProce
0b90: 64 75 72 65 29 7c 28 3f 3a 45 6e 64 46 75 6e 63  dure)|(?:EndFunc
0ba0: 74 69 6f 6e 29 7c 28 3f 3a d0 9a d0 be d0 bd d0  tion)|(?:.......
0bb0: b5 d1 86 d0 9f d1 80 d0 be d1 86 d0 b5 d0 b4 d1  ................
0bc0: 83 d1 80 d1 8b 29 7c 28 3f 3a d0 9a d0 be d0 bd  .....)|(?:......
0bd0: d0 b5 d1 86 d0 a4 d1 83 d0 bd d0 ba d1 86 d0 b8  ................
0be0: d0 b8 29 29 27 2c 20 22 69 22 29 3b 0d 0a 53 79  ..))', "i");..Sy
0bf0: 6e 74 61 78 41 6e 61 6c 79 73 69 73 2e 52 45 5f  ntaxAnalysis.RE_
0c00: 56 41 52 53 5f 44 45 46 20 20 20 20 20 20 3d 20  VARS_DEF      = 
0c10: 6e 65 77 20 52 65 67 45 78 70 28 27 5e 5c 5c 73  new RegExp('^\\s
0c20: 2a 28 3f 3a 28 3f 3a 56 61 72 29 7c 28 3f 3a d0  *(?:(?:Var)|(?:.
0c30: 9f d0 b5 d1 80 d0 b5 d0 bc 29 29 5c 5c 73 2a 28  .........))\\s*(
0c40: 5b 5c 5c 77 d0 90 2d d1 8f d1 91 d0 81 5c 5c 64  [\\w..-......\\d
0c50: 2c 3d 5c 5c 5b 5c 5c 5d 5c 5c 73 5d 2a 29 28 5c  ,=\\[\\]\\s]*)(\
0c60: 5c 73 2b d1 8d d0 ba d1 81 d0 bf d0 be d1 80 d1  \s+.............
0c70: 82 5c 5c 73 2a 29 3f 28 5b 5c 5c 73 3b 5d 2a 29  .\\s*)?([\\s;]*)
0c80: 28 2e 2a 3f 29 24 27 2c 20 22 69 22 29 3b 0d 0a  (.*?)$', "i");..
0c90: 2f 2a 20 d0 93 d1 80 d1 83 d0 bf d0 bf d0 b8 d1  /* .............
0ca0: 80 d0 be d0 b2 d0 ba d0 b8 3a 20 31 3a 20 d0 98  .........: 1: ..
0cb0: d0 bc d1 8f 20 d0 bf d0 b5 d1 80 d0 b5 d0 bc d0  .... ...........
0cc0: b5 d0 bd d0 bd d0 be d0 b9 2c 20 32 3a 20 d0 9e  ........., 2: ..
0cd0: d0 bf d1 80 d0 b5 d0 b4 d0 b5 d0 bb d0 b5 d0 bd  ................
0ce0: d0 b8 d0 b5 20 d1 80 d0 b0 d0 b7 d0 bc d0 b5 d1  .... ...........
0cf0: 80 d0 bd d0 be d1 81 d1 82 d0 b8 20 d0 bc d0 b0  ........... ....
0d00: d1 81 d1 81 d0 b8 d0 b2 d0 b0 2c 20 33 3a 20 d0  .........., 3: .
0d10: ad d0 ba d1 81 d0 bf d0 be d1 80 d1 82 2c 20 34  ............., 4
0d20: 3a 20 d0 9a d0 be d0 bd d0 b5 d1 87 d0 bd d1 8b  : ..............
0d30: d0 b9 20 d1 81 d0 b8 d0 bc d0 b2 d0 be d0 bb 20  .. ............ 
0d40: 28 22 2c 22 20 d0 b8 d0 bb d0 b8 20 d0 bf d1 83  ("," ...... ....
0d50: d1 81 d1 82 d0 be 20 2d 20 d0 ba d0 be d0 bd d0  ...... - .......
0d60: b5 d1 86 20 d1 81 d1 82 d1 80 d0 be d0 ba d0 b8  ... ............
0d70: 29 2e 20 2a 2f 0d 0a 53 79 6e 74 61 78 41 6e 61  ). */..SyntaxAna
0d80: 6c 79 73 69 73 2e 52 45 5f 56 41 52 20 20 20 20  lysis.RE_VAR    
0d90: 20 20 20 20 20 20 20 3d 20 6e 65 77 20 52 65 67         = new Reg
0da0: 45 78 70 28 27 28 5b 5c 5c 77 d0 90 2d d1 8f d1  Exp('([\\w..-...
0db0: 91 d0 81 5c 5c 64 5d 2b 29 5c 5c 73 2a 28 5c 5c  ...\\d]+)\\s*(\\
0dc0: 5b 5b 5c 5c 64 5c 5c 73 2c 5d 2a 5c 5c 5d 29 3f  [[\\d\\s,]*\\])?
0dd0: 28 5c 5c 73 2b d1 8d d0 ba d1 81 d0 bf d0 be d1  (\\s+...........
0de0: 80 d1 82 5c 5c 73 2a 29 3f 28 3f 3a 5c 5c 73 2a  ...\\s*)?(?:\\s*
0df0: 28 3f 3a 2c 7c 3b 7c 24 29 29 27 2c 20 22 69 67  (?:,|;|$))', "ig
0e00: 22 29 3b 0d 0a 53 79 6e 74 61 78 41 6e 61 6c 79  ");..SyntaxAnaly
0e10: 73 69 73 2e 52 45 5f 56 41 52 5f 41 53 53 49 47  sis.RE_VAR_ASSIG
0e20: 4e 20 20 20 20 3d 20 6e 65 77 20 52 65 67 45 78  N    = new RegEx
0e30: 70 28 27 28 5b 5c 5c 77 d0 90 2d d1 8f d1 91 d0  p('([\\w..-.....
0e40: 81 5c 5c 64 2e 5d 2b 29 5c 5c 73 2a 3d 5c 5c 73  .\\d.]+)\\s*=\\s
0e50: 2a 28 28 5b 5e 3b 5d 2a 29 3b 29 3f 27 2c 20 22  *(([^;]*);)?', "
0e60: 67 22 29 3b 0d 0a 53 79 6e 74 61 78 41 6e 61 6c  g");..SyntaxAnal
0e70: 79 73 69 73 2e 52 45 5f 43 41 4c 4c 20 20 20 20  ysis.RE_CALL    
0e80: 20 20 20 20 20 20 3d 20 6e 65 77 20 52 65 67 45        = new RegE
0e90: 78 70 28 27 28 5b 5c 5c 77 d0 90 2d d1 8f d1 91  xp('([\\w..-....
0ea0: d0 81 5c 5c 64 2e 5d 2b 29 5c 5c 73 2a 5c 5c 28  ..\\d.]+)\\s*\\(
0eb0: 27 2c 20 22 67 22 29 3b 0d 0a 53 79 6e 74 61 78  ', "g");..Syntax
0ec0: 41 6e 61 6c 79 73 69 73 2e 52 45 5f 53 50 41 43  Analysis.RE_SPAC
0ed0: 45 20 20 20 20 20 20 20 20 20 3d 20 6e 65 77 20  E         = new 
0ee0: 52 65 67 45 78 70 28 27 5c 5c 73 2b 27 2c 20 22  RegExp('\\s+', "
0ef0: 67 22 29 3b 0d 0a 2f 2f 46 49 58 4d 45 3a 52 45  g");..//FIXME:RE
0f00: 5f 50 52 4f 43 5f 54 4f 52 4d 4f 5a 49 54 20 20  _PROC_TORMOZIT  
0f10: d0 bf d0 be d0 ba d0 b0 20 d0 bd d0 b5 20 d0 b8  ........ .... ..
0f20: d1 81 d0 bf d0 be d0 bb d1 8c d0 b7 d1 83 d0 b5  ................
0f30: d1 82 d1 8c d1 81 d1 8f 2c 20 d1 82 2e d0 ba 2e  ........, ......
0f40: 20 d0 bd d0 b5 d1 82 20 d0 be d0 bf d1 80 d0 b5   ...... ........
0f50: d0 b4 d0 b5 d0 bb d0 b5 d0 bd d0 b8 d1 8f 20 d0  .............. .
0f60: 9d d0 b0 d0 9a d0 bb d0 b8 d0 b5 d0 bd d1 82 d0  ................
0f70: b5 2c 20 d0 9d d0 b0 d0 a1 d0 b5 d1 80 d0 b2 d0  ., .............
0f80: b5 d1 80 d0 b5 20 d0 b8 20 d1 82 2e d0 b4 2e 20  ..... .. ...... 
0f90: d0 b4 d0 bb d1 8f 20 d1 82 d0 be d0 bd d0 ba d0  ...... .........
0fa0: be d0 b3 d0 be 20 d0 ba d0 bb d0 b8 d0 b5 d0 bd  ..... ..........
0fb0: d1 82 d0 b0 2e 20 0d 0a 53 79 6e 74 61 78 41 6e  ..... ..SyntaxAn
0fc0: 61 6c 79 73 69 73 2e 52 45 5f 50 52 4f 43 5f 54  alysis.RE_PROC_T
0fd0: 4f 52 4d 4f 5a 49 54 20 3d 20 6e 65 77 20 52 65  ORMOZIT = new Re
0fe0: 67 45 78 70 28 27 28 28 d0 9f d1 80 d0 be d1 86  gExp('((........
0ff0: d0 b5 d0 b4 d1 83 d1 80 d0 b0 7c d0 a4 d1 83 d0  ..........|.....
1000: bd d0 ba d1 86 d0 b8 d1 8f 29 28 3f 3a 2f 2f 5b  .........)(?://[
1010: 5e 5c 5c 6e 5d 2a 5c 5c 6e 7c 5c 5c 73 7c 5e 7c  ^\\n]*\\n|\\s|^|
1020: 24 29 2a 28 5b d0 90 2d d0 af d0 b0 2d d1 8f 5f  $)*([..-....-.._
1030: 41 2d 5a 61 2d 7a 5d 5b d0 90 2d d0 af d0 b0 2d  A-Za-z][..-....-
1040: d1 8f 5f 41 2d 5a 61 2d 7a 5c 5c 64 5d 2a 29 28  .._A-Za-z\\d]*)(
1050: 3f 3a 2f 2f 5b 5e 5c 5c 6e 5d 2a 5c 5c 6e 7c 5c  ?://[^\\n]*\\n|\
1060: 5c 73 7c 5e 7c 24 29 2a 5c 5c 28 28 5b 5e 5c 5c  \s|^|$)*\\(([^\\
1070: 29 5d 2a 29 5c 5c 29 28 28 3f 3a 2f 2f 5b 5e 5c  )]*)\\)((?://[^\
1080: 5c 6e 5d 2a 5c 5c 6e 7c 5c 5c 73 7c 5e 7c 24 29  \n]*\\n|\\s|^|$)
1090: 2a d0 ad d0 ba d1 81 d0 bf d0 be d1 80 d1 82 29  *..............)
10a0: 3f 29 28 28 3f 3a 28 3f 3a 22 28 3f 3a 28 3f 3a  ?)((?:(?:"(?:(?:
10b0: 22 22 29 7c 5b 5e 22 5c 5c 6e 24 5d 29 2a 28 3f  "")|[^"\\n$])*(?
10c0: 3a 28 3f 3a 2f 2f 5b 5e 5c 5c 6e 5d 2a 5c 5c 6e  :(?://[^\\n]*\\n
10d0: 7c 5c 5c 73 7c 5e 7c 24 29 2a 5c 5c 7c 28 3f 3a  |\\s|^|$)*\\|(?:
10e0: 28 3f 3a 22 22 29 7c 5b 5e 22 5c 5c 6e 24 5d 29  (?:"")|[^"\\n$])
10f0: 2a 29 2a 28 3f 3a 22 7c 24 29 7c 5c 5c 2e d0 9a  *)*(?:"|$)|\\...
1100: d0 be d0 bd d0 b5 d1 86 28 3f 3a d0 9f d1 80 d0  ........(?:.....
1110: be d1 86 d0 b5 d0 b4 d1 83 d1 80 d1 8b 7c d0 a4  .............|..
1120: d1 83 d0 bd d0 ba d1 86 d0 b8 d0 b8 29 7c 5c 5c  ............)|\\
1130: 72 7c 5c 5c 6e 7c 2e 29 2a 3f 29 29 5b 5e d0 90  r|\\n|.)*?))[^..
1140: 2d d0 af d0 b0 2d d1 8f 5f 41 2d 5a 61 2d 7a 30  -....-.._A-Za-z0
1150: 2d 39 5c 5c 2e 22 5d d0 9a d0 be d0 bd d0 b5 d1  -9\\."].........
1160: 86 28 3f 3a d0 9f d1 80 d0 be d1 86 d0 b5 d0 b4  .(?:............
1170: d1 83 d1 80 d1 8b 7c d0 a4 d1 83 d0 bd d0 ba d1  ......|.........
1180: 86 d0 b8 d0 b8 29 5b 5e d0 90 2d d0 af d0 b0 2d  .....)[^..-....-
1190: d1 8f 5f 41 2d 5a 61 2d 7a 30 2d 39 5d 7c 23 5b  .._A-Za-z0-9]|#[
11a0: 5e 5c 5c 6e 5d 2a 5c 5c 6e 7c 28 3f 3a 2f 2f 5b  ^\\n]*\\n|(?://[
11b0: 5e 5c 5c 6e 5d 2a 5c 5c 6e 7c 5c 5c 73 7c 5e 7c  ^\\n]*\\n|\\s|^|
11c0: 24 29 27 2c 20 27 69 67 6d 27 29 0d 0a 53 79 6e  $)', 'igm')..Syn
11d0: 74 61 78 41 6e 61 6c 79 73 69 73 2e 52 45 5f 50  taxAnalysis.RE_P
11e0: 41 52 41 4d 5f 54 4f 52 4d 4f 5a 49 54 20 3d 20  ARAM_TORMOZIT = 
11f0: 6e 65 77 20 52 65 67 45 78 70 28 27 28 3f 3a 2f  new RegExp('(?:/
1200: 2f 5b 5e 5c 5c 6e 5d 2a 5c 5c 6e 7c 5c 5c 73 7c  /[^\\n]*\\n|\\s|
1210: 5e 7c 24 29 2a 28 d0 97 d0 bd d0 b0 d1 87 5c 5c  ^|$)*(........\\
1220: 73 29 3f 28 3f 3a 2f 2f 5b 5e 5c 5c 6e 5d 2a 5c  s)?(?://[^\\n]*\
1230: 5c 6e 7c 5c 5c 73 7c 5e 7c 24 29 2a 28 5b d0 90  \n|\\s|^|$)*([..
1240: 2d d0 af d0 b0 2d d1 8f 5f 41 2d 5a 61 2d 7a 5d  -....-.._A-Za-z]
1250: 5b d0 90 2d d0 af d0 b0 2d d1 8f 5f 41 2d 5a 61  [..-....-.._A-Za
1260: 2d 7a 30 2d 39 5d 2b 29 28 3f 3a 2f 2f 5b 5e 5c  -z0-9]+)(?://[^\
1270: 5c 6e 5d 2a 5c 5c 6e 7c 5c 5c 73 7c 5e 7c 24 29  \n]*\\n|\\s|^|$)
1280: 2a 3d 3f 28 28 3f 3a 28 3f 3a 2f 2f 5b 5e 5c 5c  *=?((?:(?://[^\\
1290: 6e 5d 2a 5c 5c 6e 7c 5c 5c 73 7c 5e 7c 24 29 2a  n]*\\n|\\s|^|$)*
12a0: 7c 28 22 28 3f 3a 28 3f 3a 22 22 29 7c 5b 5e 22  |("(?:(?:"")|[^"
12b0: 5c 5c 6e 24 5d 29 2a 28 3f 3a 28 3f 3a 2f 2f 5b  \\n$])*(?:(?://[
12c0: 5e 5c 5c 6e 5d 2a 5c 5c 6e 7c 5c 5c 73 7c 5e 7c  ^\\n]*\\n|\\s|^|
12d0: 24 29 2a 5c 5c 7c 28 3f 3a 28 3f 3a 22 22 29 7c  $)*\\|(?:(?:"")|
12e0: 5b 5e 22 5c 5c 6e 24 5d 29 2a 29 2a 28 3f 3a 22  [^"\\n$])*)*(?:"
12f0: 7c 24 29 29 7c 28 3f 3a 5b 5e 2c 5c 5c 6e 24 5d  |$))|(?:[^,\\n$]
1300: 2a 29 29 2b 29 28 3f 3a 2c 7c 24 29 27 2c 27 69  *))+)(?:,|$)','i
1310: 6d 67 27 29 3b 0d 0a 53 79 6e 74 61 78 41 6e 61  mg');..SyntaxAna
1320: 6c 79 73 69 73 2e 52 45 5f 43 4f 4e 54 45 58 54  lysis.RE_CONTEXT
1330: 20 20 20 20 20 20 3d 20 6e 65 77 20 52 65 67 45        = new RegE
1340: 78 70 28 27 5e 5c 5c 73 2a 26 5c 5c 73 2a 28 41  xp('^\\s*&\\s*(A
1350: 74 43 6c 69 65 6e 74 41 74 53 65 72 76 65 72 4e  tClientAtServerN
1360: 6f 43 6f 6e 74 65 78 74 7c 41 74 53 65 72 76 65  oContext|AtServe
1370: 72 4e 6f 43 6f 6e 74 65 78 74 7c 41 74 43 6c 69  rNoContext|AtCli
1380: 65 6e 74 41 74 53 65 72 76 65 72 7c 41 74 53 65  entAtServer|AtSe
1390: 72 76 65 72 7c 41 74 43 6c 69 65 6e 74 7c d0 9d  rver|AtClient|..
13a0: d0 b0 d0 a1 d0 b5 d1 80 d0 b2 d0 b5 d1 80 d0 b5  ................
13b0: d0 91 d0 b5 d0 b7 d0 9a d0 be d0 bd d1 82 d0 b5  ................
13c0: d0 ba d1 81 d1 82 d0 b0 7c d0 9d d0 b0 d0 9a d0  ........|.......
13d0: bb d0 b8 d0 b5 d0 bd d1 82 d0 b5 d0 9d d0 b0 d0  ................
13e0: a1 d0 b5 d1 80 d0 b2 d0 b5 d1 80 d0 b5 d0 91 d0  ................
13f0: b5 d0 b7 d0 9a d0 be d0 bd d1 82 d0 b5 d0 ba d1  ................
1400: 81 d1 82 d0 b0 7c d0 9d d0 b0 d0 9a d0 bb d0 b8  .....|..........
1410: d0 b5 d0 bd d1 82 d0 b5 d0 9d d0 b0 d0 a1 d0 b5  ................
1420: d1 80 d0 b2 d0 b5 d1 80 d0 b5 7c d0 9d d0 b0 d0  ..........|.....
1430: 9a d0 bb d0 b8 d0 b5 d0 bd d1 82 d0 b5 7c d0 9d  .............|..
1440: d0 b0 d0 a1 d0 b5 d1 80 d0 b2 d0 b5 d1 80 d0 b5  ................
1450: 29 5c 5c 73 2a 27 2c 20 27 69 27 29 0d 0a 53 79  )\\s*', 'i')..Sy
1460: 6e 74 61 78 41 6e 61 6c 79 73 69 73 2e 43 4f 4e  ntaxAnalysis.CON
1470: 54 45 58 54 20 3d 20 7b 20 22 61 74 63 6c 69 65  TEXT = { "atclie
1480: 6e 74 61 74 73 65 72 76 65 72 6e 6f 63 6f 6e 74  ntatservernocont
1490: 65 78 74 22 20 20 20 3a 22 41 74 43 6c 69 65 6e  ext"   :"AtClien
14a0: 74 41 74 53 65 72 76 65 72 4e 6f 43 6f 6e 74 65  tAtServerNoConte
14b0: 78 74 22 2c 0d 0a 20 20 20 20 20 20 20 20 20 20  xt",..          
14c0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 61                "a
14d0: 74 73 65 72 76 65 72 6e 6f 63 6f 6e 74 65 78 74  tservernocontext
14e0: 22 20 20 20 20 20 20 20 20 20 20 20 20 20 3a 22  "             :"
14f0: 41 74 53 65 72 76 65 72 4e 6f 43 6f 6e 74 65 78  AtServerNoContex
1500: 74 22 2c 0d 0a 20 20 20 20 20 20 20 20 20 20 20  t",..           
1510: 20 20 20 20 20 20 20 20 20 20 20 20 20 22 61 74               "at
1520: 63 6c 69 65 6e 74 61 74 73 65 72 76 65 72 22 20  clientatserver" 
1530: 20 20 20 20 20 20 20 20 20 20 20 20 20 3a 22 41               :"A
1540: 74 43 6c 69 65 6e 74 41 74 53 65 72 76 65 72 22  tClientAtServer"
1550: 2c 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  ,..             
1560: 20 20 20 20 20 20 20 20 20 20 20 22 61 74 73 65             "atse
1570: 72 76 65 72 22 20 20 20 20 20 20 20 20 20 20 20  rver"           
1580: 20 20 20 20 20 20 20 20 20 20 20 3a 22 41 74 53             :"AtS
1590: 65 72 76 65 72 22 2c 0d 0a 20 20 20 20 20 20 20  erver",..       
15a0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
15b0: 20 22 61 74 63 6c 69 65 6e 74 22 20 20 20 20 20   "atclient"     
15c0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
15d0: 20 3a 22 41 74 43 6c 69 65 6e 74 22 2c 0d 0a 20   :"AtClient",.. 
15e0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
15f0: 20 20 20 20 20 20 20 22 d0 bd d0 b0 d1 81 d0 b5         "........
1600: d1 80 d0 b2 d0 b5 d1 80 d0 b5 d0 b1 d0 b5 d0 b7  ................
1610: d0 ba d0 be d0 bd d1 82 d0 b5 d0 ba d1 81 d1 82  ................
1620: d0 b0 22 20 20 20 20 20 20 20 20 20 3a 22 d0 9d  .."         :"..
1630: d0 b0 d0 a1 d0 b5 d1 80 d0 b2 d0 b5 d1 80 d0 b5  ................
1640: d0 91 d0 b5 d0 b7 d0 9a d0 be d0 bd d1 82 d0 b5  ................
1650: d0 ba d1 81 d1 82 d0 b0 22 2c 0d 0a 20 20 20 20  ........",..    
1660: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
1670: 20 20 20 20 22 d0 bd d0 b0 d0 ba d0 bb d0 b8 d0      "...........
1680: b5 d0 bd d1 82 d0 b5 d0 bd d0 b0 d1 81 d0 b5 d1  ................
1690: 80 d0 b2 d0 b5 d1 80 d0 b5 d0 b1 d0 b5 d0 b7 d0  ................
16a0: ba d0 be d0 bd d1 82 d0 b5 d0 ba d1 81 d1 82 d0  ................
16b0: b0 22 3a 22 d0 9d d0 b0 d0 9a d0 bb d0 b8 d0 b5  .":"............
16c0: d0 bd d1 82 d0 b5 d0 9d d0 b0 d0 a1 d0 b5 d1 80  ................
16d0: d0 b2 d0 b5 d1 80 d0 b5 d0 91 d0 b5 d0 b7 d0 9a  ................
16e0: d0 be d0 bd d1 82 d0 b5 d0 ba d1 81 d1 82 d0 b0  ................
16f0: 22 2c 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20  ",..            
1700: 20 20 20 20 20 20 20 20 20 20 20 20 22 d0 bd d0              "...
1710: b0 d0 ba d0 bb d0 b8 d0 b5 d0 bd d1 82 d0 b5 d0  ................
1720: bd d0 b0 d1 81 d0 b5 d1 80 d0 b2 d0 b5 d1 80 d0  ................
1730: b5 22 20 20 20 20 20 20 20 20 20 20 20 20 3a 22  ."            :"
1740: d0 9d d0 b0 d0 9a d0 bb d0 b8 d0 b5 d0 bd d1 82  ................
1750: d0 b5 d0 9d d0 b0 d0 a1 d0 b5 d1 80 d0 b2 d0 b5  ................
1760: d1 80 d0 b5 22 2c 0d 0a 20 20 20 20 20 20 20 20  ....",..        
1770: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
1780: 22 d0 bd d0 b0 d0 ba d0 bb d0 b8 d0 b5 d0 bd d1  "...............
1790: 82 d0 b5 22 20 20 20 20 20 20 20 20 20 20 20 20  ..."            
17a0: 20 20 20 20 20 20 20 20 20 3a 22 d0 9d d0 b0 d0           :".....
17b0: 9a d0 bb d0 b8 d0 b5 d0 bd d1 82 d0 b5 22 2c 0d  .............",.
17c0: 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  .               
17d0: 20 20 20 20 20 20 20 20 20 22 d0 bd d0 b0 d1 81           "......
17e0: d0 b5 d1 80 d0 b2 d0 b5 d1 80 d0 b5 22 20 20 20  ............"   
17f0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
1800: 20 20 3a 22 d0 9d d0 b0 d0 a1 d0 b5 d1 80 d0 b2    :"............
1810: d0 b5 d1 80 d0 b5 22 0d 0a 20 20 20 20 20 20 20  ......"..       
1820: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
1830: 20 7d 0d 0a 2f 2f 53 79 6e 74 61 78 41 6e 61 6c   }..//SyntaxAnal
1840: 79 73 69 73 0d 0a 2f 2f 53 79 6e 74 61 78 41 6e  ysis..//SyntaxAn
1850: 61 6c 79 73 69 73 2e 52 45 5f 43 52 4c 46 20 20  alysis.RE_CRLF  
1860: 20 20 20 20 20 20 20 20 3d 20 6e 65 77 20 52 65          = new Re
1870: 67 45 78 70 28 27 5b 5c 5c 6e 5d 2b 27 2c 20 22  gExp('[\\n]+', "
1880: 22 29 3b 0d 0a 2f 2f 2f 2f 7d 20 d0 a0 d0 b5 d0  ");..////} .....
1890: b3 d1 83 d0 bb d1 8f d1 80 d0 bd d1 8b d0 b5 20  ............... 
18a0: d0 b2 d1 8b d1 80 d0 b0 d0 b6 d0 b5 d0 bd d0 b8  ................
18b0: d1 8f 20 d0 b4 d0 bb d1 8f 20 d0 bf d0 be d0 b8  .. ...... ......
18c0: d1 81 d0 ba d0 b0 20 d0 ba d0 be d0 bd d1 81 d1  ...... .........
18d0: 82 d1 80 d1 83 d0 ba d1 86 d0 b8 d0 b9 20 d0 b2  ............. ..
18e0: d1 81 d1 82 d1 80 d0 be d0 b5 d0 bd d0 bd d0 be  ................
18f0: d0 b3 d0 be 20 d1 8f d0 b7 d1 8b d0 ba d0 b0 20  .... .......... 
1900: 31 d0 a1 2e 0d 0a 20 20 20 20 0d 0a 0d 0a 53 79  1.....    ....Sy
1910: 6e 74 61 78 41 6e 61 6c 79 73 69 73 2e 41 6e 61  ntaxAnalysis.Ana
1920: 6c 79 73 65 50 61 72 61 6d 73 20 3d 20 66 75 6e  lyseParams = fun
1930: 63 74 69 6f 6e 28 73 6f 75 72 63 65 43 6f 64 65  ction(sourceCode
1940: 2c 20 4d 65 74 68 29 20 7b 0d 0a 09 76 61 72 20  , Meth) {...var 
1950: 4d 61 74 63 68 65 73 3b 0d 0a 20 20 20 20 77 68  Matches;..    wh
1960: 69 6c 65 28 20 28 4d 61 74 63 68 65 73 20 3d 20  ile( (Matches = 
1970: 53 79 6e 74 61 78 41 6e 61 6c 79 73 69 73 2e 52  SyntaxAnalysis.R
1980: 45 5f 50 41 52 41 4d 5f 54 4f 52 4d 4f 5a 49 54  E_PARAM_TORMOZIT
1990: 2e 65 78 65 63 28 73 6f 75 72 63 65 43 6f 64 65  .exec(sourceCode
19a0: 29 29 20 21 3d 20 6e 75 6c 6c 20 29 20 7b 20 0d  )) != null ) { .
19b0: 0a 20 20 20 20 20 20 20 20 4d 65 74 68 2e 50 61  .        Meth.Pa
19c0: 72 61 6d 73 2e 70 75 73 68 28 4d 61 74 63 68 65  rams.push(Matche
19d0: 73 5b 32 5d 29 3b 0d 0a 20 20 20 20 7d 0d 0a 7d  s[2]);..    }..}
19e0: 0d 0a 53 79 6e 74 61 78 41 6e 61 6c 79 73 69 73  ..SyntaxAnalysis
19f0: 2e 41 6e 61 6c 79 73 65 43 6f 6d 6d 65 6e 74 73  .AnalyseComments
1a00: 20 3d 20 66 75 6e 63 74 69 6f 6e 28 73 6f 75 72   = function(sour
1a10: 63 65 43 6f 64 65 29 7b 0d 0a 20 20 20 20 20 76  ceCode){..     v
1a20: 61 72 20 72 65 73 75 6c 74 20 3d 20 73 6f 75 72  ar result = sour
1a30: 63 65 43 6f 64 65 3b 0d 0a 20 20 20 20 20 76 61  ceCode;..     va
1a40: 72 20 4d 61 74 63 68 65 73 20 3d 20 53 79 6e 74  r Matches = Synt
1a50: 61 78 41 6e 61 6c 79 73 69 73 2e 52 45 5f 43 4f  axAnalysis.RE_CO
1a60: 4d 4d 45 4e 54 2e 65 78 65 63 28 73 6f 75 72 63  MMENT.exec(sourc
1a70: 65 43 6f 64 65 29 3b 0d 0a 20 20 20 20 20 69 66  eCode);..     if
1a80: 28 20 4d 61 74 63 68 65 73 20 21 3d 20 6e 75 6c  ( Matches != nul
1a90: 6c 20 29 0d 0a 20 20 20 20 20 20 20 20 72 65 73  l )..        res
1aa0: 75 6c 74 20 3d 20 4d 61 74 63 68 65 73 5b 31 5d  ult = Matches[1]
1ab0: 3b 0d 0a 20 20 20 20 20 0d 0a 20 20 20 20 20 72  ;..     ..     r
1ac0: 65 74 75 72 6e 20 72 65 73 75 6c 74 0d 0a 7d 0d  eturn result..}.
1ad0: 0a 53 79 6e 74 61 78 41 6e 61 6c 79 73 69 73 2e  .SyntaxAnalysis.
1ae0: 41 6e 61 6c 79 73 65 4d 6f 64 75 6c 65 20 3d 20  AnalyseModule = 
1af0: 66 75 6e 63 74 69 6f 6e 20 28 73 6f 75 72 63 65  function (source
1b00: 43 6f 64 65 2c 20 69 6e 69 74 56 61 6c 75 65 54  Code, initValueT
1b10: 61 62 6c 65 2c 20 74 65 78 74 57 69 6e 64 6f 77  able, textWindow
1b20: 29 20 7b 0d 0a 20 20 20 20 0d 0a 20 20 20 20 76  ) {..    ..    v
1b30: 61 72 20 4d 65 74 68 3b 0d 0a 20 20 20 20 76 61  ar Meth;..    va
1b40: 72 20 73 74 53 74 61 72 74 20 3d 20 30 2c 20 73  r stStart = 0, s
1b50: 74 49 6e 50 72 6f 63 20 3d 20 31 2c 20 73 74 49  tInProc = 1, stI
1b60: 6e 4d 6f 64 75 6c 65 20 3d 20 32 2c 20 73 74 49  nModule = 2, stI
1b70: 6e 56 61 72 73 44 65 66 3b 0d 0a 20 20 20 20 76  nVarsDef;..    v
1b80: 61 72 20 73 74 61 74 65 20 3d 20 73 74 53 74 61  ar state = stSta
1b90: 72 74 2c 20 50 72 65 76 53 74 61 74 65 3b 0d 0a  rt, PrevState;..
1ba0: 20 20 20 20 76 61 72 20 4d 61 74 63 68 3b 0d 0a      var Match;..
1bb0: 20 20 20 20 76 61 72 20 43 6f 6e 74 65 78 74 20      var Context 
1bc0: 3d 20 22 22 3b 0d 0a 0d 0a 20 20 20 20 76 61 72  = "";....    var
1bd0: 20 72 6f 6f 74 4f 62 6a 65 63 74 20 3d 20 6d 65   rootObject = me
1be0: 74 61 64 61 74 61 2e 63 75 72 72 65 6e 74 2e 72  tadata.current.r
1bf0: 6f 6f 74 4f 62 6a 65 63 74 3b 0d 0a 0d 0a 20 20  ootObject;....  
1c00: 20 20 69 66 28 74 65 78 74 57 69 6e 64 6f 77 20    if(textWindow 
1c10: 3d 3d 20 75 6e 64 65 66 69 6e 65 64 29 7b 0d 0a  == undefined){..
1c20: 0d 0a 20 20 20 20 7d 20 65 6c 73 65 20 7b 0d 0a  ..    } else {..
1c30: 20 20 20 20 20 20 20 20 69 66 20 28 74 65 78 74          if (text
1c40: 57 69 6e 64 6f 77 2e 6d 64 43 6f 6e 74 29 7b 0d  Window.mdCont){.
1c50: 0a 20 20 20 20 20 20 20 20 20 20 20 20 72 6f 6f  .            roo
1c60: 74 4f 62 6a 65 63 74 20 3d 20 74 65 78 74 57 69  tObject = textWi
1c70: 6e 64 6f 77 2e 6d 64 43 6f 6e 74 2e 72 6f 6f 74  ndow.mdCont.root
1c80: 4f 62 6a 65 63 74 3b 0d 0a 20 20 20 20 20 20 20  Object;..       
1c90: 20 7d 0d 0a 20 20 20 20 7d 0d 0a 0d 0a 20 20 20   }..    }....   
1ca0: 20 76 61 72 20 63 61 63 68 65 4d 65 74 61 64 61   var cacheMetada
1cb0: 74 61 20 3d 20 5b 5d 3b 0d 0a 20 20 20 20 0d 0a  ta = [];..    ..
1cc0: 20 20 20 20 76 61 72 20 6d 6f 64 75 6c 65 43 6f      var moduleCo
1cd0: 6e 74 65 78 74 20 3d 20 53 79 6e 74 61 78 41 6e  ntext = SyntaxAn
1ce0: 61 6c 79 73 69 73 2e 43 72 65 61 74 65 31 43 4d  alysis.Create1CM
1cf0: 6f 64 75 6c 65 43 6f 6e 74 65 78 74 44 65 73 63  oduleContextDesc
1d00: 72 69 70 74 69 6f 6e 28 69 6e 69 74 56 61 6c 75  ription(initValu
1d10: 65 54 61 62 6c 65 29 3b 0d 0a 20 20 20 20 20 20  eTable);..      
1d20: 20 20 0d 0a 20 20 20 20 76 61 72 20 70 72 6f 63    ..    var proc
1d30: 5f 63 6f 75 6e 74 20 3d 20 30 3b 0d 0a 20 20 20  _count = 0;..   
1d40: 20 76 61 72 20 4c 69 6e 65 73 20 3d 20 73 6f 75   var Lines = sou
1d50: 72 63 65 43 6f 64 65 2e 73 70 6c 69 74 28 22 5c  rceCode.split("\
1d60: 6e 22 29 3b 0d 0a 20 20 20 20 76 61 72 20 6e 20  n");..    var n 
1d70: 3d 20 4c 69 6e 65 73 2e 6c 65 6e 67 74 68 3b 0d  = Lines.length;.
1d80: 0a 20 20 20 20 76 61 72 20 69 20 3d 20 30 3b 20  .    var i = 0; 
1d90: 0d 0a 20 20 20 20 76 61 72 20 6e 65 78 74 50 61  ..    var nextPa
1da0: 72 74 20 3d 20 27 27 3b 0d 0a 20 20 20 20 77 68  rt = '';..    wh
1db0: 69 6c 65 20 28 69 20 3c 20 6e 29 0d 0a 20 20 20  ile (i < n)..   
1dc0: 20 7b 0d 0a 20 20 20 20 20 20 20 20 76 61 72 20   {..        var 
1dd0: 73 74 72 20 3d 20 27 27 3b 0d 0a 20 20 20 20 20  str = '';..     
1de0: 20 20 20 0d 0a 20 20 20 20 20 20 20 20 69 66 20     ..        if 
1df0: 28 6e 65 78 74 50 61 72 74 29 20 0d 0a 20 20 20  (nextPart) ..   
1e00: 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20       {..        
1e10: 20 20 20 20 73 74 72 20 3d 20 6e 65 78 74 50 61      str = nextPa
1e20: 72 74 3b 0d 0a 20 20 20 20 20 20 20 20 7d 0d 0a  rt;..        }..
1e30: 20 20 20 20 20 20 20 20 65 6c 73 65 0d 0a 20 20          else..  
1e40: 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20        {..       
1e50: 20 20 20 20 20 73 74 72 20 3d 20 74 68 69 73 2e       str = this.
1e60: 41 6e 61 6c 79 73 65 43 6f 6d 6d 65 6e 74 73 28  AnalyseComments(
1e70: 4c 69 6e 65 73 5b 69 5d 29 3b 0d 0a 20 20 20 20  Lines[i]);..    
1e80: 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 20 0d      }..        .
1e90: 0a 20 20 20 20 20 20 20 20 73 77 69 74 63 68 28  .        switch(
1ea0: 20 73 74 61 74 65 20 29 0d 0a 20 20 20 20 20 20   state )..      
1eb0: 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 63 61 73    {..        cas
1ec0: 65 20 73 74 53 74 61 72 74 3a 20 20 20 20 20 20  e stStart:      
1ed0: 20 20 0d 0a 20 20 20 20 20 20 20 20 63 61 73 65    ..        case
1ee0: 20 73 74 49 6e 4d 6f 64 75 6c 65 3a 0d 0a 20 20   stInModule:..  
1ef0: 20 20 20 20 20 20 20 20 20 20 76 61 72 20 4d 61            var Ma
1f00: 74 63 68 65 73 20 3d 20 53 79 6e 74 61 78 41 6e  tches = SyntaxAn
1f10: 61 6c 79 73 69 73 2e 52 45 5f 43 4f 4e 54 45 58  alysis.RE_CONTEX
1f20: 54 2e 65 78 65 63 28 73 74 72 29 3b 0d 0a 20 20  T.exec(str);..  
1f30: 20 20 20 20 20 20 20 20 20 20 69 66 20 28 4d 61            if (Ma
1f40: 74 63 68 65 73 21 3d 6e 75 6c 6c 29 20 7b 0d 0a  tches!=null) {..
1f50: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
1f60: 43 6f 6e 74 65 78 74 20 3d 20 53 79 6e 74 61 78  Context = Syntax
1f70: 41 6e 61 6c 79 73 69 73 2e 43 4f 4e 54 45 58 54  Analysis.CONTEXT
1f80: 5b 28 22 22 2b 4d 61 74 63 68 65 73 5b 31 5d 29  [(""+Matches[1])
1f90: 2e 74 6f 4c 6f 77 65 72 43 61 73 65 28 29 5d 3b  .toLowerCase()];
1fa0: 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d  ..            }.
1fb0: 0a 20 20 20 20 20 20 20 20 20 20 20 20 4d 61 74  .            Mat
1fc0: 63 68 65 73 20 3d 20 53 79 6e 74 61 78 41 6e 61  ches = SyntaxAna
1fd0: 6c 79 73 69 73 2e 52 45 5f 50 52 4f 43 2e 65 78  lysis.RE_PROC.ex
1fe0: 65 63 28 73 74 72 29 3b 0d 0a 20 20 20 20 20 20  ec(str);..      
1ff0: 20 20 20 20 20 20 69 66 28 20 4d 61 74 63 68 65        if( Matche
2000: 73 20 21 3d 20 6e 75 6c 6c 20 29 0d 0a 20 20 20  s != null )..   
2010: 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20           {..    
2020: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
2030: 4d 65 74 68 20 3d 20 53 79 6e 74 61 78 41 6e 61  Meth = SyntaxAna
2040: 6c 79 73 69 73 2e 43 72 65 61 74 65 31 43 4d 65  lysis.Create1CMe
2050: 74 68 6f 64 44 65 73 63 72 69 70 74 69 6f 6e 28  thodDescription(
2060: 6d 6f 64 75 6c 65 43 6f 6e 74 65 78 74 29 3b 0d  moduleContext);.
2070: 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  .               
2080: 20 20 20 20 20 4d 65 74 68 2e 4e 61 6d 65 20 3d       Meth.Name =
2090: 20 4d 61 74 63 68 65 73 5b 32 5d 3b 0d 0a 20 20   Matches[2];..  
20a0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
20b0: 20 20 4d 65 74 68 2e 53 74 61 72 74 4c 69 6e 65    Meth.StartLine
20c0: 20 3d 20 69 3b 20 20 20 20 20 20 20 20 20 20 20   = i;           
20d0: 20 20 20 20 20 20 20 20 20 0d 0a 20 20 20 20 20           ..     
20e0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 4d                 M
20f0: 65 74 68 2e 49 73 50 72 6f 63 20 3d 20 28 4d 61  eth.IsProc = (Ma
2100: 74 63 68 65 73 5b 31 5d 2e 74 6f 4c 6f 77 65 72  tches[1].toLower
2110: 43 61 73 65 28 29 20 3d 3d 20 27 d0 bf d1 80 d0  Case() == '.....
2120: be d1 86 d0 b5 d0 b4 d1 83 d1 80 d0 b0 27 20 7c  .............' |
2130: 7c 20 4d 61 74 63 68 65 73 5b 31 5d 2e 74 6f 4c  | Matches[1].toL
2140: 6f 77 65 72 43 61 73 65 28 29 20 3d 3d 20 27 70  owerCase() == 'p
2150: 72 6f 63 65 64 75 72 65 27 29 3b 0d 0a 20 20 20  rocedure');..   
2160: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
2170: 20 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20   ..             
2180: 20 20 20 20 20 20 20 4d 65 74 68 2e 43 6f 6e 74         Meth.Cont
2190: 65 78 74 20 3d 20 28 43 6f 6e 74 65 78 74 2e 6c  ext = (Context.l
21a0: 65 6e 67 74 68 3e 30 29 3f 43 6f 6e 74 65 78 74  ength>0)?Context
21b0: 3a 22 d0 9d d0 b0 d0 a1 d0 b5 d1 80 d0 b2 d0 b5  :"..............
21c0: d1 80 d0 b5 22 3b 20 2f 2f d0 9f d0 be d0 ba d0  ...."; //.......
21d0: b0 20 d1 82 d0 be d0 bb d1 8c d0 ba d0 be 20 d0  . ............ .
21e0: b4 d0 bb d1 8f 20 d1 82 d0 be d0 bd d0 ba d0 be  ..... ..........
21f0: d0 b3 d0 be 20 d0 ba d0 bb d0 b8 d0 b5 d0 bd d1  .... ...........
2200: 82 d0 b0 2e 20 0d 0a 20 20 20 20 20 20 20 20 20  .... ..         
2210: 20 20 20 20 20 20 20 20 20 20 20 73 74 72 20 3d             str =
2220: 20 73 74 72 2e 73 75 62 73 74 72 28 4d 61 74 63   str.substr(Matc
2230: 68 65 73 2e 6c 61 73 74 49 6e 64 65 78 29 3b 0d  hes.lastIndex);.
2240: 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  .               
2250: 20 20 20 20 20 76 61 72 20 73 74 72 50 61 72 61       var strPara
2260: 6d 73 20 3d 20 27 27 3b 0d 0a 20 20 20 20 20 20  ms = '';..      
2270: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 4d 61                Ma
2280: 74 63 68 65 73 20 3d 20 53 79 6e 74 61 78 41 6e  tches = SyntaxAn
2290: 61 6c 79 73 69 73 2e 52 45 5f 50 41 52 41 4d 5f  alysis.RE_PARAM_
22a0: 45 4e 44 2e 65 78 65 63 28 73 74 72 29 3b 0d 0a  END.exec(str);..
22b0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
22c0: 20 20 20 20 69 66 20 28 4d 61 74 63 68 65 73 21      if (Matches!
22d0: 3d 6e 75 6c 6c 29 20 7b 0d 0a 20 20 20 20 20 20  =null) {..      
22e0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
22f0: 20 20 73 74 72 50 61 72 61 6d 73 20 3d 20 4d 61    strParams = Ma
2300: 74 63 68 65 73 5b 31 5d 0d 0a 20 20 20 20 20 20  tches[1]..      
2310: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 20                } 
2320: 65 6c 73 65 20 7b 0d 0a 20 20 20 20 20 20 20 20  else {..        
2330: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
2340: 73 74 72 50 61 72 61 6d 73 20 3d 20 27 27 2b 73  strParams = ''+s
2350: 74 72 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20  tr;..           
2360: 20 20 20 20 20 20 20 20 20 20 20 20 20 69 2b 2b               i++
2370: 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  ;..             
2380: 20 20 20 20 20 20 20 20 20 20 20 77 68 69 6c 65             while
2390: 20 28 69 3c 6e 29 20 7b 20 0d 0a 20 20 20 20 20   (i<n) { ..     
23a0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
23b0: 20 20 20 20 20 20 20 73 74 72 20 3d 20 74 68 69         str = thi
23c0: 73 2e 41 6e 61 6c 79 73 65 43 6f 6d 6d 65 6e 74  s.AnalyseComment
23d0: 73 28 4c 69 6e 65 73 5b 69 5d 29 3b 0d 0a 20 20  s(Lines[i]);..  
23e0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
23f0: 20 20 20 20 20 20 20 20 20 20 69 66 20 28 28 4d            if ((M
2400: 61 74 63 68 65 73 20 3d 20 53 79 6e 74 61 78 41  atches = SyntaxA
2410: 6e 61 6c 79 73 69 73 2e 52 45 5f 50 41 52 41 4d  nalysis.RE_PARAM
2420: 5f 45 4e 44 2e 65 78 65 63 28 73 74 72 29 29 21  _END.exec(str))!
2430: 3d 6e 75 6c 6c 29 20 7b 0d 0a 20 20 20 20 20 20  =null) {..      
2440: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
2450: 20 20 20 20 20 20 20 20 20 20 73 74 72 50 61 72            strPar
2460: 61 6d 73 20 3d 20 73 74 72 50 61 72 61 6d 73 2b  ams = strParams+
2470: 22 5c 6e 22 2b 4d 61 74 63 68 65 73 5b 31 5d 0d  "\n"+Matches[1].
2480: 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  .               
2490: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
24a0: 20 62 72 65 61 6b 3b 0d 0a 20 20 20 20 20 20 20   break;..       
24b0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
24c0: 20 20 20 20 20 7d 20 65 6c 73 65 20 7b 0d 0a 20       } else {.. 
24d0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
24e0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73                 s
24f0: 74 72 50 61 72 61 6d 73 20 3d 20 73 74 72 50 61  trParams = strPa
2500: 72 61 6d 73 2b 22 5c 6e 22 2b 73 74 72 3b 0d 0a  rams+"\n"+str;..
2510: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
2520: 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 20              }.. 
2530: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
2540: 20 20 20 20 20 20 20 20 20 20 20 69 2b 2b 3b 0d             i++;.
2550: 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  .               
2560: 20 20 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20           }..    
2570: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
2580: 7d 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  }..             
2590: 20 20 20 20 20 20 20 74 68 69 73 2e 41 6e 61 6c         this.Anal
25a0: 79 73 65 50 61 72 61 6d 73 28 73 74 72 50 61 72  yseParams(strPar
25b0: 61 6d 73 2c 20 4d 65 74 68 29 3b 0d 0a 20 20 20  ams, Meth);..   
25c0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
25d0: 20 76 61 72 20 65 6e 64 70 72 6f 63 20 3d 20 4d   var endproc = M
25e0: 61 74 63 68 65 73 5b 32 5d 0d 0a 20 20 20 20 20  atches[2]..     
25f0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 0d                 .
2600: 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  .               
2610: 20 20 20 20 20 6d 6f 64 75 6c 65 43 6f 6e 74 65       moduleConte
2620: 78 74 2e 61 64 64 4d 65 74 68 6f 64 28 4d 65 74  xt.addMethod(Met
2630: 68 29 3b 20 0d 0a 20 20 20 20 20 20 20 20 20 20  h); ..          
2640: 20 20 20 20 20 20 20 20 20 20 70 72 6f 63 5f 63            proc_c
2650: 6f 75 6e 74 2b 2b 3b 0d 0a 20 20 20 20 20 20 20  ount++;..       
2660: 20 20 20 20 20 20 20 20 20 20 20 20 20 73 74 61               sta
2670: 74 65 20 3d 20 73 74 49 6e 50 72 6f 63 3b 0d 0a  te = stInProc;..
2680: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
2690: 20 20 20 20 69 66 28 20 28 4d 61 74 63 68 20 3d      if( (Match =
26a0: 20 53 79 6e 74 61 78 41 6e 61 6c 79 73 69 73 2e   SyntaxAnalysis.
26b0: 52 45 5f 50 52 4f 43 5f 45 4e 44 2e 65 78 65 63  RE_PROC_END.exec
26c0: 28 65 6e 64 70 72 6f 63 29 29 20 21 3d 20 6e 75  (endproc)) != nu
26d0: 6c 6c 20 29 0d 0a 20 20 20 20 20 20 20 20 20 20  ll )..          
26e0: 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20            {..   
26f0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
2700: 20 20 20 20 20 73 74 61 74 65 20 3d 20 73 74 49       state = stI
2710: 6e 4d 6f 64 75 6c 65 3b 0d 0a 20 20 20 20 20 20  nModule;..      
2720: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
2730: 20 20 6e 65 78 74 50 61 72 74 20 3d 20 65 6e 64    nextPart = end
2740: 70 72 6f 63 2e 73 75 62 73 74 72 28 53 79 6e 74  proc.substr(Synt
2750: 61 78 41 6e 61 6c 79 73 69 73 2e 52 45 5f 50 52  axAnalysis.RE_PR
2760: 4f 43 5f 45 4e 44 2e 6c 61 73 74 49 6e 64 65 78  OC_END.lastIndex
2770: 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20  );..            
2780: 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28              if (
2790: 6e 65 78 74 50 61 72 74 29 0d 0a 20 20 20 20 20  nextPart)..     
27a0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
27b0: 20 20 20 20 20 20 20 63 6f 6e 74 69 6e 75 65 3b         continue;
27c0: 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  ..              
27d0: 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 20        }..       
27e0: 20 20 20 20 20 20 20 20 20 0d 0a 20 20 20 20 20           ..     
27f0: 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20         }..      
2800: 20 20 20 20 20 20 65 6c 73 65 20 69 66 20 28 28        else if ((
2810: 4d 61 74 63 68 65 73 20 3d 20 53 79 6e 74 61 78  Matches = Syntax
2820: 41 6e 61 6c 79 73 69 73 2e 52 45 5f 56 41 52 53  Analysis.RE_VARS
2830: 5f 44 45 46 2e 65 78 65 63 28 73 74 72 29 29 20  _DEF.exec(str)) 
2840: 21 3d 20 6e 75 6c 6c 29 0d 0a 20 20 20 20 20 20  != null)..      
2850: 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20        {..       
2860: 20 20 20 20 20 20 20 20 20 73 74 72 20 3d 20 4d           str = M
2870: 61 74 63 68 65 73 5b 31 5d 3b 0d 0a 20 20 20 20  atches[1];..    
2880: 20 20 20 20 20 20 20 20 20 20 20 20 6e 65 78 74              next
2890: 50 61 72 74 20 3d 20 4d 61 74 63 68 65 73 5b 34  Part = Matches[4
28a0: 5d 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20  ];..            
28b0: 20 20 20 20 77 68 69 6c 65 28 20 28 4d 61 74 63      while( (Matc
28c0: 68 65 73 20 3d 20 53 79 6e 74 61 78 41 6e 61 6c  hes = SyntaxAnal
28d0: 79 73 69 73 2e 52 45 5f 56 41 52 2e 65 78 65 63  ysis.RE_VAR.exec
28e0: 28 73 74 72 29 29 20 21 3d 20 6e 75 6c 6c 20 29  (str)) != null )
28f0: 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  ..              
2900: 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20    {..           
2910: 20 20 20 20 20 20 20 20 20 69 66 28 20 50 72 65           if( Pre
2920: 76 53 74 61 74 65 20 3d 3d 20 73 74 49 6e 50 72  vState == stInPr
2930: 6f 63 20 29 0d 0a 20 20 20 20 20 20 20 20 20 20  oc )..          
2940: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 4d 65                Me
2950: 74 68 2e 61 64 64 56 61 72 28 4d 61 74 63 68 65  th.addVar(Matche
2960: 73 5b 31 5d 29 3b 0d 0a 20 20 20 20 20 20 20 20  s[1]);..        
2970: 20 20 20 20 20 20 20 20 20 20 20 20 65 6c 73 65              else
2980: 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  ..              
2990: 20 20 20 20 20 20 20 20 20 20 6d 6f 64 75 6c 65            module
29a0: 43 6f 6e 74 65 78 74 2e 61 64 64 56 61 72 28 4d  Context.addVar(M
29b0: 61 74 63 68 65 73 5b 31 5d 29 3b 0d 0a 20 20 20  atches[1]);..   
29c0: 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a               }..
29d0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
29e0: 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  ..              
29f0: 20 20 69 66 20 28 6e 65 78 74 50 61 72 74 29 0d    if (nextPart).
2a00: 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  .               
2a10: 20 20 20 20 20 63 6f 6e 74 69 6e 75 65 3b 0d 0a       continue;..
2a20: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
2a30: 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  ..              
2a40: 20 20 73 74 72 20 3d 20 73 74 72 2e 72 65 70 6c    str = str.repl
2a50: 61 63 65 28 53 79 6e 74 61 78 41 6e 61 6c 79 73  ace(SyntaxAnalys
2a60: 69 73 2e 52 45 5f 53 50 41 43 45 2c 20 22 22 29  is.RE_SPACE, "")
2a70: 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  ;..             
2a80: 20 20 20 69 66 28 20 73 74 72 2e 73 75 62 73 74     if( str.subst
2a90: 72 28 73 74 72 2e 6c 65 6e 67 74 68 2d 31 29 20  r(str.length-1) 
2aa0: 3d 3d 20 22 3b 22 20 29 0d 0a 20 20 20 20 20 20  == ";" )..      
2ab0: 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20            {..   
2ac0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
2ad0: 20 73 74 61 74 65 20 3d 20 50 72 65 76 53 74 61   state = PrevSta
2ae0: 74 65 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20  te;..           
2af0: 20 20 20 20 20 7d 20 0d 0a 20 20 20 20 20 20 20       } ..       
2b00: 20 20 20 20 20 20 20 20 20 65 6c 73 65 20 69 66           else if
2b10: 20 28 73 74 72 2e 73 75 62 73 74 72 28 73 74 72   (str.substr(str
2b20: 2e 6c 65 6e 67 74 68 2d 31 29 20 3d 3d 20 22 2c  .length-1) == ",
2b30: 22 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20  ")..            
2b40: 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20      {..         
2b50: 20 20 20 20 20 20 20 20 20 20 20 50 72 65 76 53             PrevS
2b60: 74 61 74 65 20 3d 20 73 74 61 74 65 3b 0d 0a 20  tate = state;.. 
2b70: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
2b80: 20 20 20 73 74 61 74 65 20 3d 20 73 74 49 6e 56     state = stInV
2b90: 61 72 73 44 65 66 3b 0d 0a 20 20 20 20 20 20 20  arsDef;..       
2ba0: 20 20 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20           }..    
2bb0: 20 20 20 20 20 20 20 20 20 20 20 20 62 72 65 61              brea
2bc0: 6b 3b 20 20 20 20 20 20 20 20 20 20 20 20 0d 0a  k;            ..
2bd0: 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 20              }.. 
2be0: 20 20 20 20 20 20 20 20 20 20 20 62 72 65 61 6b             break
2bf0: 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 0d  ;..            .
2c00: 0a 20 20 20 20 20 20 20 20 63 61 73 65 20 73 74  .        case st
2c10: 49 6e 50 72 6f 63 3a 0d 0a 20 20 20 20 20 20 20  InProc:..       
2c20: 20 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 4d   ..            M
2c30: 61 74 63 68 65 73 20 3d 20 53 79 6e 74 61 78 41  atches = SyntaxA
2c40: 6e 61 6c 79 73 69 73 2e 52 45 5f 50 52 4f 43 5f  nalysis.RE_PROC_
2c50: 45 4e 44 2e 65 78 65 63 28 73 74 72 29 3b 0d 0a  END.exec(str);..
2c60: 20 20 20 20 20 20 20 20 20 20 20 20 69 66 28 20              if( 
2c70: 4d 61 74 63 68 65 73 20 21 3d 20 6e 75 6c 6c 20  Matches != null 
2c80: 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7b  )..            {
2c90: 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  ..              
2ca0: 20 20 69 66 28 20 73 74 61 74 65 20 3d 3d 20 73    if( state == s
2cb0: 74 49 6e 50 72 6f 63 20 29 20 4d 65 74 68 2e 45  tInProc ) Meth.E
2cc0: 6e 64 4c 69 6e 65 20 3d 20 69 3b 0d 0a 20 20 20  ndLine = i;..   
2cd0: 20 20 20 20 20 20 20 20 20 20 20 20 20 73 74 61               sta
2ce0: 74 65 20 3d 20 73 74 49 6e 4d 6f 64 75 6c 65 3b  te = stInModule;
2cf0: 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d  ..            }.
2d00: 0a 20 20 20 20 20 20 20 20 20 20 20 20 65 6c 73  .            els
2d10: 65 20 69 66 28 20 28 4d 61 74 63 68 65 73 20 3d  e if( (Matches =
2d20: 20 53 79 6e 74 61 78 41 6e 61 6c 79 73 69 73 2e   SyntaxAnalysis.
2d30: 52 45 5f 56 41 52 53 5f 44 45 46 2e 65 78 65 63  RE_VARS_DEF.exec
2d40: 28 73 74 72 29 29 20 21 3d 20 6e 75 6c 6c 20 29  (str)) != null )
2d50: 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d  ..            {.
2d60: 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  .               
2d70: 20 76 61 72 20 65 78 70 6f 72 74 65 64 20 3d 20   var exported = 
2d80: 4d 61 74 63 68 65 73 5b 32 5d 3b 0d 0a 20 20 20  Matches[2];..   
2d90: 20 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72               var
2da0: 20 73 65 6d 69 63 6f 6c 6f 6e 20 3d 20 4d 61 74   semicolon = Mat
2db0: 63 68 65 73 5b 33 5d 2e 72 65 70 6c 61 63 65 28  ches[3].replace(
2dc0: 53 79 6e 74 61 78 41 6e 61 6c 79 73 69 73 2e 52  SyntaxAnalysis.R
2dd0: 45 5f 53 50 41 43 45 2c 20 22 22 29 3b 0d 0a 20  E_SPACE, "");.. 
2de0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73                 s
2df0: 74 72 20 3d 20 4d 61 74 63 68 65 73 5b 31 5d 3b  tr = Matches[1];
2e00: 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  ..              
2e10: 20 20 77 68 69 6c 65 28 20 28 4d 61 74 63 68 65    while( (Matche
2e20: 73 20 3d 20 53 79 6e 74 61 78 41 6e 61 6c 79 73  s = SyntaxAnalys
2e30: 69 73 2e 52 45 5f 56 41 52 2e 65 78 65 63 28 73  is.RE_VAR.exec(s
2e40: 74 72 29 29 20 21 3d 20 6e 75 6c 6c 20 29 0d 0a  tr)) != null )..
2e50: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
2e60: 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  {..             
2e70: 20 20 20 20 20 20 20 69 66 28 20 73 74 61 74 65         if( state
2e80: 20 3d 3d 20 73 74 49 6e 50 72 6f 63 20 29 0d 0a   == stInProc )..
2e90: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
2ea0: 20 20 20 20 20 20 20 20 4d 65 74 68 2e 61 64 64          Meth.add
2eb0: 56 61 72 28 4d 61 74 63 68 65 73 5b 31 5d 29 3b  Var(Matches[1]);
2ec0: 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  ..              
2ed0: 20 20 20 20 20 20 65 6c 73 65 0d 0a 20 20 20 20        else..    
2ee0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
2ef0: 20 20 20 20 6d 6f 64 75 6c 65 43 6f 6e 74 65 78      moduleContex
2f00: 74 2e 61 64 64 56 61 72 28 4d 61 74 63 68 65 73  t.addVar(Matches
2f10: 5b 31 5d 29 3b 0d 0a 20 20 20 20 20 20 20 20 20  [1]);..         
2f20: 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20         }..      
2f30: 20 20 20 20 20 20 20 20 20 20 69 66 28 20 73 65            if( se
2f40: 6d 69 63 6f 6c 6f 6e 20 21 3d 20 22 3b 22 20 29  micolon != ";" )
2f50: 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  ..              
2f60: 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20    {..           
2f70: 20 20 20 20 20 20 20 20 20 50 72 65 76 53 74 61           PrevSta
2f80: 74 65 20 3d 20 73 74 61 74 65 3b 0d 0a 20 20 20  te = state;..   
2f90: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
2fa0: 20 73 74 61 74 65 20 3d 20 73 74 49 6e 56 61 72   state = stInVar
2fb0: 73 44 65 66 3b 0d 0a 20 20 20 20 20 20 20 20 20  sDef;..         
2fc0: 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20         }..      
2fd0: 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 20        }..       
2fe0: 20 20 20 20 20 65 6c 73 65 0d 0a 20 20 20 20 20       else..     
2ff0: 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20         {..      
3000: 20 20 20 20 20 20 20 20 20 20 77 68 69 6c 65 28            while(
3010: 20 28 4d 61 74 63 68 65 73 20 3d 20 53 79 6e 74   (Matches = Synt
3020: 61 78 41 6e 61 6c 79 73 69 73 2e 52 45 5f 56 41  axAnalysis.RE_VA
3030: 52 5f 41 53 53 49 47 4e 2e 65 78 65 63 28 73 74  R_ASSIGN.exec(st
3040: 72 29 29 20 21 3d 20 6e 75 6c 6c 20 29 0d 0a 20  r)) != null ).. 
3050: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7b                 {
3060: 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  ..              
3070: 20 20 20 20 20 20 76 61 72 20 76 61 72 4e 61 6d        var varNam
3080: 65 20 3d 20 4d 61 74 63 68 65 73 5b 31 5d 3b 20  e = Matches[1]; 
3090: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
30a0: 20 20 20 0d 0a 20 20 20 20 20 20 20 20 20 20 20     ..           
30b0: 20 20 20 20 20 20 20 20 20 0d 0a 20 20 20 20 20           ..     
30c0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69                 i
30d0: 66 28 20 76 61 72 4e 61 6d 65 2e 69 6e 64 65 78  f( varName.index
30e0: 4f 66 28 22 2e 22 2c 20 30 29 20 3e 3d 20 30 20  Of(".", 0) >= 0 
30f0: 29 20 63 6f 6e 74 69 6e 75 65 3b 0d 0a 20 20 20  ) continue;..   
3100: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
3110: 20 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20   ..             
3120: 20 20 20 20 20 20 20 69 66 20 28 73 74 61 74 65         if (state
3130: 20 3d 3d 20 73 74 49 6e 50 72 6f 63 29 0d 0a 20   == stInProc).. 
3140: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
3150: 20 20 20 20 20 20 20 4d 65 74 68 2e 61 64 64 56         Meth.addV
3160: 61 72 28 76 61 72 4e 61 6d 65 2c 20 6e 75 6c 6c  ar(varName, null
3170: 2c 20 74 72 75 65 29 3b 20 2f 2f 20 61 75 74 6f  , true); // auto
3180: 6d 61 74 69 63 20 76 61 72 0d 0a 20 20 20 20 20  matic var..     
3190: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 65                 e
31a0: 6c 73 65 0d 0a 20 20 20 20 20 20 20 20 20 20 20  lse..           
31b0: 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 6f 64               mod
31c0: 75 6c 65 43 6f 6e 74 65 78 74 2e 61 64 64 56 61  uleContext.addVa
31d0: 72 28 76 61 72 4e 61 6d 65 29 3b 0d 0a 20 20 20  r(varName);..   
31e0: 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a               }..
31f0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
3200: 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  ..              
3210: 20 20 69 66 28 20 73 74 61 74 65 20 3d 3d 20 73    if( state == s
3220: 74 49 6e 50 72 6f 63 20 29 0d 0a 20 20 20 20 20  tInProc )..     
3230: 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20             {..  
3240: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
3250: 20 20 77 68 69 6c 65 28 20 28 4d 61 74 63 68 65    while( (Matche
3260: 73 20 3d 20 53 79 6e 74 61 78 41 6e 61 6c 79 73  s = SyntaxAnalys
3270: 69 73 2e 52 45 5f 43 41 4c 4c 2e 65 78 65 63 28  is.RE_CALL.exec(
3280: 73 74 72 29 29 20 21 3d 20 6e 75 6c 6c 20 29 0d  str)) != null ).
3290: 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  .               
32a0: 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20       {..        
32b0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
32c0: 69 66 28 20 4d 61 74 63 68 65 73 5b 31 5d 2e 69  if( Matches[1].i
32d0: 6e 64 65 78 4f 66 28 27 2e 27 29 20 3e 3d 20 30  ndexOf('.') >= 0
32e0: 20 29 7b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20   ){....         
32f0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
3300: 20 20 20 61 64 64 54 6f 43 61 6c 6c 73 20 3d 20     addToCalls = 
3310: 66 61 6c 73 65 3b 0d 0a 20 20 20 20 20 20 20 20  false;..        
3320: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
3330: 20 20 20 20 63 61 6c 6c 41 72 72 61 79 20 3d 20      callArray = 
3340: 20 4d 61 74 63 68 65 73 5b 31 5d 2e 73 70 6c 69   Matches[1].spli
3350: 74 28 22 2e 22 29 3b 0d 0a 0d 0a 20 20 20 20 20  t(".");....     
3360: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
3370: 20 20 20 20 20 20 20 6d 64 4f 62 6a 65 63 74 20         mdObject 
3380: 3d 20 72 6f 6f 74 4f 62 6a 65 63 74 3b 0d 0a 0d  = rootObject;...
3390: 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  .               
33a0: 20 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20               if 
33b0: 28 63 61 6c 6c 41 72 72 61 79 2e 6c 65 6e 67 74  (callArray.lengt
33c0: 68 20 3e 20 32 29 7b 0d 0a 20 20 20 20 20 20 20  h > 2){..       
33d0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
33e0: 20 20 20 20 20 20 20 20 20 2f 2f d0 ad d1 82 d0           //.....
33f0: be 20 d0 bf d0 be 20 d0 b4 d0 be d0 ba d1 83 d0  . .... .........
3400: bc d0 b5 d0 bd d1 82 d0 b0 d0 bc 2c 20 d1 81 d0  ..........., ...
3410: bf d1 80 d0 b0 d0 b2 d0 be d1 87 d0 bd d0 b8 d0  ................
3420: ba d0 b0 d0 bc 20 d0 b8 20 d1 82 2e d0 b4 2e 20  ..... .. ...... 
3430: d0 b8 d0 b4 d0 b5 d0 bc 2e 0d 0a 20 20 20 20 20  ...........     
3440: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
3450: 20 20 20 20 20 20 20 20 20 20 20 2f 2f 6d 65 74             //met
3460: 61 64 61 74 61 4e 61 6d 65 20 3d 20 4d 61 74 63  adataName = Matc
3470: 68 65 73 5b 31 5d 2e 73 6c 69 63 65 28 30 2c 20  hes[1].slice(0, 
3480: 4d 61 74 63 68 65 73 5b 31 5d 2e 69 6e 64 65 78  Matches[1].index
3490: 4f 66 28 27 2e 27 29 29 3b 0d 0a 20 20 20 20 20  Of('.'));..     
34a0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
34b0: 20 20 20 20 20 20 20 20 20 20 20 74 72 79 7b 0d             try{.
34c0: 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  .               
34d0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
34e0: 20 20 20 20 20 6d 64 4f 62 6a 65 63 74 20 3d 20       mdObject = 
34f0: 72 6f 6f 74 4f 62 6a 65 63 74 2e 63 68 69 6c 64  rootObject.child
3500: 4f 62 6a 65 63 74 28 63 61 6c 6c 41 72 72 61 79  Object(callArray
3510: 5b 30 5d 2c 20 63 61 6c 6c 41 72 72 61 79 5b 31  [0], callArray[1
3520: 5d 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20  ]);..           
3530: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
3540: 20 20 20 20 20 20 20 20 20 69 66 28 6d 64 4f 62           if(mdOb
3550: 6a 65 63 2e 6e 61 6d 65 2e 74 6f 53 74 72 69 6e  jec.name.toStrin
3560: 67 28 29 2e 6c 65 6e 67 74 68 3e 30 29 7b 0d 0a  g().length>0){..
3570: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
3580: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
3590: 20 20 20 20 20 20 20 20 61 64 64 54 6f 43 61 6c          addToCal
35a0: 6c 73 20 3d 20 74 72 75 65 3b 0d 0a 20 20 20 20  ls = true;..    
35b0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
35c0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
35d0: 7d 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  }..             
35e0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
35f0: 20 20 20 20 20 20 20 20 20 20 20 0d 0a 20 20 20             ..   
3600: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
3610: 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 20 63               } c
3620: 61 74 63 68 28 65 29 7b 7d 0d 0a 20 20 20 20 20  atch(e){}..     
3630: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
3640: 20 20 20 20 20 20 20 7d 20 65 6c 73 65 20 69 66         } else if
3650: 28 63 61 6c 6c 41 72 72 61 79 2e 6c 65 6e 67 74  (callArray.lengt
3660: 68 20 3e 20 31 20 26 26 20 63 61 6c 6c 41 72 72  h > 1 && callArr
3670: 61 79 5b 30 5d 2e 6c 65 6e 67 74 68 20 3e 20 30  ay[0].length > 0
3680: 29 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20  ) {..           
3690: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
36a0: 20 20 20 20 20 2f 2f d0 a2 d1 83 d1 82 20 d0 bf       //...... ..
36b0: d0 be 20 d0 be d0 b1 d1 89 d0 b8 d0 bc 20 d0 bc  .. .......... ..
36c0: d0 be d0 b4 d1 83 d0 bb d1 8f d0 bc 20 d0 bf d1  ............ ...
36d0: 80 d0 be d0 b9 d0 b4 d0 b5 d0 bc d1 81 d1 8f 2e  ................
36e0: 20 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20   ..             
36f0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
3700: 20 20 20 74 72 79 7b 0d 0a 20 20 20 20 20 20 20     try{..       
3710: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
3720: 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 64 4f               mdO
3730: 62 6a 65 63 74 20 3d 20 72 6f 6f 74 4f 62 6a 65  bject = rootObje
3740: 63 74 2e 63 68 69 6c 64 4f 62 6a 65 63 74 28 22  ct.childObject("
3750: d0 9e d0 b1 d1 89 d0 b8 d0 b5 d0 9c d0 be d0 b4  ................
3760: d1 83 d0 bb d0 b8 22 2c 20 63 61 6c 6c 41 72 72  ......", callArr
3770: 61 79 5b 30 5d 29 3b 0d 0a 20 20 20 20 20 20 20  ay[0]);..       
3780: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
3790: 20 20 20 20 20 20 20 20 20 20 20 20 20 69 66 28               if(
37a0: 6d 64 4f 62 6a 65 63 2e 6e 61 6d 65 2e 74 6f 53  mdObjec.name.toS
37b0: 74 72 69 6e 67 28 29 2e 6c 65 6e 67 74 68 3e 30  tring().length>0
37c0: 29 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20  ){..            
37d0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
37e0: 20 20 20 20 20 20 20 20 20 20 20 20 61 64 64 54              addT
37f0: 6f 43 61 6c 6c 73 20 3d 20 74 72 75 65 3b 0d 0a  oCalls = true;..
3800: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
3810: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
3820: 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 20 20      }..         
3830: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
3840: 20 20 20 20 20 20 20 7d 20 63 61 74 63 68 28 65         } catch(e
3850: 29 7b 7d 0d 0a 20 20 20 20 20 20 20 20 20 20 20  ){}..           
3860: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
3870: 20 7d 20 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20   } ....         
3880: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
3890: 20 20 20 2f 2f 69 66 28 77 61 6c 6b 4d 65 74 61     //if(walkMeta
38a0: 64 61 74 61 28 72 6f 6f 74 4f 62 6a 65 63 74 2c  data(rootObject,
38b0: 20 6d 65 74 61 64 61 74 61 4e 61 6d 65 2c 20 63   metadataName, c
38c0: 61 63 68 65 4d 65 74 61 64 61 74 61 29 29 7b 0d  acheMetadata)){.
38d0: 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  .               
38e0: 20 20 20 20 20 20 20 20 20 20 20 20 20 69 66 28               if(
38f0: 61 64 64 54 6f 43 61 6c 6c 73 29 7b 0d 0a 20 20  addToCalls){..  
3900: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
3910: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 66                if
3920: 28 4d 65 74 68 2e 43 61 6c 6c 73 2e 69 6e 64 65  (Meth.Calls.inde
3930: 78 4f 66 28 4d 61 74 63 68 65 73 5b 31 5d 29 20  xOf(Matches[1]) 
3940: 3e 3d 20 30 29 20 63 6f 6e 74 69 6e 75 65 3b 0d  >= 0) continue;.
3950: 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  .               
3960: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
3970: 20 4d 65 74 68 2e 43 61 6c 6c 73 2e 70 75 73 68   Meth.Calls.push
3980: 28 4d 61 74 63 68 65 73 5b 31 5d 29 3b 0d 0a 0d  (Matches[1]);...
3990: 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  .               
39a0: 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a               }..
39b0: 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  ..              
39c0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f                //
39d0: d0 a1 d0 b4 d0 b5 d0 bb d0 b0 d0 b5 d0 bc 20 d0  .............. .
39e0: bf d0 be d0 b8 d1 81 d0 ba 20 d0 bf d0 be 20 d0  ......... .... .
39f0: be d0 b1 d1 89 d0 b8 d0 bc 20 d0 bc d0 be d0 b4  ......... ......
3a00: d1 83 d0 bb d1 8f d0 bc 20 d0 b8 d0 bb d0 b8 20  ........ ...... 
3a10: d0 bf d0 be d0 b4 20 d0 b4 d0 be d0 ba d1 83 d0  ...... .........
3a20: bc d0 b5 d0 bd d1 82 d0 b0 d0 bc 2c 20 d0 b2 d0  ..........., ...
3a30: b4 d1 80 d1 83 d0 b3 20 d1 82 d0 b0 d0 bc 20 d1  ....... ...... .
3a40: 83 20 d0 bd d0 b0 d1 81 20 d1 81 d1 82 d0 b0 d1  . ...... .......
3a50: 82 d0 b8 d1 87 d0 b5 d1 81 d0 ba d0 b8 d0 b9 20  ............... 
3a60: d0 b2 d1 8b d0 b7 d0 be d0 b2 2e 20 0d 0a 20 20  ........... ..  
3a70: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
3a80: 20 20 20 20 20 20 20 20 20 20 2f 2f 76 61 72 20            //var 
3a90: 6d 64 52 65 66 20 3d 20 6d 65 74 61 64 61 74 61  mdRef = metadata
3aa0: 2e 63 75 72 72 65 6e 74 2e 72 6f 6f 74 4f 62 6a  .current.rootObj
3ab0: 65 63 74 2e 63 68 69 6c 64 4f 62 6a 65 63 74 28  ect.childObject(
3ac0: 22 d0 a1 d0 bf d1 80 d0 b0 d0 b2 d0 be d1 87 d0  "...............
3ad0: bd d0 b8 d0 ba d0 b8 22 2c 20 22 d0 9d d0 be d0  .......", ".....
3ae0: bc d0 b5 d0 bd d0 ba d0 bb d0 b0 d1 82 d1 83 d1  ................
3af0: 80 d0 b0 22 29 0d 0a 20 20 20 20 20 20 20 20 20  ...")..         
3b00: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d                 }
3b10: 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  ..              
3b20: 20 20 20 20 20 20 20 20 20 20 69 66 28 20 4d 65            if( Me
3b30: 74 68 2e 43 61 6c 6c 73 2e 69 6e 64 65 78 4f 66  th.Calls.indexOf
3b40: 28 4d 61 74 63 68 65 73 5b 31 5d 29 20 3e 3d 20  (Matches[1]) >= 
3b50: 30 29 20 63 6f 6e 74 69 6e 75 65 3b 0d 0a 20 20  0) continue;..  
3b60: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
3b70: 20 20 20 20 20 20 4d 65 74 68 2e 43 61 6c 6c 73        Meth.Calls
3b80: 2e 70 75 73 68 28 4d 61 74 63 68 65 73 5b 31 5d  .push(Matches[1]
3b90: 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20  );..            
3ba0: 20 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 20          }..     
3bb0: 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 20 20             }..  
3bc0: 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 20 20 20            }..   
3bd0: 20 20 20 20 20 20 20 20 20 62 72 65 61 6b 3b 20           break; 
3be0: 20 0d 0a 0d 0a 20 20 20 20 20 20 20 20 63 61 73   ....        cas
3bf0: 65 20 73 74 49 6e 56 61 72 73 44 65 66 3a 0d 0a  e stInVarsDef:..
3c00: 20 20 20 20 20 20 20 20 0d 0a 20 20 20 20 20 20          ..      
3c10: 20 20 20 20 20 20 77 68 69 6c 65 28 20 28 4d 61        while( (Ma
3c20: 74 63 68 65 73 20 3d 20 53 79 6e 74 61 78 41 6e  tches = SyntaxAn
3c30: 61 6c 79 73 69 73 2e 52 45 5f 56 41 52 2e 65 78  alysis.RE_VAR.ex
3c40: 65 63 28 73 74 72 29 29 20 21 3d 20 6e 75 6c 6c  ec(str)) != null
3c50: 20 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20   )..            
3c60: 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  {..             
3c70: 20 20 20 69 66 28 20 50 72 65 76 53 74 61 74 65     if( PrevState
3c80: 20 3d 3d 20 73 74 49 6e 50 72 6f 63 20 29 0d 0a   == stInProc )..
3c90: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
3ca0: 20 20 20 20 4d 65 74 68 2e 61 64 64 56 61 72 28      Meth.addVar(
3cb0: 4d 61 74 63 68 65 73 5b 31 5d 29 3b 0d 0a 20 20  Matches[1]);..  
3cc0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 65 6c                el
3cd0: 73 65 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20  se..            
3ce0: 20 20 20 20 20 20 20 20 6d 6f 64 75 6c 65 43 6f          moduleCo
3cf0: 6e 74 65 78 74 2e 61 64 64 56 61 72 28 4d 61 74  ntext.addVar(Mat
3d00: 63 68 65 73 5b 31 5d 29 3b 0d 0a 20 20 20 20 20  ches[1]);..     
3d10: 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20         }..      
3d20: 20 20 20 20 20 20 73 74 72 20 3d 20 73 74 72 2e        str = str.
3d30: 72 65 70 6c 61 63 65 28 53 79 6e 74 61 78 41 6e  replace(SyntaxAn
3d40: 61 6c 79 73 69 73 2e 52 45 5f 53 50 41 43 45 2c  alysis.RE_SPACE,
3d50: 20 22 22 29 3b 0d 0a 20 20 20 20 20 20 20 20 20   "");..         
3d60: 20 20 20 69 66 28 20 73 74 72 2e 73 75 62 73 74     if( str.subst
3d70: 72 28 73 74 72 2e 6c 65 6e 67 74 68 2d 31 29 20  r(str.length-1) 
3d80: 3d 3d 20 22 3b 22 20 29 0d 0a 20 20 20 20 20 20  == ";" )..      
3d90: 20 20 20 20 20 20 20 20 20 20 73 74 61 74 65 20            state 
3da0: 3d 20 50 72 65 76 53 74 61 74 65 3b 0d 0a 20 20  = PrevState;..  
3db0: 20 20 20 20 20 20 20 20 20 20 62 72 65 61 6b 3b            break;
3dc0: 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 0d 0a  ..            ..
3dd0: 20 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 20          }..     
3de0: 20 20 20 0d 0a 20 20 20 20 20 20 20 20 69 2b 2b     ..        i++
3df0: 3b 0d 0a 20 20 20 20 20 20 20 20 6e 65 78 74 50  ;..        nextP
3e00: 61 72 74 20 3d 20 27 27 3b 0d 0a 20 20 20 20 7d  art = '';..    }
3e10: 0d 0a 0d 0a 20 20 20 20 72 65 74 75 72 6e 20 6d  ....    return m
3e20: 6f 64 75 6c 65 43 6f 6e 74 65 78 74 3b 0d 0a 7d  oduleContext;..}
3e30: 0d 0a 0d 0a 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f  ....////////////
3e40: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f  ////////////////
3e50: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f  ////////////////
3e60: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f  ////////////////
3e70: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f  ////////////////
3e80: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 0d 0a 2f 2f  ////////////..//
3e90: 2f 2f 7b 20 5f 31 43 4d 6f 64 75 6c 65 0d 0a 0d  //{ _1CModule...
3ea0: 0a 66 75 6e 63 74 69 6f 6e 20 5f 31 43 4d 6f 64  .function _1CMod
3eb0: 75 6c 65 28 74 65 78 74 57 69 6e 64 6f 77 29 20  ule(textWindow) 
3ec0: 7b 0d 0a 20 20 20 20 74 68 69 73 2e 74 65 78 74  {..    this.text
3ed0: 57 69 6e 64 6f 77 20 3d 20 74 65 78 74 57 69 6e  Window = textWin
3ee0: 64 6f 77 3b 0d 0a 20 20 20 20 74 68 69 73 2e 63  dow;..    this.c
3ef0: 6f 6e 74 65 78 74 20 3d 20 53 79 6e 74 61 78 41  ontext = SyntaxA
3f00: 6e 61 6c 79 73 69 73 2e 41 6e 61 6c 79 73 65 4d  nalysis.AnalyseM
3f10: 6f 64 75 6c 65 28 74 68 69 73 2e 74 65 78 74 57  odule(this.textW
3f20: 69 6e 64 6f 77 2e 47 65 74 54 65 78 74 28 29 2c  indow.GetText(),
3f30: 20 74 72 75 65 2c 20 74 68 69 73 2e 74 65 78 74   true, this.text
3f40: 57 69 6e 64 6f 77 29 3b 0d 0a 7d 0d 0a 0d 0a 2f  Window);..}..../
3f50: 2a 20 d0 92 d0 be d0 b7 d0 b2 d1 80 d0 b0 d1 89  * ..............
3f60: d0 b0 d0 b5 d1 82 20 d0 b8 d1 81 d1 85 d0 be d0  ...... .........
3f70: b4 d0 bd d1 8b d0 b9 20 d0 ba d0 be d0 b4 20 d0  ....... ...... .
3f80: bc d0 b5 d1 82 d0 be d0 b4 d0 b0 20 d0 bf d0 be  ........... ....
3f90: 20 d0 bd d0 b0 d0 b7 d0 b2 d0 b0 d0 bd d0 b8 d1   ...............
3fa0: 8e 20 d0 bc d0 b5 d1 82 d0 be d0 b4 d0 b0 2e 20  . ............. 
3fb0: 2a 2f 0d 0a 5f 31 43 4d 6f 64 75 6c 65 2e 70 72  */.._1CModule.pr
3fc0: 6f 74 6f 74 79 70 65 2e 67 65 74 4d 65 74 68 6f  ototype.getMetho
3fd0: 64 53 6f 75 72 63 65 20 3d 20 66 75 6e 63 74 69  dSource = functi
3fe0: 6f 6e 28 6d 65 74 68 6f 64 4e 61 6d 65 29 20 7b  on(methodName) {
3ff0: 0d 0a 20 20 20 20 76 61 72 20 6d 65 74 68 6f 64  ..    var method
4000: 20 3d 20 74 68 69 73 2e 63 6f 6e 74 65 78 74 2e   = this.context.
4010: 67 65 74 4d 65 74 68 6f 64 42 79 4e 61 6d 65 28  getMethodByName(
4020: 6d 65 74 68 6f 64 4e 61 6d 65 29 3b 0d 0a 20 20  methodName);..  
4030: 20 20 69 66 20 28 21 6d 65 74 68 6f 64 29 20 72    if (!method) r
4040: 65 74 75 72 6e 20 75 6e 64 65 66 69 6e 65 64 3b  eturn undefined;
4050: 0d 0a 20 20 20 20 72 65 74 75 72 6e 20 74 68 69  ..    return thi
4060: 73 2e 74 65 78 74 57 69 6e 64 6f 77 2e 52 61 6e  s.textWindow.Ran
4070: 67 65 28 6d 65 74 68 6f 64 2e 53 74 61 72 74 4c  ge(method.StartL
4080: 69 6e 65 20 2b 20 31 2c 20 31 2c 20 6d 65 74 68  ine + 1, 1, meth
4090: 6f 64 2e 45 6e 64 4c 69 6e 65 20 2b 20 31 29 2e  od.EndLine + 1).
40a0: 47 65 74 54 65 78 74 28 29 3b 0d 0a 7d 0d 0a 0d  GetText();..}...
40b0: 0a 2f 2a 20 d0 92 d0 be d0 b7 d0 b2 d1 80 d0 b0  ./* ............
40c0: d1 89 d0 b0 d0 b5 d1 82 20 d1 82 d0 b0 d0 b1 d0  ........ .......
40d0: bb d0 b8 d1 86 d1 83 20 d0 b7 d0 bd d0 b0 d1 87  ....... ........
40e0: d0 b5 d0 bd d0 b8 d0 b9 20 d1 81 20 d0 be d0 bf  ........ .. ....
40f0: d0 b8 d1 81 d0 b0 d0 bd d0 b8 d1 8f d0 bc d0 b8  ................
4100: 20 d0 bc d0 b5 d1 82 d0 be d0 b4 d0 be d0 b2 20   .............. 
4110: d0 bc d0 be d0 b4 d1 83 d0 bb d1 8f 2e 20 2a 2f  ............. */
4120: 0d 0a 5f 31 43 4d 6f 64 75 6c 65 2e 70 72 6f 74  .._1CModule.prot
4130: 6f 74 79 70 65 2e 67 65 74 4d 65 74 68 6f 64 73  otype.getMethods
4140: 54 61 62 6c 65 20 3d 20 66 75 6e 63 74 69 6f 6e  Table = function
4150: 28 29 20 7b 0d 0a 20 20 20 20 72 65 74 75 72 6e  () {..    return
4160: 20 74 68 69 73 2e 63 6f 6e 74 65 78 74 2e 5f 76   this.context._v
4170: 74 41 6c 6c 4d 65 74 68 6f 64 73 2e 43 6f 70 79  tAllMethods.Copy
4180: 28 29 3b 0d 0a 7d 0d 0a 0d 0a 2f 2a 20 d0 92 d0  ();..}..../* ...
4190: be d0 b7 d0 b2 d1 80 d0 b0 d1 89 d0 b0 d0 b5 d1  ................
41a0: 82 20 d0 be d0 bf d0 b8 d1 81 d0 b0 d0 bd d0 b8  . ..............
41b0: d0 b5 20 d0 bc d0 b5 d1 82 d0 be d0 b4 d0 b0 20  .. ............ 
41c0: d0 bf d0 be 20 d0 bd d0 be d0 bc d0 b5 d1 80 d1  .... ...........
41d0: 83 20 d1 81 d1 82 d1 80 d0 be d0 ba d0 b8 2c 20  . ............, 
41e0: d0 bd d0 b0 d1 85 d0 be d0 b4 d1 8f d1 89 d0 b5  ................
41f0: d0 b9 d1 81 d1 8f 20 d0 b2 d0 bd d1 83 d1 82 d1  ...... .........
4200: 80 d0 b8 20 d0 bc d0 b5 d1 82 d0 be d0 b4 d0 b0  ... ............
4210: 2e 20 2a 2f 0d 0a 5f 31 43 4d 6f 64 75 6c 65 2e  . */.._1CModule.
4220: 70 72 6f 74 6f 74 79 70 65 2e 67 65 74 4d 65 74  prototype.getMet
4230: 68 6f 64 42 79 4c 69 6e 65 4e 75 6d 62 65 72 20  hodByLineNumber 
4240: 3d 20 66 75 6e 63 74 69 6f 6e 20 28 6c 69 6e 65  = function (line
4250: 4e 6f 29 20 7b 0d 0a 0d 0a 20 20 20 20 76 61 72  No) {....    var
4260: 20 6d 65 74 68 6f 64 73 20 3d 20 74 68 69 73 2e   methods = this.
4270: 63 6f 6e 74 65 78 74 2e 4d 65 74 68 6f 64 73 3b  context.Methods;
4280: 0d 0a 20 20 20 20 0d 0a 20 20 20 20 66 6f 72 20  ..    ..    for 
4290: 28 76 61 72 20 69 3d 30 3b 20 69 3c 6d 65 74 68  (var i=0; i<meth
42a0: 6f 64 73 2e 6c 65 6e 67 74 68 3b 20 69 2b 2b 29  ods.length; i++)
42b0: 0d 0a 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20  ..    {..       
42c0: 20 2f 2a 20 d0 9f d0 be d0 bc d0 bd d0 b8 d0 bc   /* ............
42d0: 2c 20 d1 87 d1 82 d0 be 20 d0 bd d1 83 d0 bc d0  , ...... .......
42e0: b5 d1 80 d0 b0 d1 86 d0 b8 d1 8f 20 d1 81 d1 82  ........... ....
42f0: d1 80 d0 be d0 ba 20 d0 bd d0 b0 d1 87 d0 b8 d0  ...... .........
4300: bd d0 b0 d0 b5 d1 82 d1 81 d1 8f 20 d1 81 20 31  ........... .. 1
4310: 2c 20 0d 0a 20 20 20 20 20 20 20 20 d0 b0 20 d1  , ..        .. .
4320: 81 d1 82 d1 80 d0 be d0 ba d0 b8 20 d0 bc d0 be  ........... ....
4330: d0 b4 d1 83 d0 bb d1 8f 20 d0 b2 20 53 79 6e 74  ........ .. Synt
4340: 61 78 41 6e 61 6c 79 73 69 73 20 d0 bf d1 80 d0  axAnalysis .....
4350: be d0 b8 d0 bd d0 b4 d0 b5 d0 ba d1 81 d0 b8 d1  ................
4360: 80 d0 be d0 b2 d0 b0 d0 bd d1 8b 20 d1 81 20 30  ........... .. 0
4370: 2e 20 2a 2f 0d 0a 20 20 20 20 20 20 20 20 69 66  . */..        if
4380: 20 28 6d 65 74 68 6f 64 73 5b 69 5d 2e 53 74 61   (methods[i].Sta
4390: 72 74 4c 69 6e 65 20 2b 20 31 20 3c 3d 20 6c 69  rtLine + 1 <= li
43a0: 6e 65 4e 6f 20 26 26 20 6c 69 6e 65 4e 6f 20 3c  neNo && lineNo <
43b0: 3d 20 6d 65 74 68 6f 64 73 5b 69 5d 2e 45 6e 64  = methods[i].End
43c0: 4c 69 6e 65 20 2b 20 31 29 0d 0a 20 20 20 20 20  Line + 1)..     
43d0: 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 6d 65         return me
43e0: 74 68 6f 64 73 5b 69 5d 3b 0d 0a 20 20 20 20 7d  thods[i];..    }
43f0: 0d 0a 20 20 20 20 0d 0a 20 20 20 20 72 65 74 75  ..    ..    retu
4400: 72 6e 20 75 6e 64 65 66 69 6e 65 64 3b 0d 0a 7d  rn undefined;..}
4410: 0d 0a 0d 0a 2f 2a 20 d0 92 d0 be d0 b7 d0 b2 d1  ..../* .........
4420: 80 d0 b0 d1 89 d0 b0 d0 b5 d1 82 20 d0 be d0 bf  ........... ....
4430: d0 b8 d1 81 d0 b0 d0 bd d0 b8 d0 b5 20 d0 bc d0  ............ ...
4440: b5 d1 82 d0 be d0 b4 d0 b0 2c 20 d0 ba d0 be d1  ........., .....
4450: 82 d0 be d1 80 d0 be d0 bc d1 83 20 d0 bf d1 80  ........... ....
4460: d0 b8 d0 bd d0 b0 d0 b4 d0 bb d0 b5 d0 b6 d0 b8  ................
4470: d1 82 20 d1 82 d0 b5 d0 ba d1 83 d1 89 d0 b0 d1  .. .............
4480: 8f 20 d1 81 d1 82 d1 80 d0 be d0 ba d0 b0 20 0d  . ............ .
4490: 0a 28 d1 81 d1 82 d1 80 d0 be d0 ba d0 b0 2c 20  .(............, 
44a0: d0 b2 20 d0 ba d0 be d1 82 d0 be d1 80 d0 be d0  .. .............
44b0: b9 20 d0 bd d0 b0 d1 85 d0 be d0 b4 d0 b8 d1 82  . ..............
44c0: d1 81 d1 8f 20 d0 ba d1 83 d1 80 d1 81 d0 be d1  .... ...........
44d0: 80 29 2e 20 2a 2f 0d 0a 5f 31 43 4d 6f 64 75 6c  .). */.._1CModul
44e0: 65 2e 70 72 6f 74 6f 74 79 70 65 2e 67 65 74 41  e.prototype.getA
44f0: 63 74 69 76 65 4c 69 6e 65 4d 65 74 68 6f 64 20  ctiveLineMethod 
4500: 3d 20 66 75 6e 63 74 69 6f 6e 20 28 29 20 7b 0d  = function () {.
4510: 0a 20 20 20 20 76 61 72 20 70 6f 73 20 3d 20 74  .    var pos = t
4520: 68 69 73 2e 74 65 78 74 57 69 6e 64 6f 77 2e 47  his.textWindow.G
4530: 65 74 43 61 72 65 74 50 6f 73 28 29 3b 0d 0a 20  etCaretPos();.. 
4540: 20 20 20 72 65 74 75 72 6e 20 74 68 69 73 2e 67     return this.g
4550: 65 74 4d 65 74 68 6f 64 42 79 4c 69 6e 65 4e 75  etMethodByLineNu
4560: 6d 62 65 72 28 70 6f 73 2e 62 65 67 69 6e 52 6f  mber(pos.beginRo
4570: 77 29 3b 0d 0a 7d 0d 0a 0d 0a 2f 2f 2f 2f 7d 20  w);..}....////} 
4580: 5f 31 43 4d 6f 64 75 6c 65 0d 0a 0d 0a 2f 2f 2f  _1CModule....///
4590: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f  ////////////////
45a0: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f  ////////////////
45b0: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f  ////////////////
45c0: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f  ////////////////
45d0: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f  ////////////////
45e0: 2f 2f 2f 2f 2f 0d 0a 2f 2f 2f 2f 7b 20 5f 31 43  /////..////{ _1C
45f0: 4d 6f 64 75 6c 65 43 6f 6e 74 65 78 74 44 65 73  ModuleContextDes
4600: 63 72 69 70 74 69 6f 6e 0d 0a 0d 0a 66 75 6e 63  cription....func
4610: 74 69 6f 6e 20 5f 31 43 4d 6f 64 75 6c 65 43 6f  tion _1CModuleCo
4620: 6e 74 65 78 74 44 65 73 63 72 69 70 74 69 6f 6e  ntextDescription
4630: 28 69 6e 69 74 56 61 6c 75 65 54 61 62 6c 65 29  (initValueTable)
4640: 20 7b 0d 0a 0d 0a 20 20 20 20 2f 2f 20 d0 9c d0   {....    // ...
4650: b0 d1 81 d1 81 d0 b8 d0 b2 20 d0 b2 d1 81 d0 b5  ......... ......
4660: d1 85 20 d0 bc d0 b5 d1 82 d0 be d0 b4 d0 be d0  .. .............
4670: b2 20 d0 bc d0 be d0 b4 d1 83 d0 bb d1 8f 2e 0d  . ..............
4680: 0a 20 20 20 20 74 68 69 73 2e 4d 65 74 68 6f 64  .    this.Method
4690: 73 20 3d 20 6e 65 77 20 41 72 72 61 79 28 29 3b  s = new Array();
46a0: 0d 0a 20 20 20 20 20 20 20 20 0d 0a 20 20 20 20  ..        ..    
46b0: 2f 2f 20 d0 90 d1 81 d1 81 d0 be d1 86 d0 b8 d0  // .............
46c0: b0 d1 82 d0 b8 d0 b2 d0 bd d1 8b d0 b9 20 d0 bc  ............. ..
46d0: d0 b0 d1 81 d1 81 d0 b8 d0 b2 20 d0 98 d0 bc d1  .......... .....
46e0: 8f 20 d0 bc d0 b5 d1 82 d0 be d0 b4 d0 b0 20 2d  . ............ -
46f0: 3e 20 5f 31 43 4d 65 74 68 6f 64 44 65 73 63 72  > _1CMethodDescr
4700: 69 70 74 69 6f 6e 0d 0a 20 20 20 20 74 68 69 73  iption..    this
4710: 2e 5f 6d 65 74 68 6f 64 73 42 79 4e 61 6d 65 20  ._methodsByName 
4720: 3d 20 7b 7d 3b 0d 0a 20 20 20 20 0d 0a 20 20 20  = {};..    ..   
4730: 20 2f 2f 20 d0 9c d0 b0 d1 81 d1 81 d0 b8 d0 b2   // ............
4740: 20 d0 b2 d1 81 d0 b5 d1 85 20 d1 8f d0 b2 d0 bd   ........ ......
4750: d1 8b d0 bc 20 d0 be d0 b1 d1 80 d0 b0 d0 b7 d0  .... ...........
4760: be d0 bc 20 d0 be d0 b1 d1 8a d1 8f d0 b2 d0 bb  ... ............
4770: d0 b5 d0 bd d0 bd d1 8b d1 85 20 d0 bf d0 b5 d1  .......... .....
4780: 80 d0 b5 d0 bc d0 b5 d0 bd d0 bd d1 8b d1 85 20  ............... 
4790: d0 bc d0 be d0 b4 d1 83 d0 bb d1 8f 2e 0d 0a 20  ............... 
47a0: 20 20 20 74 68 69 73 2e 4d 6f 64 75 6c 65 56 61     this.ModuleVa
47b0: 72 73 20 3d 20 6e 65 77 20 41 72 72 61 79 28 29  rs = new Array()
47c0: 3b 20 20 20 20 20 20 20 20 0d 0a 20 20 20 20 0d  ;        ..    .
47d0: 0a 20 20 20 20 2f 2f 20 d0 90 d1 81 d1 81 d0 be  .    // ........
47e0: d1 86 d0 b8 d0 b0 d1 82 d0 b8 d0 b2 d0 bd d1 8b  ................
47f0: d0 b9 20 d0 bc d0 b0 d1 81 d1 81 d0 b8 d0 b2 20  .. ............ 
4800: d0 98 d0 bc d1 8f 20 d0 bf d0 b5 d1 80 d0 b5 d0  ...... .........
4810: bc d0 b5 d0 bd d0 bd d0 be d0 b9 20 2d 3e 20 d0  ........... -> .
4820: a2 d0 b8 d0 bf 20 d0 bf d0 b5 d1 80 d0 b5 d0 bc  ..... ..........
4830: d0 b5 d0 bd d0 bd d0 be d0 b9 20 28 d0 bf d0 be  .......... (....
4840: d0 ba d0 b0 20 d1 82 d0 b8 d0 bf 20 d0 b2 d1 81  .... ...... ....
4850: d0 b5 d0 b3 d0 b4 d0 b0 20 6e 75 6c 6c 29 2e 0d  ........ null)..
4860: 0a 20 20 20 20 74 68 69 73 2e 5f 6d 6f 64 75 6c  .    this._modul
4870: 65 56 61 72 73 54 79 70 65 73 20 3d 20 7b 7d 3b  eVarsTypes = {};
4880: 0d 0a 20 20 20 20 0d 0a 20 20 20 20 74 68 69 73  ..    ..    this
4890: 2e 5f 76 74 41 6c 6c 4d 65 74 68 6f 64 73 20 3d  ._vtAllMethods =
48a0: 20 6e 75 6c 6c 3b 0d 0a 20 20 20 20 69 66 20 28   null;..    if (
48b0: 69 6e 69 74 56 61 6c 75 65 54 61 62 6c 65 29 20  initValueTable) 
48c0: 0d 0a 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20  ..    {..       
48d0: 20 76 61 72 20 76 38 54 79 70 65 5f 53 74 72 69   var v8Type_Stri
48e0: 6e 67 20 3d 20 76 38 4e 65 77 28 27 54 79 70 65  ng = v8New('Type
48f0: 44 65 73 63 72 69 70 74 69 6f 6e 27 2c 20 27 d0  Description', '.
4900: a1 d1 82 d1 80 d0 be d0 ba d0 b0 27 2c 20 75 6e  ...........', un
4910: 64 65 66 69 6e 65 64 2c 20 76 38 4e 65 77 28 27  defined, v8New('
4920: 53 74 72 69 6e 67 51 75 61 6c 69 66 69 65 72 73  StringQualifiers
4930: 27 2c 20 32 35 35 29 29 3b 0d 0a 20 20 20 20 20  ', 255));..     
4940: 20 20 20 76 61 72 20 76 38 54 79 70 65 5f 4e 75     var v8Type_Nu
4950: 6d 62 65 72 20 3d 20 76 38 4e 65 77 28 27 54 79  mber = v8New('Ty
4960: 70 65 44 65 73 63 72 69 70 74 69 6f 6e 27 2c 20  peDescription', 
4970: 27 d0 a7 d0 b8 d1 81 d0 bb d0 be 27 2c 20 76 38  '..........', v8
4980: 4e 65 77 28 27 4e 75 6d 62 65 72 51 75 61 6c 69  New('NumberQuali
4990: 66 69 65 72 73 27 2c 20 31 30 2c 20 30 29 29 3b  fiers', 10, 0));
49a0: 0d 0a 20 20 20 20 20 20 20 20 76 61 72 20 76 38  ..        var v8
49b0: 54 79 70 65 5f 42 6f 6f 6c 65 61 6e 20 3d 20 76  Type_Boolean = v
49c0: 38 4e 65 77 28 27 54 79 70 65 44 65 73 63 72 69  8New('TypeDescri
49d0: 70 74 69 6f 6e 27 2c 20 27 d0 91 d1 83 d0 bb d0  ption', '.......
49e0: b5 d0 b2 d0 be 27 29 3b 0d 0a 20 20 20 20 0d 0a  .....');..    ..
49f0: 20 20 20 20 20 20 20 20 74 68 69 73 2e 5f 76 74          this._vt
4a00: 41 6c 6c 4d 65 74 68 6f 64 73 20 3d 20 76 38 4e  AllMethods = v8N
4a10: 65 77 28 27 56 61 6c 75 65 54 61 62 6c 65 27 29  ew('ValueTable')
4a20: 3b 0d 0a 20 20 20 20 20 20 20 20 76 61 72 20 63  ;..        var c
4a30: 6f 6c 73 20 3d 20 74 68 69 73 2e 5f 76 74 41 6c  ols = this._vtAl
4a40: 6c 4d 65 74 68 6f 64 73 2e 43 6f 6c 75 6d 6e 73  lMethods.Columns
4a50: 3b 0d 0a 20 20 20 20 20 20 20 20 2f 2f 20 d0 94  ;..        // ..
4a60: d0 be d0 b1 d0 b0 d0 b2 d0 bb d1 8f d0 b5 d0 bc  ................
4a70: 20 d0 ba d0 be d0 bb d0 be d0 bd d0 ba d0 b8 2e   ...............
4a80: 0d 0a 20 20 20 20 20 20 20 20 63 6f 6c 73 2e 41  ..        cols.A
4a90: 64 64 28 27 4e 61 6d 65 27 2c 20 76 38 54 79 70  dd('Name', v8Typ
4aa0: 65 5f 53 74 72 69 6e 67 2c 20 27 d0 98 d0 bc d1  e_String, '.....
4ab0: 8f 20 d0 bf d1 80 d0 be d1 86 d0 b5 d0 b4 d1 83  . ..............
4ac0: d1 80 d1 8b 2f d1 84 d1 83 d0 bd d0 ba d1 86 d0  ..../...........
4ad0: b8 d0 b8 27 29 3b 0d 0a 20 20 20 20 20 20 20 20  ...');..        
4ae0: 63 6f 6c 73 2e 41 64 64 28 27 49 73 50 72 6f 63  cols.Add('IsProc
4af0: 27 2c 20 76 38 54 79 70 65 5f 42 6f 6f 6c 65 61  ', v8Type_Boolea
4b00: 6e 2c 20 27 d0 9f d1 80 d0 be d1 86 d0 b5 d0 b4  n, '............
4b10: d1 83 d1 80 d0 b0 27 29 3b 0d 0a 20 20 20 20 20  ......');..     
4b20: 20 20 20 63 6f 6c 73 2e 41 64 64 28 27 53 74 61     cols.Add('Sta
4b30: 72 74 4c 69 6e 65 27 2c 20 76 38 54 79 70 65 5f  rtLine', v8Type_
4b40: 4e 75 6d 62 65 72 2c 20 27 4e 20 d0 bf d0 b5 d1  Number, 'N .....
4b50: 80 d0 b2 d0 be d0 b9 20 d1 81 d1 82 d1 80 d0 be  ....... ........
4b60: d0 ba d0 b8 27 29 3b 0d 0a 20 20 20 20 20 20 20  ....');..       
4b70: 20 63 6f 6c 73 2e 41 64 64 28 27 45 6e 64 4c 69   cols.Add('EndLi
4b80: 6e 65 27 2c 20 76 38 54 79 70 65 5f 4e 75 6d 62  ne', v8Type_Numb
4b90: 65 72 2c 20 27 4e 20 d0 bf d0 be d1 81 d0 bb d0  er, 'N .........
4ba0: b5 d0 b4 d0 bd d0 b5 d0 b9 20 d1 81 d1 82 d1 80  ......... ......
4bb0: d0 be d0 ba d0 b8 27 29 3b 0d 0a 20 20 20 20 20  ......');..     
4bc0: 20 20 20 63 6f 6c 73 2e 41 64 64 28 27 43 6f 6e     cols.Add('Con
4bd0: 74 65 78 74 27 2c 20 76 38 54 79 70 65 5f 53 74  text', v8Type_St
4be0: 72 69 6e 67 2c 20 27 d0 9a d0 be d0 bd d1 82 d0  ring, '.........
4bf0: b5 d0 ba d1 81 d1 82 20 d0 ba d0 be d0 bc d0 bf  ....... ........
4c00: d0 b8 d0 bb d1 8f d1 86 d0 b8 d0 b8 20 d0 bc d0  ............ ...
4c10: be d0 b4 d1 83 d0 bb d1 8f 27 29 3b 0d 0a 20 20  .........');..  
4c20: 20 20 20 20 20 20 0d 0a 20 20 20 20 20 20 20 20        ..        
4c30: 63 6f 6c 73 2e 41 64 64 28 27 5f 6d 65 74 68 6f  cols.Add('_metho
4c40: 64 27 29 3b 20 2f 2f 20 5f 31 43 4d 65 74 68 6f  d'); // _1CMetho
4c50: 64 44 65 73 63 72 69 70 74 69 6f 6e 0d 0a 20 20  dDescription..  
4c60: 20 20 7d 0d 0a 7d 0d 0a 0d 0a 5f 31 43 4d 6f 64    }..}...._1CMod
4c70: 75 6c 65 43 6f 6e 74 65 78 74 44 65 73 63 72 69  uleContextDescri
4c80: 70 74 69 6f 6e 2e 70 72 6f 74 6f 74 79 70 65 2e  ption.prototype.
4c90: 61 64 64 4d 65 74 68 6f 64 20 3d 20 66 75 6e 63  addMethod = func
4ca0: 74 69 6f 6e 20 28 6d 65 74 68 6f 64 29 20 7b 0d  tion (method) {.
4cb0: 0a 0d 0a 20 20 20 20 69 66 20 28 74 68 69 73 2e  ...    if (this.
4cc0: 5f 6d 65 74 68 6f 64 73 42 79 4e 61 6d 65 5b 6d  _methodsByName[m
4cd0: 65 74 68 6f 64 2e 6e 61 6d 65 5d 29 0d 0a 20 20  ethod.name])..  
4ce0: 20 20 20 20 20 20 4d 65 73 73 61 67 65 28 27 d0        Message('.
4cf0: 9c d0 b5 d1 82 d0 be d0 b4 20 27 20 2b 20 6d 65  ......... ' + me
4d00: 74 68 6f 64 2e 6e 61 6d 65 20 2b 20 27 d1 83 d0  thod.name + '...
4d10: b6 d0 b5 20 d0 b1 d1 8b d0 bb 20 d0 be d0 b1 d1  ... ...... .....
4d20: 8a d1 8f d0 b2 d0 bb d0 b5 d0 bd 20 d1 80 d0 b0  ........... ....
4d30: d0 bd d0 b5 d0 b5 20 d0 b2 20 d1 8d d1 82 d0 be  ...... .. ......
4d40: d0 bc 20 d0 bc d0 be d0 b4 d1 83 d0 bb d0 b5 21  .. ............!
4d50: 27 29 3b 0d 0a 20 20 20 20 20 20 20 20 0d 0a 20  ');..        .. 
4d60: 20 20 20 74 68 69 73 2e 4d 65 74 68 6f 64 73 2e     this.Methods.
4d70: 70 75 73 68 28 6d 65 74 68 6f 64 29 3b 0d 0a 20  push(method);.. 
4d80: 20 20 20 74 68 69 73 2e 5f 6d 65 74 68 6f 64 73     this._methods
4d90: 42 79 4e 61 6d 65 5b 6d 65 74 68 6f 64 2e 4e 61  ByName[method.Na
4da0: 6d 65 5d 20 3d 20 6d 65 74 68 6f 64 3b 0d 0a 20  me] = method;.. 
4db0: 20 20 20 0d 0a 20 20 20 20 2f 2f 20 d0 94 d0 be     ..    // ....
4dc0: d0 b1 d0 b0 d0 b2 d0 bb d1 8f d0 b5 d0 bc 20 d0  .............. .
4dd0: bc d0 b5 d1 82 d0 be d0 b4 20 d0 b2 20 d1 82 d0  ......... .. ...
4de0: b0 d0 b1 d0 bb d0 b8 d1 86 d1 83 20 d0 b7 d0 bd  ........... ....
4df0: d0 b0 d1 87 d0 b5 d0 bd d0 b8 d0 b9 2e 0d 0a 20  ............... 
4e00: 20 20 20 69 66 20 28 74 68 69 73 2e 5f 76 74 41     if (this._vtA
4e10: 6c 6c 4d 65 74 68 6f 64 73 29 20 0d 0a 20 20 20  llMethods) ..   
4e20: 20 7b 0d 0a 20 20 20 20 20 20 20 20 76 61 72 20   {..        var 
4e30: 6d 65 74 68 52 6f 77 20 3d 20 74 68 69 73 2e 5f  methRow = this._
4e40: 76 74 41 6c 6c 4d 65 74 68 6f 64 73 2e 41 64 64  vtAllMethods.Add
4e50: 28 29 3b 0d 0a 20 20 20 20 20 20 20 20 6d 65 74  ();..        met
4e60: 68 52 6f 77 2e 4e 61 6d 65 20 3d 20 6d 65 74 68  hRow.Name = meth
4e70: 6f 64 2e 4e 61 6d 65 3b 0d 0a 20 20 20 20 20 20  od.Name;..      
4e80: 20 20 6d 65 74 68 52 6f 77 2e 49 73 50 72 6f 63    methRow.IsProc
4e90: 20 3d 20 6d 65 74 68 6f 64 2e 49 73 50 72 6f 63   = method.IsProc
4ea0: 3b 0d 0a 20 20 20 20 20 20 20 20 6d 65 74 68 52  ;..        methR
4eb0: 6f 77 2e 53 74 61 72 74 4c 69 6e 65 20 3d 20 6d  ow.StartLine = m
4ec0: 65 74 68 6f 64 2e 53 74 61 72 74 4c 69 6e 65 3b  ethod.StartLine;
4ed0: 0d 0a 20 20 20 20 20 20 20 20 6d 65 74 68 52 6f  ..        methRo
4ee0: 77 2e 45 6e 64 4c 69 6e 65 20 3d 20 6d 65 74 68  w.EndLine = meth
4ef0: 6f 64 2e 45 6e 64 4c 69 6e 65 3b 0d 0a 20 20 20  od.EndLine;..   
4f00: 20 20 20 20 20 6d 65 74 68 52 6f 77 2e 43 6f 6e       methRow.Con
4f10: 74 65 78 74 20 3d 20 6d 65 74 68 6f 64 2e 43 6f  text = method.Co
4f20: 6e 74 65 78 74 3b 0d 0a 20 20 20 20 20 20 20 20  ntext;..        
4f30: 6d 65 74 68 52 6f 77 2e 5f 6d 65 74 68 6f 64 20  methRow._method 
4f40: 3d 20 6d 65 74 68 6f 64 3b 0d 0a 20 20 20 20 7d  = method;..    }
4f50: 0d 0a 7d 0d 0a 0d 0a 5f 31 43 4d 6f 64 75 6c 65  ..}...._1CModule
4f60: 43 6f 6e 74 65 78 74 44 65 73 63 72 69 70 74 69  ContextDescripti
4f70: 6f 6e 2e 70 72 6f 74 6f 74 79 70 65 2e 67 65 74  on.prototype.get
4f80: 4d 65 74 68 6f 64 42 79 4e 61 6d 65 20 3d 20 66  MethodByName = f
4f90: 75 6e 63 74 69 6f 6e 20 28 6e 61 6d 65 29 20 7b  unction (name) {
4fa0: 0d 0a 20 20 20 20 72 65 74 75 72 6e 20 74 68 69  ..    return thi
4fb0: 73 2e 5f 6d 65 74 68 6f 64 73 42 79 4e 61 6d 65  s._methodsByName
4fc0: 5b 6e 61 6d 65 5d 3b 0d 0a 7d 0d 0a 0d 0a 5f 31  [name];..}...._1
4fd0: 43 4d 6f 64 75 6c 65 43 6f 6e 74 65 78 74 44 65  CModuleContextDe
4fe0: 73 63 72 69 70 74 69 6f 6e 2e 70 72 6f 74 6f 74  scription.protot
4ff0: 79 70 65 2e 61 64 64 56 61 72 20 3d 20 66 75 6e  ype.addVar = fun
5000: 63 74 69 6f 6e 20 28 6e 61 6d 65 2c 20 74 79 70  ction (name, typ
5010: 65 2c 20 61 75 74 6f 29 20 7b 0d 0a 20 20 20 20  e, auto) {..    
5020: 69 66 20 28 74 68 69 73 2e 5f 6d 6f 64 75 6c 65  if (this._module
5030: 56 61 72 73 54 79 70 65 73 5b 6e 61 6d 65 5d 20  VarsTypes[name] 
5040: 3d 3d 3d 20 75 6e 64 65 66 69 6e 65 64 29 0d 0a  === undefined)..
5050: 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 74      {..        t
5060: 68 69 73 2e 5f 6d 6f 64 75 6c 65 56 61 72 73 54  his._moduleVarsT
5070: 79 70 65 73 5b 6e 61 6d 65 5d 20 3d 20 28 74 79  ypes[name] = (ty
5080: 70 65 20 3d 3d 3d 20 75 6e 64 65 66 69 6e 65 64  pe === undefined
5090: 29 20 3f 20 6e 75 6c 6c 20 3a 20 74 79 70 65 3b  ) ? null : type;
50a0: 0d 0a 20 20 20 20 20 20 20 20 74 68 69 73 2e 4d  ..        this.M
50b0: 6f 64 75 6c 65 56 61 72 73 2e 70 75 73 68 28 6e  oduleVars.push(n
50c0: 61 6d 65 29 3b 0d 0a 20 20 20 20 7d 0d 0a 7d 0d  ame);..    }..}.
50d0: 0a 0d 0a 5f 31 43 4d 6f 64 75 6c 65 43 6f 6e 74  ..._1CModuleCont
50e0: 65 78 74 44 65 73 63 72 69 70 74 69 6f 6e 2e 70  extDescription.p
50f0: 72 6f 74 6f 74 79 70 65 2e 67 65 74 56 61 72 54  rototype.getVarT
5100: 79 70 65 20 3d 20 66 75 6e 63 74 69 6f 6e 20 28  ype = function (
5110: 6e 61 6d 65 29 20 7b 0d 0a 20 20 20 20 72 65 74  name) {..    ret
5120: 75 72 6e 20 74 68 69 73 2e 5f 6d 6f 64 75 6c 65  urn this._module
5130: 56 61 72 73 54 79 70 65 73 5b 6e 61 6d 65 5d 3b  VarsTypes[name];
5140: 0d 0a 7d 0d 0a 0d 0a 2f 2f 2f 2f 7d 20 5f 31 43  ..}....////} _1C
5150: 4d 6f 64 75 6c 65 43 6f 6e 74 65 78 74 44 65 73  ModuleContextDes
5160: 63 72 69 70 74 69 6f 6e 0d 0a 0d 0a 2f 2f 2f 2f  cription....////
5170: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f  ////////////////
5180: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f  ////////////////
5190: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f  ////////////////
51a0: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f  ////////////////
51b0: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f  ////////////////
51c0: 2f 2f 2f 2f 0d 0a 2f 2f 2f 2f 7b 20 5f 31 43 4d  ////..////{ _1CM
51d0: 65 74 68 6f 64 44 65 73 63 72 69 70 74 69 6f 6e  ethodDescription
51e0: 0d 0a 0d 0a 66 75 6e 63 74 69 6f 6e 20 5f 31 43  ....function _1C
51f0: 4d 65 74 68 6f 64 44 65 73 63 72 69 70 74 69 6f  MethodDescriptio
5200: 6e 28 70 61 72 65 6e 74 4d 6f 64 75 6c 65 29 20  n(parentModule) 
5210: 7b 0d 0a 20 20 20 20 20 20 20 20 0d 0a 20 20 20  {..        ..   
5220: 20 2f 2f 20 d0 98 d0 b4 d0 b5 d0 bd d1 82 d0 b8   // ............
5230: d1 84 d0 b8 d0 ba d0 b0 d1 82 d0 be d1 80 20 28  .............. (
5240: d0 b8 d0 bc d1 8f 29 20 d0 bc d0 b5 d1 82 d0 be  ......) ........
5250: d0 b4 d0 b0 2e 0d 0a 20 20 20 20 74 68 69 73 2e  .......    this.
5260: 4e 61 6d 65 20 3d 20 22 22 3b 0d 0a 20 20 20 20  Name = "";..    
5270: 0d 0a 20 20 20 20 2f 2f 20 d0 a2 d0 b8 d0 bf 20  ..    // ...... 
5280: d0 bc d0 b5 d1 82 d0 be d0 b4 d0 b0 2e 20 d0 95  ............. ..
5290: d1 81 d0 bb d0 b8 20 d0 b8 d1 81 d1 82 d0 b8 d0  ...... .........
52a0: bd d0 b0 20 2d 20 d1 82 d0 be 20 d1 8d d1 82 d0  ... - .... .....
52b0: be 20 d0 9f d1 80 d0 be d1 86 d0 b5 d0 b4 d1 83  . ..............
52c0: d1 80 d0 b0 2c 20 d0 b8 d0 bd d0 b0 d1 87 d0 b5  ...., ..........
52d0: 20 2d 20 d1 8d d1 82 d0 be 20 d1 84 d1 83 d0 bd   - ...... ......
52e0: d0 ba d1 86 d0 b8 d1 8f 2e 0d 0a 20 20 20 20 74  ...........    t
52f0: 68 69 73 2e 49 73 50 72 6f 63 20 3d 20 66 61 6c  his.IsProc = fal
5300: 73 65 3b 0d 0a 0d 0a 20 20 20 20 2f 2f 20 d0 9c  se;....    // ..
5310: d0 b0 d1 81 d1 81 d0 b8 d0 b2 20 d0 bf d0 b0 d1  .......... .....
5320: 80 d0 b0 d0 bc d0 b5 d1 82 d1 80 d0 be d0 b2 20  ............... 
5330: d0 bc d0 b5 d1 82 d0 be d0 b4 d0 b0 2e 0d 0a 20  ............... 
5340: 20 20 20 74 68 69 73 2e 50 61 72 61 6d 73 20 3d     this.Params =
5350: 20 6e 65 77 20 41 72 72 61 79 28 29 3b 0d 0a 20   new Array();.. 
5360: 20 20 20 0d 0a 20 20 20 20 2f 2f 20 d0 9c d0 b0     ..    // ....
5370: d1 81 d1 81 d0 b8 d0 b2 20 d1 8f d0 b2 d0 bd d1  ........ .......
5380: 8b d0 bc 20 d0 be d0 b1 d1 80 d0 b0 d0 b7 d0 be  ... ............
5390: d0 bc 20 d0 be d0 b1 d1 8a d1 8f d0 b2 d0 bb d0  .. .............
53a0: b5 d0 bd d0 bd d1 8b d1 85 20 d0 bf d0 b5 d1 80  ......... ......
53b0: d0 b5 d0 bc d0 b5 d0 bd d0 bd d1 8b d1 85 2e 0d  ................
53c0: 0a 20 20 20 20 74 68 69 73 2e 44 65 63 6c 61 72  .    this.Declar
53d0: 65 64 56 61 72 73 20 3d 20 6e 65 77 20 41 72 72  edVars = new Arr
53e0: 61 79 28 29 3b 0d 0a 20 20 20 20 0d 0a 20 20 20  ay();..    ..   
53f0: 20 2f 2f 20 d0 9c d0 b0 d1 81 d1 81 d0 b8 d0 b2   // ............
5400: 20 d0 b0 d0 b2 d1 82 d0 be d0 bc d0 b0 d1 82 d0   ...............
5410: b8 d1 87 d0 b5 d1 81 d0 ba d0 b8 d1 85 20 d0 bb  ............. ..
5420: d0 be d0 ba d0 b0 d0 bb d1 8c d0 bd d1 8b d1 85  ................
5430: 20 d0 bf d0 b5 d1 80 d0 b5 d0 bc d0 b5 d0 bd d0   ...............
5440: bd d1 8b d1 85 20 28 d0 bd d0 b5 20 d0 be d0 b1  ..... (.... ....
5450: d1 8a d1 8f d0 b2 d0 bb d0 b5 d0 bd d0 bd d1 8b  ................
5460: d1 85 20 d1 8f d0 b2 d0 bd d1 8b d0 bc 20 d0 be  .. .......... ..
5470: d0 b1 d1 80 d0 b0 d0 b7 d0 be d0 bc 29 2e 0d 0a  ............)...
5480: 20 20 20 20 74 68 69 73 2e 41 75 74 6f 6d 61 74      this.Automat
5490: 69 63 56 61 72 73 20 3d 20 6e 65 77 20 41 72 72  icVars = new Arr
54a0: 61 79 28 29 3b 0d 0a 20 20 20 20 0d 0a 20 20 20  ay();..    ..   
54b0: 20 2f 2f 20 d0 a1 d0 bf d0 b8 d1 81 d0 be d0 ba   // ............
54c0: 20 d0 b2 d1 8b d0 b7 d0 be d0 b2 d0 be d0 b2 3a   ..............:
54d0: 20 d0 bc d0 b0 d1 81 d1 81 d0 b8 d0 b2 20 d0 bc   ............ ..
54e0: d0 b5 d1 82 d0 be d0 b4 d0 be d0 b2 2c 20 d0 b2  ............, ..
54f0: d1 8b d0 b7 d1 8b d0 b2 d0 b0 d0 b5 d0 bc d1 8b  ................
5500: d1 85 20 d0 b8 d0 b7 20 d0 b4 d0 b0 d0 bd d0 bd  .. .... ........
5510: d0 be d0 b3 d0 be 20 d0 bc d0 b5 d1 82 d0 be d0  ...... .........
5520: b4 d0 b0 2e 0d 0a 20 20 20 20 74 68 69 73 2e 43  ......    this.C
5530: 61 6c 6c 73 20 3d 20 6e 65 77 20 41 72 72 61 79  alls = new Array
5540: 28 29 3b 0d 0a 20 20 20 20 0d 0a 20 20 20 20 2f  ();..    ..    /
5550: 2f 20 d0 9d d0 be d0 bc d0 b5 d1 80 20 d1 81 d1  / .......... ...
5560: 82 d1 80 d0 be d0 ba d0 b8 20 d0 be d0 b1 d1 8a  ......... ......
5570: d1 8f d0 b2 d0 bb d0 b5 d0 bd d0 b8 d1 8f 20 d0  .............. .
5580: bc d0 b5 d1 82 d0 be d0 b4 d0 b0 2e 0d 0a 20 20  ..............  
5590: 20 20 74 68 69 73 2e 53 74 61 72 74 4c 69 6e 65    this.StartLine
55a0: 20 3d 20 30 3b 0d 0a 20 20 20 20 0d 0a 20 20 20   = 0;..    ..   
55b0: 20 2f 2f 20 d0 9d d0 be d0 bc d0 b5 d1 80 20 d1   // .......... .
55c0: 81 d1 82 d1 80 d0 be d0 ba d0 b8 20 d0 b7 d0 b0  ........... ....
55d0: d0 b2 d0 b5 d1 80 d1 88 d0 b5 d0 bd d0 b8 d1 8f  ................
55e0: 20 d0 be d0 b1 d1 8a d1 8f d0 b2 d0 bb d0 b5 d0   ...............
55f0: bd d0 b8 d1 8f 20 d0 bc d0 b5 d1 82 d0 be d0 b4  ..... ..........
5600: d0 b0 2e 0d 0a 20 20 20 20 74 68 69 73 2e 45 6e  .....    this.En
5610: 64 4c 69 6e 65 20 3d 20 30 3b 0d 0a 20 20 20 20  dLine = 0;..    
5620: 0d 0a 20 20 20 20 2f 2f 20 d0 90 d1 81 d1 81 d0  ..    // .......
5630: be d1 86 d0 b8 d0 b0 d1 82 d0 b8 d0 b2 d0 bd d1  ................
5640: 8b d0 b9 20 d0 bc d0 b0 d1 81 d1 81 d0 b8 d0 b2  ... ............
5650: 20 d0 98 d0 bc d1 8f 20 d0 bf d0 b5 d1 80 d0 b5   ...... ........
5660: d0 bc d0 b5 d0 bd d0 bd d0 be d0 b9 20 2d 3e 20  ............ -> 
5670: d0 a2 d0 b8 d0 bf 20 d0 bf d0 b5 d1 80 d0 b5 d0  ...... .........
5680: bc d0 b5 d0 bd d0 bd d0 be d0 b9 20 28 d0 bf d0  ........... (...
5690: be d0 ba d0 b0 20 d1 82 d0 b8 d0 bf 20 d0 b2 d1  ..... ...... ...
56a0: 81 d0 b5 d0 b3 d0 b4 d0 b0 20 6e 75 6c 6c 29 2e  ......... null).
56b0: 0d 0a 20 20 20 20 74 68 69 73 2e 5f 76 61 72 73  ..    this._vars
56c0: 54 79 70 65 73 20 3d 20 7b 7d 3b 0d 0a 20 20 20  Types = {};..   
56d0: 20 0d 0a 20 20 20 20 2f 2f 20 d0 9a d0 be d0 bd   ..    // ......
56e0: d1 82 d0 b5 d0 ba d1 81 d1 82 20 d0 bc d0 be d0  .......... .....
56f0: b4 d1 83 d0 bb d1 8f 2c 20 d0 b2 20 d0 ba d0 be  ......., .. ....
5700: d1 82 d0 be d1 80 d0 be d0 bc 20 d0 be d0 b1 d1  .......... .....
5710: 8a d1 8f d0 b2 d0 bb d0 b5 d0 bd 20 d0 b4 d0 b0  ........... ....
5720: d0 bd d0 bd d1 8b d0 b9 20 d0 bc d0 b5 d1 82 d0  ........ .......
5730: be d0 b4 20 28 5f 31 43 4d 6f 64 75 6c 65 43 6f  ... (_1CModuleCo
5740: 6e 74 65 78 74 44 65 73 63 72 69 70 74 69 6f 6e  ntextDescription
5750: 29 2e 0d 0a 20 20 20 20 74 68 69 73 2e 70 61 72  )...    this.par
5760: 65 6e 74 4d 6f 64 75 6c 65 20 3d 20 70 61 72 65  entModule = pare
5770: 6e 74 4d 6f 64 75 6c 65 3b 0d 0a 7d 0d 0a 0d 0a  ntModule;..}....
5780: 5f 31 43 4d 65 74 68 6f 64 44 65 73 63 72 69 70  _1CMethodDescrip
5790: 74 69 6f 6e 2e 70 72 6f 74 6f 74 79 70 65 2e 61  tion.prototype.a
57a0: 64 64 56 61 72 20 3d 20 66 75 6e 63 74 69 6f 6e  ddVar = function
57b0: 20 28 6e 61 6d 65 2c 20 74 79 70 65 2c 20 61 75   (name, type, au
57c0: 74 6f 29 20 7b 0d 0a 20 20 20 20 20 20 20 20 0d  to) {..        .
57d0: 0a 20 20 20 20 69 66 20 28 74 68 69 73 2e 5f 76  .    if (this._v
57e0: 61 72 73 54 79 70 65 73 5b 6e 61 6d 65 5d 20 3d  arsTypes[name] =
57f0: 3d 3d 20 75 6e 64 65 66 69 6e 65 64 29 0d 0a 20  == undefined).. 
5800: 20 20 20 7b 20 20 20 20 0d 0a 20 20 20 20 20 20     {    ..      
5810: 20 20 69 66 20 28 74 68 69 73 2e 50 61 72 61 6d    if (this.Param
5820: 73 2e 69 6e 64 65 78 4f 66 28 6e 61 6d 65 29 20  s.indexOf(name) 
5830: 3e 3d 20 30 29 20 0d 0a 20 20 20 20 20 20 20 20  >= 0) ..        
5840: 20 20 20 20 72 65 74 75 72 6e 3b 0d 0a 20 20 20      return;..   
5850: 20 20 20 20 20 20 20 20 20 0d 0a 20 20 20 20 20           ..     
5860: 20 20 20 69 66 20 28 74 68 69 73 2e 70 61 72 65     if (this.pare
5870: 6e 74 4d 6f 64 75 6c 65 20 26 26 20 74 68 69 73  ntModule && this
5880: 2e 70 61 72 65 6e 74 4d 6f 64 75 6c 65 2e 67 65  .parentModule.ge
5890: 74 56 61 72 54 79 70 65 28 6e 61 6d 65 29 20 21  tVarType(name) !
58a0: 3d 3d 20 75 6e 64 65 66 69 6e 65 64 29 20 0d 0a  == undefined) ..
58b0: 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75              retu
58c0: 72 6e 3b 0d 0a 20 20 20 20 0d 0a 20 20 20 20 20  rn;..    ..     
58d0: 20 20 20 74 68 69 73 2e 5f 76 61 72 73 54 79 70     this._varsTyp
58e0: 65 73 5b 6e 61 6d 65 5d 20 3d 20 28 74 79 70 65  es[name] = (type
58f0: 20 3d 3d 3d 20 75 6e 64 65 66 69 6e 65 64 29 20   === undefined) 
5900: 3f 20 6e 75 6c 6c 20 3a 20 74 79 70 65 3b 0d 0a  ? null : type;..
5910: 20 20 20 20 20 20 20 20 0d 0a 20 20 20 20 20 20          ..      
5920: 20 20 69 66 20 28 61 75 74 6f 29 0d 0a 20 20 20    if (auto)..   
5930: 20 20 20 20 20 20 20 20 20 74 68 69 73 2e 41 75           this.Au
5940: 74 6f 6d 61 74 69 63 56 61 72 73 2e 70 75 73 68  tomaticVars.push
5950: 28 6e 61 6d 65 29 3b 0d 0a 20 20 20 20 20 20 20  (name);..       
5960: 20 65 6c 73 65 0d 0a 20 20 20 20 20 20 20 20 20   else..         
5970: 20 20 20 74 68 69 73 2e 44 65 63 6c 61 72 65 64     this.Declared
5980: 56 61 72 73 2e 70 75 73 68 28 6e 61 6d 65 29 3b  Vars.push(name);
5990: 0d 0a 20 20 20 20 7d 0d 0a 7d 0d 0a 0d 0a 5f 31  ..    }..}...._1
59a0: 43 4d 65 74 68 6f 64 44 65 73 63 72 69 70 74 69  CMethodDescripti
59b0: 6f 6e 2e 70 72 6f 74 6f 74 79 70 65 2e 67 65 74  on.prototype.get
59c0: 56 61 72 54 79 70 65 20 3d 20 66 75 6e 63 74 69  VarType = functi
59d0: 6f 6e 20 28 6e 61 6d 65 29 20 7b 0d 0a 20 20 20  on (name) {..   
59e0: 20 72 65 74 75 72 6e 20 74 68 69 73 2e 5f 76 61   return this._va
59f0: 72 73 54 79 70 65 73 5b 6e 61 6d 65 5d 3b 0d 0a  rsTypes[name];..
5a00: 7d 0d 0a 0d 0a 0d 0a 2f 2f 2f 2f 7d 20 5f 31 43  }......////} _1C
5a10: 4d 65 74 68 6f 64 44 65 73 63 72 69 70 74 69 6f  MethodDescriptio
5a20: 6e 0d 0a 0d 0a 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f  n....///////////
5a30: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f  ////////////////
5a40: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f  ////////////////
5a50: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f  ////////////////
5a60: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f  ////////////////
5a70: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 0d 0a 2f  /////////////../
5a80: 2f 2f 2f 7b 20 d0 92 d1 81 d0 bf d0 be d0 bc d0  ///{ ...........
5a90: be d0 b3 d0 b0 d1 82 d0 b5 d0 bb d1 8c d0 bd d1  ................
5aa0: 8b d0 b5 20 d1 84 d1 83 d0 bd d0 ba d1 86 d0 b8  ... ............
5ab0: d0 b8 20 d0 be d0 b1 d1 8a d0 b5 d0 ba d1 82 d0  .. .............
5ac0: b0 20 41 72 72 61 79 0d 0a 69 66 28 21 41 72 72  . Array..if(!Arr
5ad0: 61 79 2e 70 72 6f 74 6f 74 79 70 65 2e 69 6e 64  ay.prototype.ind
5ae0: 65 78 4f 66 29 20 7b 0d 0a 20 20 20 20 41 72 72  exOf) {..    Arr
5af0: 61 79 2e 70 72 6f 74 6f 74 79 70 65 2e 69 6e 64  ay.prototype.ind
5b00: 65 78 4f 66 20 3d 20 66 75 6e 63 74 69 6f 6e 28  exOf = function(
5b10: 73 65 61 72 63 68 45 6c 65 6d 65 6e 74 2c 20 66  searchElement, f
5b20: 72 6f 6d 49 6e 64 65 78 29 20 7b 0d 0a 20 20 20  romIndex) {..   
5b30: 20 20 20 20 20 66 6f 72 28 76 61 72 20 69 20 3d       for(var i =
5b40: 20 66 72 6f 6d 49 6e 64 65 78 7c 7c 30 2c 20 6c   fromIndex||0, l
5b50: 65 6e 67 74 68 20 3d 20 74 68 69 73 2e 6c 65 6e  ength = this.len
5b60: 67 74 68 3b 20 69 3c 6c 65 6e 67 74 68 3b 20 69  gth; i<length; i
5b70: 2b 2b 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20  ++)..           
5b80: 20 69 66 28 74 68 69 73 5b 69 5d 20 3d 3d 3d 20   if(this[i] === 
5b90: 73 65 61 72 63 68 45 6c 65 6d 65 6e 74 29 20 72  searchElement) r
5ba0: 65 74 75 72 6e 20 69 3b 0d 0a 20 20 20 20 20 20  eturn i;..      
5bb0: 20 20 72 65 74 75 72 6e 20 2d 31 0d 0a 20 20 20    return -1..   
5bc0: 20 7d 3b 0d 0a 7d 3b 0d 0a 2f 2f 2f 2f 7d 20 d0   };..};..////} .
5bd0: 92 d1 81 d0 bf d0 be d0 bc d0 be d0 b3 d0 b0 d1  ................
5be0: 82 d0 b5 d0 bb d1 8c d0 bd d1 8b d0 b5 20 d1 84  ............. ..
5bf0: d1 83 d0 bd d0 ba d1 86 d0 b8 d0 b8 20 d0 be d0  ............ ...
5c00: b1 d1 8a d0 b5 d0 ba d1 82 d0 b0 20 41 72 72 61  ........... Arra
5c10: 79                                               y