Trapped-Counter.js 5.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192
  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(!("nilAsValue" in $boot))$boot.nilAsValue=$boot.nilAsReceiver;
  10. var $core=$boot.api,nil=$boot.nilAsValue,$nil=$boot.nilAsReceiver,$recv=$boot.asReceiver,$globals=$boot.globals;
  11. $core.addPackage("Trapped-Counter");
  12. ($core.packageDescriptors||$core.packages)["Trapped-Counter"].innerEval = function (expr) { return eval(expr); };
  13. ($core.packageDescriptors||$core.packages)["Trapped-Counter"].imports = ["trapped/Trapped-Processors"];
  14. ($core.packageDescriptors||$core.packages)["Trapped-Counter"].transport = {"type":"amd","amdNamespace":"trapped-counter"};
  15. $core.addClass("CounterApp", $globals.Object, [], "Trapped-Counter");
  16. $core.addMethod(
  17. $core.method({
  18. selector: "start",
  19. protocol: "startup",
  20. fn: function (){
  21. var self=this,$self=this;
  22. var viewModel;
  23. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  24. return $core.withContext(function($ctx1) {
  25. //>>excludeEnd("ctx");
  26. viewModel=$recv($globals.TrappedCounter)._new();
  27. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  28. $ctx1.sendIdx["new"]=1;
  29. //>>excludeEnd("ctx");
  30. $recv(viewModel)._axxord_($recv($globals.SimpleAxon)._new());
  31. $recv($globals.Trapped)._start_([viewModel]);
  32. return self;
  33. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  34. }, function($ctx1) {$ctx1.fill(self,"start",{viewModel:viewModel},$globals.CounterApp)});
  35. //>>excludeEnd("ctx");
  36. },
  37. //>>excludeStart("ide", pragmas.excludeIdeData);
  38. args: [],
  39. source: "start\x0a\x09| viewModel |\x0a\x09viewModel := TrappedCounter new.\x0a\x09viewModel axxord: SimpleAxon new.\x0a\x09Trapped start: { viewModel }",
  40. referencedClasses: ["TrappedCounter", "SimpleAxon", "Trapped"],
  41. //>>excludeEnd("ide");
  42. messageSends: ["new", "axxord:", "start:"]
  43. }),
  44. $globals.CounterApp);
  45. $core.addMethod(
  46. $core.method({
  47. selector: "start",
  48. protocol: "startup",
  49. fn: function (){
  50. var self=this,$self=this;
  51. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  52. return $core.withContext(function($ctx1) {
  53. //>>excludeEnd("ctx");
  54. return $recv($self._new())._start();
  55. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  56. }, function($ctx1) {$ctx1.fill(self,"start",{},$globals.CounterApp.a$cls)});
  57. //>>excludeEnd("ctx");
  58. },
  59. //>>excludeStart("ide", pragmas.excludeIdeData);
  60. args: [],
  61. source: "start\x0a\x09^ self new start",
  62. referencedClasses: [],
  63. //>>excludeEnd("ide");
  64. messageSends: ["start", "new"]
  65. }),
  66. $globals.CounterApp.a$cls);
  67. $core.addClass("TrappedCounter", $globals.Object, ["value"], "Trapped-Counter");
  68. $core.addMethod(
  69. $core.method({
  70. selector: "decrement",
  71. protocol: "action",
  72. fn: function (){
  73. var self=this,$self=this;
  74. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  75. return $core.withContext(function($ctx1) {
  76. //>>excludeEnd("ctx");
  77. $self["@value"]=$recv($self["@value"]).__minus((1));
  78. return self;
  79. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  80. }, function($ctx1) {$ctx1.fill(self,"decrement",{},$globals.TrappedCounter)});
  81. //>>excludeEnd("ctx");
  82. },
  83. //>>excludeStart("ide", pragmas.excludeIdeData);
  84. args: [],
  85. source: "decrement\x0a\x09value := value - 1",
  86. referencedClasses: [],
  87. //>>excludeEnd("ide");
  88. messageSends: ["-"]
  89. }),
  90. $globals.TrappedCounter);
  91. $core.addMethod(
  92. $core.method({
  93. selector: "increment",
  94. protocol: "action",
  95. fn: function (){
  96. var self=this,$self=this;
  97. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  98. return $core.withContext(function($ctx1) {
  99. //>>excludeEnd("ctx");
  100. $self["@value"]=$recv($self["@value"]).__plus((1));
  101. return self;
  102. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  103. }, function($ctx1) {$ctx1.fill(self,"increment",{},$globals.TrappedCounter)});
  104. //>>excludeEnd("ctx");
  105. },
  106. //>>excludeStart("ide", pragmas.excludeIdeData);
  107. args: [],
  108. source: "increment\x0a\x09value := value + 1",
  109. referencedClasses: [],
  110. //>>excludeEnd("ide");
  111. messageSends: ["+"]
  112. }),
  113. $globals.TrappedCounter);
  114. $core.addMethod(
  115. $core.method({
  116. selector: "initialize",
  117. protocol: "initialization",
  118. fn: function (){
  119. var self=this,$self=this;
  120. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  121. return $core.withContext(function($ctx1) {
  122. //>>excludeEnd("ctx");
  123. (
  124. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  125. $ctx1.supercall = true,
  126. //>>excludeEnd("ctx");
  127. ($globals.TrappedCounter.superclass||$boot.nilAsClass).fn.prototype._initialize.apply($self, []));
  128. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  129. $ctx1.supercall = false;
  130. //>>excludeEnd("ctx");;
  131. $self["@value"]=(0);
  132. return self;
  133. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  134. }, function($ctx1) {$ctx1.fill(self,"initialize",{},$globals.TrappedCounter)});
  135. //>>excludeEnd("ctx");
  136. },
  137. //>>excludeStart("ide", pragmas.excludeIdeData);
  138. args: [],
  139. source: "initialize\x0a\x09super initialize.\x0a\x09value := 0",
  140. referencedClasses: [],
  141. //>>excludeEnd("ide");
  142. messageSends: ["initialize"]
  143. }),
  144. $globals.TrappedCounter);
  145. $core.addMethod(
  146. $core.method({
  147. selector: "value",
  148. protocol: "accessing",
  149. fn: function (){
  150. var self=this,$self=this;
  151. return $self["@value"];
  152. },
  153. //>>excludeStart("ide", pragmas.excludeIdeData);
  154. args: [],
  155. source: "value\x0a\x09^value",
  156. referencedClasses: [],
  157. //>>excludeEnd("ide");
  158. messageSends: []
  159. }),
  160. $globals.TrappedCounter);
  161. $core.addMethod(
  162. $core.method({
  163. selector: "value:",
  164. protocol: "accessing",
  165. fn: function (aNumber){
  166. var self=this,$self=this;
  167. $self["@value"]=aNumber;
  168. return self;
  169. },
  170. //>>excludeStart("ide", pragmas.excludeIdeData);
  171. args: ["aNumber"],
  172. source: "value: aNumber\x0a\x09value := aNumber",
  173. referencedClasses: [],
  174. //>>excludeEnd("ide");
  175. messageSends: []
  176. }),
  177. $globals.TrappedCounter);
  178. });