Compiler-Exceptions.deploy.js 2.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110
  1. smalltalk.addPackage('Compiler-Exceptions', {});
  2. smalltalk.addClass('CompilerError', smalltalk.Error, [], 'Compiler-Exceptions');
  3. smalltalk.addClass('ParseError', smalltalk.CompilerError, [], 'Compiler-Exceptions');
  4. smalltalk.addClass('SemanticError', smalltalk.CompilerError, [], 'Compiler-Exceptions');
  5. smalltalk.addClass('InliningError', smalltalk.SemanticError, [], 'Compiler-Exceptions');
  6. smalltalk.addClass('InvalidAssignmentError', smalltalk.SemanticError, ['variableName'], 'Compiler-Exceptions');
  7. smalltalk.addMethod(
  8. "_messageText",
  9. smalltalk.method({
  10. selector: "messageText",
  11. fn: function () {
  12. var self=this;
  13. return smalltalk.send(" Invalid assignment to variable: ", "__comma", [smalltalk.send(self, "_variableName", [])]);
  14. return self;}
  15. }),
  16. smalltalk.InvalidAssignmentError);
  17. smalltalk.addMethod(
  18. "_variableName",
  19. smalltalk.method({
  20. selector: "variableName",
  21. fn: function () {
  22. var self=this;
  23. return self['@variableName'];
  24. return self;}
  25. }),
  26. smalltalk.InvalidAssignmentError);
  27. smalltalk.addMethod(
  28. "_variableName_",
  29. smalltalk.method({
  30. selector: "variableName:",
  31. fn: function (aString) {
  32. var self=this;
  33. (self['@variableName']=aString);
  34. return self;}
  35. }),
  36. smalltalk.InvalidAssignmentError);
  37. smalltalk.addClass('ShadowingVariableError', smalltalk.SemanticError, ['variableName'], 'Compiler-Exceptions');
  38. smalltalk.addMethod(
  39. "_messageText",
  40. smalltalk.method({
  41. selector: "messageText",
  42. fn: function () {
  43. var self=this;
  44. return smalltalk.send(smalltalk.send("Variable shadowing error: ", "__comma", [smalltalk.send(self, "_variableName", [])]), "__comma", [" is already defined"]);
  45. return self;}
  46. }),
  47. smalltalk.ShadowingVariableError);
  48. smalltalk.addMethod(
  49. "_variableName",
  50. smalltalk.method({
  51. selector: "variableName",
  52. fn: function () {
  53. var self=this;
  54. return self['@variableName'];
  55. return self;}
  56. }),
  57. smalltalk.ShadowingVariableError);
  58. smalltalk.addMethod(
  59. "_variableName_",
  60. smalltalk.method({
  61. selector: "variableName:",
  62. fn: function (aString) {
  63. var self=this;
  64. (self['@variableName']=aString);
  65. return self;}
  66. }),
  67. smalltalk.ShadowingVariableError);
  68. smalltalk.addClass('UnknownVariableError', smalltalk.SemanticError, ['variableName'], 'Compiler-Exceptions');
  69. smalltalk.addMethod(
  70. "_variableName",
  71. smalltalk.method({
  72. selector: "variableName",
  73. fn: function () {
  74. var self=this;
  75. return self['@variableName'];
  76. return self;}
  77. }),
  78. smalltalk.UnknownVariableError);
  79. smalltalk.addMethod(
  80. "_variableName_",
  81. smalltalk.method({
  82. selector: "variableName:",
  83. fn: function (aString) {
  84. var self=this;
  85. (self['@variableName']=aString);
  86. return self;}
  87. }),
  88. smalltalk.UnknownVariableError);