Trapped-Counter.js 4.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139
  1. define(["amber/boot"
  2. //>>excludeStart("imports", pragmas.excludeImports);
  3. , "trapped/Trapped-Processors"
  4. //>>excludeEnd("imports");
  5. , "amber_core/Kernel-Objects"], function($boot
  6. //>>excludeStart("imports", pragmas.excludeImports);
  7. //>>excludeEnd("imports");
  8. ){"use strict";
  9. if(!$boot.nilAsReceiver)$boot.nilAsReceiver=$boot.nil;
  10. if(!("nilAsValue" in $boot))$boot.nilAsValue=$boot.nilAsReceiver;
  11. var $core=$boot.api,nil=$boot.nilAsValue,$nil=$boot.nilAsReceiver,$recv=$boot.asReceiver,$globals=$boot.globals;
  12. if(!$boot.nilAsClass)$boot.nilAsClass=$boot.dnu;
  13. $core.addPackage("Trapped-Counter");
  14. $core.packages["Trapped-Counter"].innerEval = function (expr) { return eval(expr); };
  15. $core.packages["Trapped-Counter"].imports = ["trapped/Trapped-Processors"];
  16. $core.packages["Trapped-Counter"].transport = {"type":"amd","amdNamespace":"trapped-counter"};
  17. $core.addClass("TrappedCounter", $globals.Object, ["value"], "Trapped-Counter");
  18. $core.addMethod(
  19. $core.method({
  20. selector: "decrement",
  21. protocol: "action",
  22. fn: function (){
  23. var self=this,$self=this;
  24. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  25. return $core.withContext(function($ctx1) {
  26. //>>excludeEnd("ctx");
  27. $self["@value"]=$recv($self["@value"]).__minus((1));
  28. return self;
  29. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  30. }, function($ctx1) {$ctx1.fill(self,"decrement",{},$globals.TrappedCounter)});
  31. //>>excludeEnd("ctx");
  32. },
  33. //>>excludeStart("ide", pragmas.excludeIdeData);
  34. args: [],
  35. source: "decrement\x0a\x09value := value - 1",
  36. referencedClasses: [],
  37. //>>excludeEnd("ide");
  38. messageSends: ["-"]
  39. }),
  40. $globals.TrappedCounter);
  41. $core.addMethod(
  42. $core.method({
  43. selector: "increment",
  44. protocol: "action",
  45. fn: function (){
  46. var self=this,$self=this;
  47. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  48. return $core.withContext(function($ctx1) {
  49. //>>excludeEnd("ctx");
  50. $self["@value"]=$recv($self["@value"]).__plus((1));
  51. return self;
  52. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  53. }, function($ctx1) {$ctx1.fill(self,"increment",{},$globals.TrappedCounter)});
  54. //>>excludeEnd("ctx");
  55. },
  56. //>>excludeStart("ide", pragmas.excludeIdeData);
  57. args: [],
  58. source: "increment\x0a\x09value := value + 1",
  59. referencedClasses: [],
  60. //>>excludeEnd("ide");
  61. messageSends: ["+"]
  62. }),
  63. $globals.TrappedCounter);
  64. $core.addMethod(
  65. $core.method({
  66. selector: "initialize",
  67. protocol: "initialization",
  68. fn: function (){
  69. var self=this,$self=this;
  70. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  71. return $core.withContext(function($ctx1) {
  72. //>>excludeEnd("ctx");
  73. (
  74. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  75. $ctx1.supercall = true,
  76. //>>excludeEnd("ctx");
  77. ($globals.TrappedCounter.superclass||$boot.nilAsClass).fn.prototype._initialize.apply($self, []));
  78. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  79. $ctx1.supercall = false;
  80. //>>excludeEnd("ctx");;
  81. $self["@value"]=(0);
  82. $self._axxord_($recv($globals.SimpleAxon)._new());
  83. return self;
  84. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  85. }, function($ctx1) {$ctx1.fill(self,"initialize",{},$globals.TrappedCounter)});
  86. //>>excludeEnd("ctx");
  87. },
  88. //>>excludeStart("ide", pragmas.excludeIdeData);
  89. args: [],
  90. source: "initialize\x0a\x09super initialize.\x0a\x09value := 0.\x0a\x09self axxord: SimpleAxon new",
  91. referencedClasses: ["SimpleAxon"],
  92. //>>excludeEnd("ide");
  93. messageSends: ["initialize", "axxord:", "new"]
  94. }),
  95. $globals.TrappedCounter);
  96. $core.addMethod(
  97. $core.method({
  98. selector: "value",
  99. protocol: "accessing",
  100. fn: function (){
  101. var self=this,$self=this;
  102. return $self["@value"];
  103. },
  104. //>>excludeStart("ide", pragmas.excludeIdeData);
  105. args: [],
  106. source: "value\x0a\x09^value",
  107. referencedClasses: [],
  108. //>>excludeEnd("ide");
  109. messageSends: []
  110. }),
  111. $globals.TrappedCounter);
  112. $core.addMethod(
  113. $core.method({
  114. selector: "value:",
  115. protocol: "accessing",
  116. fn: function (aNumber){
  117. var self=this,$self=this;
  118. $self["@value"]=aNumber;
  119. return self;
  120. },
  121. //>>excludeStart("ide", pragmas.excludeIdeData);
  122. args: ["aNumber"],
  123. source: "value: aNumber\x0a\x09value := aNumber",
  124. referencedClasses: [],
  125. //>>excludeEnd("ide");
  126. messageSends: []
  127. }),
  128. $globals.TrappedCounter);
  129. });