proc.js 1.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485
  1. var RTL$ = {
  2. extend: function (cons, base){
  3. function Type(){}
  4. Type.prototype = base.prototype;
  5. cons.prototype = new Type();
  6. cons.prototype.constructor = cons;
  7. }
  8. };
  9. var m = function (){
  10. var i = 0;
  11. var byte = 0;
  12. function p1(arg1/*INTEGER*/){
  13. function T1(){
  14. this.field1 = 0;
  15. }
  16. RTL$.extend(T2, T1);
  17. function T2(){
  18. T1.call(this);
  19. this.field2 = false;
  20. }
  21. var i = 0;var j = 0;
  22. var b = false;
  23. var t1 = new T1();
  24. var t2 = new T2();
  25. i = arg1 + 1 | 0;
  26. t1.field1 = i;
  27. t2.field1 = t1.field1;
  28. b = true;
  29. t2.field2 = b;
  30. }
  31. function p2(){
  32. p1(123);
  33. }
  34. function p3(i/*INTEGER*/){
  35. p1(123);
  36. p2();
  37. p2();
  38. return 123;
  39. }
  40. function p4(){
  41. return p3(123) + p3(p3(123)) | 0;
  42. }
  43. function p5(){
  44. return p5;
  45. }
  46. function emptyBegin(){
  47. }
  48. function emptyBeginWithReturn(){
  49. return 0;
  50. }
  51. function withByteArgument(b/*BYTE*/){
  52. }
  53. function withByteResult(){
  54. return 0;
  55. }
  56. function withByteResult2(b/*BYTE*/){
  57. return b;
  58. }
  59. function withByteResult3(b/*VAR BYTE*/){
  60. return b.get();
  61. }
  62. function withByteResult4(){
  63. var b = 0;
  64. b = 0 & 0xFF;
  65. return b;
  66. }
  67. byte = withByteResult();
  68. i = withByteResult();
  69. withByteArgument(byte);
  70. byte = withByteResult2(byte);
  71. byte = withByteResult2(i & 0xFF);
  72. byte = withByteResult3({set: function($v){byte = $v;}, get: function(){return byte;}});
  73. }();