Helios-References.js 51 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552
  1. define(["amber/boot", "amber_core/Kernel-Objects", "helios/Helios-Core"], function($boot){"use strict";
  2. if(!$boot.nilAsReceiver)$boot.nilAsReceiver=$boot.nil;
  3. if(!("nilAsValue" in $boot))$boot.nilAsValue=$boot.nilAsReceiver;
  4. var $core=$boot.api,nil=$boot.nilAsValue,$nil=$boot.nilAsReceiver,$recv=$boot.asReceiver,$globals=$boot.globals;
  5. if(!$boot.nilAsClass)$boot.nilAsClass=$boot.dnu;
  6. $core.addPackage("Helios-References");
  7. $core.packages["Helios-References"].innerEval = function (expr) { return eval(expr); };
  8. $core.packages["Helios-References"].transport = {"type":"amd","amdNamespace":"helios"};
  9. $core.addClass("HLMethodReference", $globals.Object, ["selector", "methodClass"], "Helios-References");
  10. $core.addMethod(
  11. $core.method({
  12. selector: "initializeFromMethod:",
  13. protocol: "initialization",
  14. fn: function (aCompiledMethod){
  15. var self=this,$self=this;
  16. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  17. return $core.withContext(function($ctx1) {
  18. //>>excludeEnd("ctx");
  19. $self._selector_($recv(aCompiledMethod)._selector());
  20. $self._methodClass_($recv(aCompiledMethod)._methodClass());
  21. return self;
  22. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  23. }, function($ctx1) {$ctx1.fill(self,"initializeFromMethod:",{aCompiledMethod:aCompiledMethod},$globals.HLMethodReference)});
  24. //>>excludeEnd("ctx");
  25. },
  26. //>>excludeStart("ide", pragmas.excludeIdeData);
  27. args: ["aCompiledMethod"],
  28. source: "initializeFromMethod: aCompiledMethod\x0a\x09self\x0a\x09\x09selector: aCompiledMethod selector;\x0a\x09\x09methodClass: aCompiledMethod methodClass",
  29. referencedClasses: [],
  30. //>>excludeEnd("ide");
  31. messageSends: ["selector:", "selector", "methodClass:", "methodClass"]
  32. }),
  33. $globals.HLMethodReference);
  34. $core.addMethod(
  35. $core.method({
  36. selector: "method",
  37. protocol: "accessing",
  38. fn: function (){
  39. var self=this,$self=this;
  40. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  41. return $core.withContext(function($ctx1) {
  42. //>>excludeEnd("ctx");
  43. return $recv($self._methodClass())._methodAt_($self._selector());
  44. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  45. }, function($ctx1) {$ctx1.fill(self,"method",{},$globals.HLMethodReference)});
  46. //>>excludeEnd("ctx");
  47. },
  48. //>>excludeStart("ide", pragmas.excludeIdeData);
  49. args: [],
  50. source: "method\x0a\x09^ self methodClass methodAt: self selector",
  51. referencedClasses: [],
  52. //>>excludeEnd("ide");
  53. messageSends: ["methodAt:", "methodClass", "selector"]
  54. }),
  55. $globals.HLMethodReference);
  56. $core.addMethod(
  57. $core.method({
  58. selector: "methodClass",
  59. protocol: "accessing",
  60. fn: function (){
  61. var self=this,$self=this;
  62. return $self["@methodClass"];
  63. },
  64. //>>excludeStart("ide", pragmas.excludeIdeData);
  65. args: [],
  66. source: "methodClass\x0a\x09^ methodClass",
  67. referencedClasses: [],
  68. //>>excludeEnd("ide");
  69. messageSends: []
  70. }),
  71. $globals.HLMethodReference);
  72. $core.addMethod(
  73. $core.method({
  74. selector: "methodClass:",
  75. protocol: "accessing",
  76. fn: function (aClass){
  77. var self=this,$self=this;
  78. $self["@methodClass"]=aClass;
  79. return self;
  80. },
  81. //>>excludeStart("ide", pragmas.excludeIdeData);
  82. args: ["aClass"],
  83. source: "methodClass: aClass\x0a\x09methodClass := aClass",
  84. referencedClasses: [],
  85. //>>excludeEnd("ide");
  86. messageSends: []
  87. }),
  88. $globals.HLMethodReference);
  89. $core.addMethod(
  90. $core.method({
  91. selector: "selector",
  92. protocol: "accessing",
  93. fn: function (){
  94. var self=this,$self=this;
  95. return $self["@selector"];
  96. },
  97. //>>excludeStart("ide", pragmas.excludeIdeData);
  98. args: [],
  99. source: "selector\x0a\x09^ selector",
  100. referencedClasses: [],
  101. //>>excludeEnd("ide");
  102. messageSends: []
  103. }),
  104. $globals.HLMethodReference);
  105. $core.addMethod(
  106. $core.method({
  107. selector: "selector:",
  108. protocol: "accessing",
  109. fn: function (aString){
  110. var self=this,$self=this;
  111. $self["@selector"]=aString;
  112. return self;
  113. },
  114. //>>excludeStart("ide", pragmas.excludeIdeData);
  115. args: ["aString"],
  116. source: "selector: aString\x0a\x09selector := aString",
  117. referencedClasses: [],
  118. //>>excludeEnd("ide");
  119. messageSends: []
  120. }),
  121. $globals.HLMethodReference);
  122. $core.addMethod(
  123. $core.method({
  124. selector: "source",
  125. protocol: "accessing",
  126. fn: function (){
  127. var self=this,$self=this;
  128. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  129. return $core.withContext(function($ctx1) {
  130. //>>excludeEnd("ctx");
  131. return $recv($self._method())._source();
  132. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  133. }, function($ctx1) {$ctx1.fill(self,"source",{},$globals.HLMethodReference)});
  134. //>>excludeEnd("ctx");
  135. },
  136. //>>excludeStart("ide", pragmas.excludeIdeData);
  137. args: [],
  138. source: "source\x0a\x09^ self method source",
  139. referencedClasses: [],
  140. //>>excludeEnd("ide");
  141. messageSends: ["source", "method"]
  142. }),
  143. $globals.HLMethodReference);
  144. $core.addMethod(
  145. $core.method({
  146. selector: "on:",
  147. protocol: "instance creation",
  148. fn: function (aCompiledMethod){
  149. var self=this,$self=this;
  150. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  151. return $core.withContext(function($ctx1) {
  152. //>>excludeEnd("ctx");
  153. var $1;
  154. $1=$self._new();
  155. $recv($1)._initializeFromMethod_(aCompiledMethod);
  156. return $recv($1)._yourself();
  157. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  158. }, function($ctx1) {$ctx1.fill(self,"on:",{aCompiledMethod:aCompiledMethod},$globals.HLMethodReference.a$cls)});
  159. //>>excludeEnd("ctx");
  160. },
  161. //>>excludeStart("ide", pragmas.excludeIdeData);
  162. args: ["aCompiledMethod"],
  163. source: "on: aCompiledMethod\x0a\x09^ self new\x0a\x09\x09initializeFromMethod: aCompiledMethod;\x0a\x09\x09yourself",
  164. referencedClasses: [],
  165. //>>excludeEnd("ide");
  166. messageSends: ["initializeFromMethod:", "new", "yourself"]
  167. }),
  168. $globals.HLMethodReference.a$cls);
  169. $core.addClass("HLReferences", $globals.HLWidget, ["model", "sendersListWidget", "implementorsListWidget", "classReferencesListWidget", "regexpListWidget", "sourceCodeWidget"], "Helios-References");
  170. $core.addMethod(
  171. $core.method({
  172. selector: "classReferencesListWidget",
  173. protocol: "accessing",
  174. fn: function (){
  175. var self=this,$self=this;
  176. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  177. return $core.withContext(function($ctx1) {
  178. //>>excludeEnd("ctx");
  179. var $1,$receiver;
  180. $1=$self["@classReferencesListWidget"];
  181. if(($receiver = $1) == null || $receiver.a$nil){
  182. $self["@classReferencesListWidget"]=$recv($globals.HLClassReferencesListWidget)._on_($self._model());
  183. $self["@classReferencesListWidget"];
  184. return $recv($self["@classReferencesListWidget"])._next_($self._regexpListWidget());
  185. } else {
  186. return $1;
  187. }
  188. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  189. }, function($ctx1) {$ctx1.fill(self,"classReferencesListWidget",{},$globals.HLReferences)});
  190. //>>excludeEnd("ctx");
  191. },
  192. //>>excludeStart("ide", pragmas.excludeIdeData);
  193. args: [],
  194. source: "classReferencesListWidget\x0a\x09^ classReferencesListWidget ifNil: [\x0a \x09classReferencesListWidget := HLClassReferencesListWidget on: self model.\x0a\x09\x09classReferencesListWidget next: self regexpListWidget ]",
  195. referencedClasses: ["HLClassReferencesListWidget"],
  196. //>>excludeEnd("ide");
  197. messageSends: ["ifNil:", "on:", "model", "next:", "regexpListWidget"]
  198. }),
  199. $globals.HLReferences);
  200. $core.addMethod(
  201. $core.method({
  202. selector: "implementorsListWidget",
  203. protocol: "accessing",
  204. fn: function (){
  205. var self=this,$self=this;
  206. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  207. return $core.withContext(function($ctx1) {
  208. //>>excludeEnd("ctx");
  209. var $1,$receiver;
  210. $1=$self["@implementorsListWidget"];
  211. if(($receiver = $1) == null || $receiver.a$nil){
  212. $self["@implementorsListWidget"]=$recv($globals.HLImplementorsListWidget)._on_($self._model());
  213. $self["@implementorsListWidget"];
  214. return $recv($self["@implementorsListWidget"])._next_($self._classReferencesListWidget());
  215. } else {
  216. return $1;
  217. }
  218. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  219. }, function($ctx1) {$ctx1.fill(self,"implementorsListWidget",{},$globals.HLReferences)});
  220. //>>excludeEnd("ctx");
  221. },
  222. //>>excludeStart("ide", pragmas.excludeIdeData);
  223. args: [],
  224. source: "implementorsListWidget\x0a\x09^ implementorsListWidget ifNil: [\x0a \x09implementorsListWidget := HLImplementorsListWidget on: self model.\x0a\x09\x09implementorsListWidget next: self classReferencesListWidget ]",
  225. referencedClasses: ["HLImplementorsListWidget"],
  226. //>>excludeEnd("ide");
  227. messageSends: ["ifNil:", "on:", "model", "next:", "classReferencesListWidget"]
  228. }),
  229. $globals.HLReferences);
  230. $core.addMethod(
  231. $core.method({
  232. selector: "model",
  233. protocol: "accessing",
  234. fn: function (){
  235. var self=this,$self=this;
  236. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  237. return $core.withContext(function($ctx1) {
  238. //>>excludeEnd("ctx");
  239. var $1,$2,$receiver;
  240. $1=$self["@model"];
  241. if(($receiver = $1) == null || $receiver.a$nil){
  242. $2=$recv($globals.HLReferencesModel)._new();
  243. $recv($2)._environment_($recv($self._manager())._environment());
  244. $self["@model"]=$recv($2)._yourself();
  245. return $self["@model"];
  246. } else {
  247. return $1;
  248. }
  249. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  250. }, function($ctx1) {$ctx1.fill(self,"model",{},$globals.HLReferences)});
  251. //>>excludeEnd("ctx");
  252. },
  253. //>>excludeStart("ide", pragmas.excludeIdeData);
  254. args: [],
  255. source: "model\x0a\x09^ model ifNil: [\x0a\x09\x09model := (HLReferencesModel new\x0a\x09\x09\x09environment: self manager environment;\x0a\x09\x09\x09yourself) ]",
  256. referencedClasses: ["HLReferencesModel"],
  257. //>>excludeEnd("ide");
  258. messageSends: ["ifNil:", "environment:", "new", "environment", "manager", "yourself"]
  259. }),
  260. $globals.HLReferences);
  261. $core.addMethod(
  262. $core.method({
  263. selector: "model:",
  264. protocol: "accessing",
  265. fn: function (aModel){
  266. var self=this,$self=this;
  267. $self["@model"]=aModel;
  268. return self;
  269. },
  270. //>>excludeStart("ide", pragmas.excludeIdeData);
  271. args: ["aModel"],
  272. source: "model: aModel\x0a\x09model := aModel",
  273. referencedClasses: [],
  274. //>>excludeEnd("ide");
  275. messageSends: []
  276. }),
  277. $globals.HLReferences);
  278. $core.addMethod(
  279. $core.method({
  280. selector: "regexpListWidget",
  281. protocol: "accessing",
  282. fn: function (){
  283. var self=this,$self=this;
  284. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  285. return $core.withContext(function($ctx1) {
  286. //>>excludeEnd("ctx");
  287. var $1,$receiver;
  288. $1=$self["@regexpListWidget"];
  289. if(($receiver = $1) == null || $receiver.a$nil){
  290. $self["@regexpListWidget"]=$recv($globals.HLRegexpListWidget)._on_($self._model());
  291. $self["@regexpListWidget"];
  292. return $recv($self["@regexpListWidget"])._next_($self._sourceCodeWidget());
  293. } else {
  294. return $1;
  295. }
  296. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  297. }, function($ctx1) {$ctx1.fill(self,"regexpListWidget",{},$globals.HLReferences)});
  298. //>>excludeEnd("ctx");
  299. },
  300. //>>excludeStart("ide", pragmas.excludeIdeData);
  301. args: [],
  302. source: "regexpListWidget\x0a\x09^ regexpListWidget ifNil: [\x0a \x09regexpListWidget := HLRegexpListWidget on: self model.\x0a\x09\x09regexpListWidget next: self sourceCodeWidget ]",
  303. referencedClasses: ["HLRegexpListWidget"],
  304. //>>excludeEnd("ide");
  305. messageSends: ["ifNil:", "on:", "model", "next:", "sourceCodeWidget"]
  306. }),
  307. $globals.HLReferences);
  308. $core.addMethod(
  309. $core.method({
  310. selector: "registerBindingsOn:",
  311. protocol: "actions",
  312. fn: function (aBindingGroup){
  313. var self=this,$self=this;
  314. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  315. return $core.withContext(function($ctx1) {
  316. //>>excludeEnd("ctx");
  317. $recv($globals.HLToolCommand)._registerConcreteClassesOn_for_(aBindingGroup,$self._model());
  318. return self;
  319. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  320. }, function($ctx1) {$ctx1.fill(self,"registerBindingsOn:",{aBindingGroup:aBindingGroup},$globals.HLReferences)});
  321. //>>excludeEnd("ctx");
  322. },
  323. //>>excludeStart("ide", pragmas.excludeIdeData);
  324. args: ["aBindingGroup"],
  325. source: "registerBindingsOn: aBindingGroup\x0a\x09HLToolCommand \x0a\x09\x09registerConcreteClassesOn: aBindingGroup \x0a\x09\x09for: self model",
  326. referencedClasses: ["HLToolCommand"],
  327. //>>excludeEnd("ide");
  328. messageSends: ["registerConcreteClassesOn:for:", "model"]
  329. }),
  330. $globals.HLReferences);
  331. $core.addMethod(
  332. $core.method({
  333. selector: "renderContentOn:",
  334. protocol: "rendering",
  335. fn: function (html){
  336. var self=this,$self=this;
  337. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  338. return $core.withContext(function($ctx1) {
  339. //>>excludeEnd("ctx");
  340. var $5,$4,$3,$2,$1;
  341. $5=$self._sendersListWidget();
  342. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  343. $ctx1.sendIdx["sendersListWidget"]=1;
  344. //>>excludeEnd("ctx");
  345. $4=$recv($globals.HLVerticalSplitter)._with_with_($5,$self._implementorsListWidget());
  346. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  347. $ctx1.sendIdx["with:with:"]=3;
  348. //>>excludeEnd("ctx");
  349. $3=$recv($globals.HLVerticalSplitter)._with_with_($4,$recv($globals.HLVerticalSplitter)._with_with_($self._classReferencesListWidget(),$self._regexpListWidget()));
  350. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  351. $ctx1.sendIdx["with:with:"]=2;
  352. //>>excludeEnd("ctx");
  353. $2=$recv($globals.HLHorizontalSplitter)._with_with_($3,$self._sourceCodeWidget());
  354. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  355. $ctx1.sendIdx["with:with:"]=1;
  356. //>>excludeEnd("ctx");
  357. $1=$recv($globals.HLContainer)._with_($2);
  358. $recv(html)._with_($1);
  359. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  360. $ctx1.sendIdx["with:"]=1;
  361. //>>excludeEnd("ctx");
  362. $recv($self._sendersListWidget())._focus();
  363. return self;
  364. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  365. }, function($ctx1) {$ctx1.fill(self,"renderContentOn:",{html:html},$globals.HLReferences)});
  366. //>>excludeEnd("ctx");
  367. },
  368. //>>excludeStart("ide", pragmas.excludeIdeData);
  369. args: ["html"],
  370. source: "renderContentOn: html\x0a\x09html with: (HLContainer with: (HLHorizontalSplitter \x0a \x09with: (HLVerticalSplitter\x0a \x09with: (HLVerticalSplitter\x0a \x09with: self sendersListWidget\x0a with: self implementorsListWidget)\x0a with: (HLVerticalSplitter\x0a \x09with: self classReferencesListWidget\x0a with: self regexpListWidget)) \x0a with: self sourceCodeWidget)).\x0a\x09\x0a\x09self sendersListWidget focus",
  371. referencedClasses: ["HLContainer", "HLHorizontalSplitter", "HLVerticalSplitter"],
  372. //>>excludeEnd("ide");
  373. messageSends: ["with:", "with:with:", "sendersListWidget", "implementorsListWidget", "classReferencesListWidget", "regexpListWidget", "sourceCodeWidget", "focus"]
  374. }),
  375. $globals.HLReferences);
  376. $core.addMethod(
  377. $core.method({
  378. selector: "search:",
  379. protocol: "actions",
  380. fn: function (aString){
  381. var self=this,$self=this;
  382. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  383. return $core.withContext(function($ctx1) {
  384. //>>excludeEnd("ctx");
  385. $recv($self._model())._search_(aString);
  386. $self._setTabLabel_(aString);
  387. return self;
  388. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  389. }, function($ctx1) {$ctx1.fill(self,"search:",{aString:aString},$globals.HLReferences)});
  390. //>>excludeEnd("ctx");
  391. },
  392. //>>excludeStart("ide", pragmas.excludeIdeData);
  393. args: ["aString"],
  394. source: "search: aString\x0a\x09self model search: aString.\x0a\x09self setTabLabel: aString",
  395. referencedClasses: [],
  396. //>>excludeEnd("ide");
  397. messageSends: ["search:", "model", "setTabLabel:"]
  398. }),
  399. $globals.HLReferences);
  400. $core.addMethod(
  401. $core.method({
  402. selector: "sendersListWidget",
  403. protocol: "accessing",
  404. fn: function (){
  405. var self=this,$self=this;
  406. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  407. return $core.withContext(function($ctx1) {
  408. //>>excludeEnd("ctx");
  409. var $1,$receiver;
  410. $1=$self["@sendersListWidget"];
  411. if(($receiver = $1) == null || $receiver.a$nil){
  412. $self["@sendersListWidget"]=$recv($globals.HLSendersListWidget)._on_($self._model());
  413. $self["@sendersListWidget"];
  414. return $recv($self["@sendersListWidget"])._next_($self._implementorsListWidget());
  415. } else {
  416. return $1;
  417. }
  418. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  419. }, function($ctx1) {$ctx1.fill(self,"sendersListWidget",{},$globals.HLReferences)});
  420. //>>excludeEnd("ctx");
  421. },
  422. //>>excludeStart("ide", pragmas.excludeIdeData);
  423. args: [],
  424. source: "sendersListWidget\x0a\x09^ sendersListWidget ifNil: [\x0a \x09sendersListWidget := HLSendersListWidget on: self model.\x0a\x09\x09sendersListWidget next: self implementorsListWidget ]",
  425. referencedClasses: ["HLSendersListWidget"],
  426. //>>excludeEnd("ide");
  427. messageSends: ["ifNil:", "on:", "model", "next:", "implementorsListWidget"]
  428. }),
  429. $globals.HLReferences);
  430. $core.addMethod(
  431. $core.method({
  432. selector: "sourceCodeWidget",
  433. protocol: "accessing",
  434. fn: function (){
  435. var self=this,$self=this;
  436. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  437. return $core.withContext(function($ctx1) {
  438. //>>excludeEnd("ctx");
  439. var $1,$2,$receiver;
  440. $1=$self["@sourceCodeWidget"];
  441. if(($receiver = $1) == null || $receiver.a$nil){
  442. $2=$recv($globals.HLBrowserCodeWidget)._new();
  443. $recv($2)._browserModel_($self._model());
  444. $self["@sourceCodeWidget"]=$recv($2)._yourself();
  445. return $self["@sourceCodeWidget"];
  446. } else {
  447. return $1;
  448. }
  449. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  450. }, function($ctx1) {$ctx1.fill(self,"sourceCodeWidget",{},$globals.HLReferences)});
  451. //>>excludeEnd("ctx");
  452. },
  453. //>>excludeStart("ide", pragmas.excludeIdeData);
  454. args: [],
  455. source: "sourceCodeWidget\x0a\x09^ sourceCodeWidget ifNil: [\x0a \x09sourceCodeWidget := HLBrowserCodeWidget new\x0a\x09\x09\x09browserModel: self model;\x0a\x09\x09\x09yourself ]",
  456. referencedClasses: ["HLBrowserCodeWidget"],
  457. //>>excludeEnd("ide");
  458. messageSends: ["ifNil:", "browserModel:", "new", "model", "yourself"]
  459. }),
  460. $globals.HLReferences);
  461. $core.addMethod(
  462. $core.method({
  463. selector: "canBeOpenAsTab",
  464. protocol: "testing",
  465. fn: function (){
  466. var self=this,$self=this;
  467. return false;
  468. },
  469. //>>excludeStart("ide", pragmas.excludeIdeData);
  470. args: [],
  471. source: "canBeOpenAsTab\x0a\x09^ false",
  472. referencedClasses: [],
  473. //>>excludeEnd("ide");
  474. messageSends: []
  475. }),
  476. $globals.HLReferences.a$cls);
  477. $core.addMethod(
  478. $core.method({
  479. selector: "tabClass",
  480. protocol: "accessing",
  481. fn: function (){
  482. var self=this,$self=this;
  483. return "references";
  484. },
  485. //>>excludeStart("ide", pragmas.excludeIdeData);
  486. args: [],
  487. source: "tabClass\x0a\x09^ 'references'",
  488. referencedClasses: [],
  489. //>>excludeEnd("ide");
  490. messageSends: []
  491. }),
  492. $globals.HLReferences.a$cls);
  493. $core.addMethod(
  494. $core.method({
  495. selector: "tabLabel",
  496. protocol: "accessing",
  497. fn: function (){
  498. var self=this,$self=this;
  499. return "References";
  500. },
  501. //>>excludeStart("ide", pragmas.excludeIdeData);
  502. args: [],
  503. source: "tabLabel\x0a\x09^ 'References'",
  504. referencedClasses: [],
  505. //>>excludeEnd("ide");
  506. messageSends: []
  507. }),
  508. $globals.HLReferences.a$cls);
  509. $core.addMethod(
  510. $core.method({
  511. selector: "tabPriority",
  512. protocol: "accessing",
  513. fn: function (){
  514. var self=this,$self=this;
  515. return (100);
  516. },
  517. //>>excludeStart("ide", pragmas.excludeIdeData);
  518. args: [],
  519. source: "tabPriority\x0a\x09^ 100",
  520. referencedClasses: [],
  521. //>>excludeEnd("ide");
  522. messageSends: []
  523. }),
  524. $globals.HLReferences.a$cls);
  525. $core.addClass("HLReferencesListWidget", $globals.HLToolListWidget, [], "Helios-References");
  526. $core.addMethod(
  527. $core.method({
  528. selector: "activateListItem:",
  529. protocol: "actions",
  530. fn: function (anItem){
  531. var self=this,$self=this;
  532. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  533. return $core.withContext(function($ctx1) {
  534. //>>excludeEnd("ctx");
  535. $recv($self._model())._withChangesDo_((function(){
  536. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  537. return $core.withContext(function($ctx2) {
  538. //>>excludeEnd("ctx");
  539. return (
  540. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  541. $ctx2.supercall = true,
  542. //>>excludeEnd("ctx");
  543. ($globals.HLReferencesListWidget.superclass||$boot.nilAsClass).fn.prototype._activateListItem_.apply($self, [anItem]));
  544. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  545. $ctx2.supercall = false;
  546. //>>excludeEnd("ctx");;
  547. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  548. }, function($ctx2) {$ctx2.fillBlock({},$ctx1,1)});
  549. //>>excludeEnd("ctx");
  550. }));
  551. return self;
  552. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  553. }, function($ctx1) {$ctx1.fill(self,"activateListItem:",{anItem:anItem},$globals.HLReferencesListWidget)});
  554. //>>excludeEnd("ctx");
  555. },
  556. //>>excludeStart("ide", pragmas.excludeIdeData);
  557. args: ["anItem"],
  558. source: "activateListItem: anItem\x0a\x09self model withChangesDo: [ super activateListItem: anItem ]",
  559. referencedClasses: [],
  560. //>>excludeEnd("ide");
  561. messageSends: ["withChangesDo:", "model", "activateListItem:"]
  562. }),
  563. $globals.HLReferencesListWidget);
  564. $core.addMethod(
  565. $core.method({
  566. selector: "commandCategory",
  567. protocol: "accessing",
  568. fn: function (){
  569. var self=this,$self=this;
  570. return "Methods";
  571. },
  572. //>>excludeStart("ide", pragmas.excludeIdeData);
  573. args: [],
  574. source: "commandCategory\x0a\x09^ 'Methods'",
  575. referencedClasses: [],
  576. //>>excludeEnd("ide");
  577. messageSends: []
  578. }),
  579. $globals.HLReferencesListWidget);
  580. $core.addMethod(
  581. $core.method({
  582. selector: "label",
  583. protocol: "accessing",
  584. fn: function (){
  585. var self=this,$self=this;
  586. return "List";
  587. },
  588. //>>excludeStart("ide", pragmas.excludeIdeData);
  589. args: [],
  590. source: "label\x0a\x09^ 'List'",
  591. referencedClasses: [],
  592. //>>excludeEnd("ide");
  593. messageSends: []
  594. }),
  595. $globals.HLReferencesListWidget);
  596. $core.addMethod(
  597. $core.method({
  598. selector: "observeModel",
  599. protocol: "actions",
  600. fn: function (){
  601. var self=this,$self=this;
  602. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  603. return $core.withContext(function($ctx1) {
  604. //>>excludeEnd("ctx");
  605. var $1;
  606. $1=$recv($self._model())._announcer();
  607. $recv($1)._on_do_($globals.HLSearchReferences,(function(ann){
  608. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  609. return $core.withContext(function($ctx2) {
  610. //>>excludeEnd("ctx");
  611. return $self._onSearchReferences_($recv(ann)._searchString());
  612. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  613. }, function($ctx2) {$ctx2.fillBlock({ann:ann},$ctx1,1)});
  614. //>>excludeEnd("ctx");
  615. }));
  616. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  617. $ctx1.sendIdx["on:do:"]=1;
  618. //>>excludeEnd("ctx");
  619. $recv($1)._on_do_($globals.HLMethodSelected,(function(ann){
  620. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  621. return $core.withContext(function($ctx2) {
  622. //>>excludeEnd("ctx");
  623. return $self._onMethodSelected_($recv(ann)._item());
  624. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  625. }, function($ctx2) {$ctx2.fillBlock({ann:ann},$ctx1,2)});
  626. //>>excludeEnd("ctx");
  627. }));
  628. return self;
  629. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  630. }, function($ctx1) {$ctx1.fill(self,"observeModel",{},$globals.HLReferencesListWidget)});
  631. //>>excludeEnd("ctx");
  632. },
  633. //>>excludeStart("ide", pragmas.excludeIdeData);
  634. args: [],
  635. source: "observeModel\x0a\x09self model announcer\x0a\x09\x09on: HLSearchReferences\x0a\x09\x09do: [ :ann | self onSearchReferences: ann searchString ];\x0a\x09\x09on: HLMethodSelected\x0a\x09\x09do: [ :ann | self onMethodSelected: ann item ]",
  636. referencedClasses: ["HLSearchReferences", "HLMethodSelected"],
  637. //>>excludeEnd("ide");
  638. messageSends: ["on:do:", "announcer", "model", "onSearchReferences:", "searchString", "onMethodSelected:", "item"]
  639. }),
  640. $globals.HLReferencesListWidget);
  641. $core.addMethod(
  642. $core.method({
  643. selector: "onMethodSelected:",
  644. protocol: "reactions",
  645. fn: function (aMethod){
  646. var self=this,$self=this;
  647. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  648. return $core.withContext(function($ctx1) {
  649. //>>excludeEnd("ctx");
  650. var $1,$2,$receiver;
  651. var $early={};
  652. try {
  653. if(($receiver = aMethod) == null || $receiver.a$nil){
  654. return self;
  655. } else {
  656. aMethod;
  657. }
  658. $recv($self._items())._detect_ifNone_((function(each){
  659. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  660. return $core.withContext(function($ctx2) {
  661. //>>excludeEnd("ctx");
  662. $1=$recv(aMethod)._selector();
  663. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  664. $ctx2.sendIdx["selector"]=1;
  665. //>>excludeEnd("ctx");
  666. return $recv(each).__eq($1);
  667. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  668. }, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1,2)});
  669. //>>excludeEnd("ctx");
  670. }),(function(){
  671. throw $early=[self];
  672. }));
  673. $2=$recv(aMethod)._selector();
  674. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  675. $ctx1.sendIdx["selector"]=2;
  676. //>>excludeEnd("ctx");
  677. $self._selectedItem_($2);
  678. $self._activateItem_($recv(aMethod)._selector());
  679. return self;
  680. }
  681. catch(e) {if(e===$early)return e[0]; throw e}
  682. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  683. }, function($ctx1) {$ctx1.fill(self,"onMethodSelected:",{aMethod:aMethod},$globals.HLReferencesListWidget)});
  684. //>>excludeEnd("ctx");
  685. },
  686. //>>excludeStart("ide", pragmas.excludeIdeData);
  687. args: ["aMethod"],
  688. source: "onMethodSelected: aMethod\x0a\x09aMethod ifNil: [ ^ self ].\x0a\x09self items detect: [ :each | each = aMethod selector ] ifNone: [ ^ self ].\x0a\x09\x0a\x09self \x0a\x09\x09selectedItem: aMethod selector;\x0a\x09\x09activateItem: aMethod selector",
  689. referencedClasses: [],
  690. //>>excludeEnd("ide");
  691. messageSends: ["ifNil:", "detect:ifNone:", "items", "=", "selector", "selectedItem:", "activateItem:"]
  692. }),
  693. $globals.HLReferencesListWidget);
  694. $core.addMethod(
  695. $core.method({
  696. selector: "onSearchReferences:",
  697. protocol: "reactions",
  698. fn: function (aString){
  699. var self=this,$self=this;
  700. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  701. return $core.withContext(function($ctx1) {
  702. //>>excludeEnd("ctx");
  703. $self._subclassResponsibility();
  704. return self;
  705. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  706. }, function($ctx1) {$ctx1.fill(self,"onSearchReferences:",{aString:aString},$globals.HLReferencesListWidget)});
  707. //>>excludeEnd("ctx");
  708. },
  709. //>>excludeStart("ide", pragmas.excludeIdeData);
  710. args: ["aString"],
  711. source: "onSearchReferences: aString\x0a\x09self subclassResponsibility",
  712. referencedClasses: [],
  713. //>>excludeEnd("ide");
  714. messageSends: ["subclassResponsibility"]
  715. }),
  716. $globals.HLReferencesListWidget);
  717. $core.addMethod(
  718. $core.method({
  719. selector: "renderItemLabel:on:",
  720. protocol: "rendering",
  721. fn: function (aMethod,html){
  722. var self=this,$self=this;
  723. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  724. return $core.withContext(function($ctx1) {
  725. //>>excludeEnd("ctx");
  726. var $1;
  727. $1=$recv($recv($recv($recv(aMethod)._methodClass())._name()).__comma(" >> #")).__comma($recv(aMethod)._selector());
  728. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  729. $ctx1.sendIdx[","]=1;
  730. //>>excludeEnd("ctx");
  731. $recv(html)._with_($1);
  732. return self;
  733. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  734. }, function($ctx1) {$ctx1.fill(self,"renderItemLabel:on:",{aMethod:aMethod,html:html},$globals.HLReferencesListWidget)});
  735. //>>excludeEnd("ctx");
  736. },
  737. //>>excludeStart("ide", pragmas.excludeIdeData);
  738. args: ["aMethod", "html"],
  739. source: "renderItemLabel: aMethod on: html\x0a\x09html with: aMethod methodClass name, ' >> #', aMethod selector",
  740. referencedClasses: [],
  741. //>>excludeEnd("ide");
  742. messageSends: ["with:", ",", "name", "methodClass", "selector"]
  743. }),
  744. $globals.HLReferencesListWidget);
  745. $core.addMethod(
  746. $core.method({
  747. selector: "selectItem:",
  748. protocol: "actions",
  749. fn: function (aMethod){
  750. var self=this,$self=this;
  751. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  752. return $core.withContext(function($ctx1) {
  753. //>>excludeEnd("ctx");
  754. var $1;
  755. (
  756. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  757. $ctx1.supercall = true,
  758. //>>excludeEnd("ctx");
  759. ($globals.HLReferencesListWidget.superclass||$boot.nilAsClass).fn.prototype._selectItem_.apply($self, [aMethod]));
  760. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  761. $ctx1.supercall = false;
  762. //>>excludeEnd("ctx");;
  763. $1=$self._model();
  764. $recv($1)._selectedClass_(nil);
  765. $recv($1)._selectedMethod_(aMethod);
  766. return self;
  767. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  768. }, function($ctx1) {$ctx1.fill(self,"selectItem:",{aMethod:aMethod},$globals.HLReferencesListWidget)});
  769. //>>excludeEnd("ctx");
  770. },
  771. //>>excludeStart("ide", pragmas.excludeIdeData);
  772. args: ["aMethod"],
  773. source: "selectItem: aMethod\x0a\x09super selectItem: aMethod.\x0a\x09self model selectedClass: nil; selectedMethod: aMethod",
  774. referencedClasses: [],
  775. //>>excludeEnd("ide");
  776. messageSends: ["selectItem:", "selectedClass:", "model", "selectedMethod:"]
  777. }),
  778. $globals.HLReferencesListWidget);
  779. $core.addMethod(
  780. $core.method({
  781. selector: "on:",
  782. protocol: "instance creation",
  783. fn: function (aModel){
  784. var self=this,$self=this;
  785. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  786. return $core.withContext(function($ctx1) {
  787. //>>excludeEnd("ctx");
  788. var $1;
  789. $1=$self._new();
  790. $recv($1)._model_(aModel);
  791. return $recv($1)._yourself();
  792. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  793. }, function($ctx1) {$ctx1.fill(self,"on:",{aModel:aModel},$globals.HLReferencesListWidget.a$cls)});
  794. //>>excludeEnd("ctx");
  795. },
  796. //>>excludeStart("ide", pragmas.excludeIdeData);
  797. args: ["aModel"],
  798. source: "on: aModel\x0a\x09^ self new \x0a\x09\x09model: aModel; \x0a\x09\x09yourself",
  799. referencedClasses: [],
  800. //>>excludeEnd("ide");
  801. messageSends: ["model:", "new", "yourself"]
  802. }),
  803. $globals.HLReferencesListWidget.a$cls);
  804. $core.addClass("HLClassReferencesListWidget", $globals.HLReferencesListWidget, [], "Helios-References");
  805. $core.addMethod(
  806. $core.method({
  807. selector: "label",
  808. protocol: "accessing",
  809. fn: function (){
  810. var self=this,$self=this;
  811. return "Class references";
  812. },
  813. //>>excludeStart("ide", pragmas.excludeIdeData);
  814. args: [],
  815. source: "label\x0a\x09^ 'Class references'",
  816. referencedClasses: [],
  817. //>>excludeEnd("ide");
  818. messageSends: []
  819. }),
  820. $globals.HLClassReferencesListWidget);
  821. $core.addMethod(
  822. $core.method({
  823. selector: "onSearchReferences:",
  824. protocol: "reactions",
  825. fn: function (aString){
  826. var self=this,$self=this;
  827. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  828. return $core.withContext(function($ctx1) {
  829. //>>excludeEnd("ctx");
  830. $self._selectItem_(nil);
  831. $self._items_($recv($self._model())._classReferencesOf_(aString));
  832. $self._refresh();
  833. return self;
  834. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  835. }, function($ctx1) {$ctx1.fill(self,"onSearchReferences:",{aString:aString},$globals.HLClassReferencesListWidget)});
  836. //>>excludeEnd("ctx");
  837. },
  838. //>>excludeStart("ide", pragmas.excludeIdeData);
  839. args: ["aString"],
  840. source: "onSearchReferences: aString\x0a\x09self selectItem: nil.\x0a\x09self items: (self model classReferencesOf: aString).\x0a\x09self refresh",
  841. referencedClasses: [],
  842. //>>excludeEnd("ide");
  843. messageSends: ["selectItem:", "items:", "classReferencesOf:", "model", "refresh"]
  844. }),
  845. $globals.HLClassReferencesListWidget);
  846. $core.addClass("HLImplementorsListWidget", $globals.HLReferencesListWidget, [], "Helios-References");
  847. $core.addMethod(
  848. $core.method({
  849. selector: "label",
  850. protocol: "accessing",
  851. fn: function (){
  852. var self=this,$self=this;
  853. return "Implementors";
  854. },
  855. //>>excludeStart("ide", pragmas.excludeIdeData);
  856. args: [],
  857. source: "label\x0a\x09^ 'Implementors'",
  858. referencedClasses: [],
  859. //>>excludeEnd("ide");
  860. messageSends: []
  861. }),
  862. $globals.HLImplementorsListWidget);
  863. $core.addMethod(
  864. $core.method({
  865. selector: "onSearchReferences:",
  866. protocol: "reactions",
  867. fn: function (aString){
  868. var self=this,$self=this;
  869. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  870. return $core.withContext(function($ctx1) {
  871. //>>excludeEnd("ctx");
  872. $self._selectItem_(nil);
  873. $self._items_($recv($self._model())._implementorsOf_(aString));
  874. $self._refresh();
  875. return self;
  876. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  877. }, function($ctx1) {$ctx1.fill(self,"onSearchReferences:",{aString:aString},$globals.HLImplementorsListWidget)});
  878. //>>excludeEnd("ctx");
  879. },
  880. //>>excludeStart("ide", pragmas.excludeIdeData);
  881. args: ["aString"],
  882. source: "onSearchReferences: aString\x0a\x09self selectItem: nil.\x0a\x09self items: (self model implementorsOf: aString).\x0a\x09self refresh",
  883. referencedClasses: [],
  884. //>>excludeEnd("ide");
  885. messageSends: ["selectItem:", "items:", "implementorsOf:", "model", "refresh"]
  886. }),
  887. $globals.HLImplementorsListWidget);
  888. $core.addClass("HLRegexpListWidget", $globals.HLReferencesListWidget, [], "Helios-References");
  889. $core.addMethod(
  890. $core.method({
  891. selector: "label",
  892. protocol: "accessing",
  893. fn: function (){
  894. var self=this,$self=this;
  895. return "Source search";
  896. },
  897. //>>excludeStart("ide", pragmas.excludeIdeData);
  898. args: [],
  899. source: "label\x0a\x09^ 'Source search'",
  900. referencedClasses: [],
  901. //>>excludeEnd("ide");
  902. messageSends: []
  903. }),
  904. $globals.HLRegexpListWidget);
  905. $core.addMethod(
  906. $core.method({
  907. selector: "onSearchReferences:",
  908. protocol: "reactions",
  909. fn: function (aString){
  910. var self=this,$self=this;
  911. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  912. return $core.withContext(function($ctx1) {
  913. //>>excludeEnd("ctx");
  914. $self._selectItem_(nil);
  915. $self._items_($recv($self._model())._regexpReferencesOf_(aString));
  916. $self._refresh();
  917. return self;
  918. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  919. }, function($ctx1) {$ctx1.fill(self,"onSearchReferences:",{aString:aString},$globals.HLRegexpListWidget)});
  920. //>>excludeEnd("ctx");
  921. },
  922. //>>excludeStart("ide", pragmas.excludeIdeData);
  923. args: ["aString"],
  924. source: "onSearchReferences: aString\x0a\x09self selectItem: nil.\x0a\x09self items: (self model regexpReferencesOf: aString).\x0a\x09self refresh",
  925. referencedClasses: [],
  926. //>>excludeEnd("ide");
  927. messageSends: ["selectItem:", "items:", "regexpReferencesOf:", "model", "refresh"]
  928. }),
  929. $globals.HLRegexpListWidget);
  930. $core.addClass("HLSendersListWidget", $globals.HLReferencesListWidget, [], "Helios-References");
  931. $core.addMethod(
  932. $core.method({
  933. selector: "label",
  934. protocol: "accessing",
  935. fn: function (){
  936. var self=this,$self=this;
  937. return "Senders";
  938. },
  939. //>>excludeStart("ide", pragmas.excludeIdeData);
  940. args: [],
  941. source: "label\x0a\x09^ 'Senders'",
  942. referencedClasses: [],
  943. //>>excludeEnd("ide");
  944. messageSends: []
  945. }),
  946. $globals.HLSendersListWidget);
  947. $core.addMethod(
  948. $core.method({
  949. selector: "onSearchReferences:",
  950. protocol: "reactions",
  951. fn: function (aString){
  952. var self=this,$self=this;
  953. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  954. return $core.withContext(function($ctx1) {
  955. //>>excludeEnd("ctx");
  956. $self._selectItem_(nil);
  957. $self._items_($recv($self._model())._sendersOf_(aString));
  958. $self._refresh();
  959. return self;
  960. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  961. }, function($ctx1) {$ctx1.fill(self,"onSearchReferences:",{aString:aString},$globals.HLSendersListWidget)});
  962. //>>excludeEnd("ctx");
  963. },
  964. //>>excludeStart("ide", pragmas.excludeIdeData);
  965. args: ["aString"],
  966. source: "onSearchReferences: aString\x0a\x09self selectItem: nil.\x0a\x09self items: (self model sendersOf: aString).\x0a\x09self refresh",
  967. referencedClasses: [],
  968. //>>excludeEnd("ide");
  969. messageSends: ["selectItem:", "items:", "sendersOf:", "model", "refresh"]
  970. }),
  971. $globals.HLSendersListWidget);
  972. $core.addClass("HLReferencesModel", $globals.HLToolModel, ["methodsCache", "classesAndMetaclassesCache"], "Helios-References");
  973. $core.addMethod(
  974. $core.method({
  975. selector: "allMethods",
  976. protocol: "accessing",
  977. fn: function (){
  978. var self=this,$self=this;
  979. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  980. return $core.withContext(function($ctx1) {
  981. //>>excludeEnd("ctx");
  982. return $self._methodsCache();
  983. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  984. }, function($ctx1) {$ctx1.fill(self,"allMethods",{},$globals.HLReferencesModel)});
  985. //>>excludeEnd("ctx");
  986. },
  987. //>>excludeStart("ide", pragmas.excludeIdeData);
  988. args: [],
  989. source: "allMethods\x0a\x09^ self methodsCache",
  990. referencedClasses: [],
  991. //>>excludeEnd("ide");
  992. messageSends: ["methodsCache"]
  993. }),
  994. $globals.HLReferencesModel);
  995. $core.addMethod(
  996. $core.method({
  997. selector: "classReferencesOf:",
  998. protocol: "accessing",
  999. fn: function (aString){
  1000. var self=this,$self=this;
  1001. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  1002. return $core.withContext(function($ctx1) {
  1003. //>>excludeEnd("ctx");
  1004. return $recv($self._allMethods())._select_((function(each){
  1005. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  1006. return $core.withContext(function($ctx2) {
  1007. //>>excludeEnd("ctx");
  1008. return $recv($recv(each)._referencedClasses())._includes_(aString);
  1009. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  1010. }, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1,1)});
  1011. //>>excludeEnd("ctx");
  1012. }));
  1013. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  1014. }, function($ctx1) {$ctx1.fill(self,"classReferencesOf:",{aString:aString},$globals.HLReferencesModel)});
  1015. //>>excludeEnd("ctx");
  1016. },
  1017. //>>excludeStart("ide", pragmas.excludeIdeData);
  1018. args: ["aString"],
  1019. source: "classReferencesOf: aString\x0a\x09\x22Answer all methods referencing the class named aString\x22\x0a\x09\x0a\x09^self allMethods select: [ :each |\x0a\x09\x09\x09(each referencedClasses includes: aString) ].",
  1020. referencedClasses: [],
  1021. //>>excludeEnd("ide");
  1022. messageSends: ["select:", "allMethods", "includes:", "referencedClasses"]
  1023. }),
  1024. $globals.HLReferencesModel);
  1025. $core.addMethod(
  1026. $core.method({
  1027. selector: "classesAndMetaclasses",
  1028. protocol: "accessing",
  1029. fn: function (){
  1030. var self=this,$self=this;
  1031. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  1032. return $core.withContext(function($ctx1) {
  1033. //>>excludeEnd("ctx");
  1034. return $self._classesAndMetaclassesCache();
  1035. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  1036. }, function($ctx1) {$ctx1.fill(self,"classesAndMetaclasses",{},$globals.HLReferencesModel)});
  1037. //>>excludeEnd("ctx");
  1038. },
  1039. //>>excludeStart("ide", pragmas.excludeIdeData);
  1040. args: [],
  1041. source: "classesAndMetaclasses\x0a\x09^ self classesAndMetaclassesCache",
  1042. referencedClasses: [],
  1043. //>>excludeEnd("ide");
  1044. messageSends: ["classesAndMetaclassesCache"]
  1045. }),
  1046. $globals.HLReferencesModel);
  1047. $core.addMethod(
  1048. $core.method({
  1049. selector: "classesAndMetaclassesCache",
  1050. protocol: "cache",
  1051. fn: function (){
  1052. var self=this,$self=this;
  1053. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  1054. return $core.withContext(function($ctx1) {
  1055. //>>excludeEnd("ctx");
  1056. var $1,$receiver;
  1057. $1=$self["@classesAndMetaclassesCache"];
  1058. if(($receiver = $1) == null || $receiver.a$nil){
  1059. $self._updateClassesAndMetaclassesCache();
  1060. } else {
  1061. $1;
  1062. }
  1063. return $self["@classesAndMetaclassesCache"];
  1064. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  1065. }, function($ctx1) {$ctx1.fill(self,"classesAndMetaclassesCache",{},$globals.HLReferencesModel)});
  1066. //>>excludeEnd("ctx");
  1067. },
  1068. //>>excludeStart("ide", pragmas.excludeIdeData);
  1069. args: [],
  1070. source: "classesAndMetaclassesCache\x0a\x09classesAndMetaclassesCache ifNil: [ self updateClassesAndMetaclassesCache ].\x0a\x09^ classesAndMetaclassesCache",
  1071. referencedClasses: [],
  1072. //>>excludeEnd("ide");
  1073. messageSends: ["ifNil:", "updateClassesAndMetaclassesCache"]
  1074. }),
  1075. $globals.HLReferencesModel);
  1076. $core.addMethod(
  1077. $core.method({
  1078. selector: "implementorsOf:",
  1079. protocol: "accessing",
  1080. fn: function (aString){
  1081. var self=this,$self=this;
  1082. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  1083. return $core.withContext(function($ctx1) {
  1084. //>>excludeEnd("ctx");
  1085. return $recv($recv($self._allMethods())._select_((function(each){
  1086. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  1087. return $core.withContext(function($ctx2) {
  1088. //>>excludeEnd("ctx");
  1089. return $recv($recv(each)._selector()).__eq(aString);
  1090. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  1091. }, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1,1)});
  1092. //>>excludeEnd("ctx");
  1093. })))._collect_((function(each){
  1094. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  1095. return $core.withContext(function($ctx2) {
  1096. //>>excludeEnd("ctx");
  1097. return $self._methodReferenceOn_(each);
  1098. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  1099. }, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1,2)});
  1100. //>>excludeEnd("ctx");
  1101. }));
  1102. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  1103. }, function($ctx1) {$ctx1.fill(self,"implementorsOf:",{aString:aString},$globals.HLReferencesModel)});
  1104. //>>excludeEnd("ctx");
  1105. },
  1106. //>>excludeStart("ide", pragmas.excludeIdeData);
  1107. args: ["aString"],
  1108. source: "implementorsOf: aString\x0a\x09^ (self allMethods select: [ :each |\x0a\x09\x09each selector = aString ])\x0a\x09\x09\x09collect: [ :each | self methodReferenceOn: each ]",
  1109. referencedClasses: [],
  1110. //>>excludeEnd("ide");
  1111. messageSends: ["collect:", "select:", "allMethods", "=", "selector", "methodReferenceOn:"]
  1112. }),
  1113. $globals.HLReferencesModel);
  1114. $core.addMethod(
  1115. $core.method({
  1116. selector: "isReferencesModel",
  1117. protocol: "testing",
  1118. fn: function (){
  1119. var self=this,$self=this;
  1120. return true;
  1121. },
  1122. //>>excludeStart("ide", pragmas.excludeIdeData);
  1123. args: [],
  1124. source: "isReferencesModel\x0a\x09^ true",
  1125. referencedClasses: [],
  1126. //>>excludeEnd("ide");
  1127. messageSends: []
  1128. }),
  1129. $globals.HLReferencesModel);
  1130. $core.addMethod(
  1131. $core.method({
  1132. selector: "methodReferenceOn:",
  1133. protocol: "accessing",
  1134. fn: function (aCompiledMethod){
  1135. var self=this,$self=this;
  1136. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  1137. return $core.withContext(function($ctx1) {
  1138. //>>excludeEnd("ctx");
  1139. return $recv($globals.HLMethodReference)._on_(aCompiledMethod);
  1140. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  1141. }, function($ctx1) {$ctx1.fill(self,"methodReferenceOn:",{aCompiledMethod:aCompiledMethod},$globals.HLReferencesModel)});
  1142. //>>excludeEnd("ctx");
  1143. },
  1144. //>>excludeStart("ide", pragmas.excludeIdeData);
  1145. args: ["aCompiledMethod"],
  1146. source: "methodReferenceOn: aCompiledMethod\x0a\x09^ HLMethodReference on: aCompiledMethod",
  1147. referencedClasses: ["HLMethodReference"],
  1148. //>>excludeEnd("ide");
  1149. messageSends: ["on:"]
  1150. }),
  1151. $globals.HLReferencesModel);
  1152. $core.addMethod(
  1153. $core.method({
  1154. selector: "methodsCache",
  1155. protocol: "cache",
  1156. fn: function (){
  1157. var self=this,$self=this;
  1158. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  1159. return $core.withContext(function($ctx1) {
  1160. //>>excludeEnd("ctx");
  1161. var $1,$receiver;
  1162. $1=$self["@methodsCache"];
  1163. if(($receiver = $1) == null || $receiver.a$nil){
  1164. $self._updateMethodsCache();
  1165. } else {
  1166. $1;
  1167. }
  1168. return $self["@methodsCache"];
  1169. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  1170. }, function($ctx1) {$ctx1.fill(self,"methodsCache",{},$globals.HLReferencesModel)});
  1171. //>>excludeEnd("ctx");
  1172. },
  1173. //>>excludeStart("ide", pragmas.excludeIdeData);
  1174. args: [],
  1175. source: "methodsCache\x0a\x09methodsCache ifNil: [ self updateMethodsCache ].\x0a\x09^ methodsCache",
  1176. referencedClasses: [],
  1177. //>>excludeEnd("ide");
  1178. messageSends: ["ifNil:", "updateMethodsCache"]
  1179. }),
  1180. $globals.HLReferencesModel);
  1181. $core.addMethod(
  1182. $core.method({
  1183. selector: "openClassNamed:",
  1184. protocol: "actions",
  1185. fn: function (aString){
  1186. var self=this,$self=this;
  1187. var browser;
  1188. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  1189. return $core.withContext(function($ctx1) {
  1190. //>>excludeEnd("ctx");
  1191. $self._withChangesDo_((function(){
  1192. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  1193. return $core.withContext(function($ctx2) {
  1194. //>>excludeEnd("ctx");
  1195. browser=$recv($globals.HLBrowser)._openAsTab();
  1196. browser;
  1197. return $recv(browser)._openClassNamed_(aString);
  1198. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  1199. }, function($ctx2) {$ctx2.fillBlock({},$ctx1,1)});
  1200. //>>excludeEnd("ctx");
  1201. }));
  1202. return self;
  1203. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  1204. }, function($ctx1) {$ctx1.fill(self,"openClassNamed:",{aString:aString,browser:browser},$globals.HLReferencesModel)});
  1205. //>>excludeEnd("ctx");
  1206. },
  1207. //>>excludeStart("ide", pragmas.excludeIdeData);
  1208. args: ["aString"],
  1209. source: "openClassNamed: aString\x0a\x09| browser |\x0a\x09\x0a\x09self withChangesDo: [\x0a\x09\x09browser := HLBrowser openAsTab.\x0a\x09\x09browser openClassNamed: aString ]",
  1210. referencedClasses: ["HLBrowser"],
  1211. //>>excludeEnd("ide");
  1212. messageSends: ["withChangesDo:", "openAsTab", "openClassNamed:"]
  1213. }),
  1214. $globals.HLReferencesModel);
  1215. $core.addMethod(
  1216. $core.method({
  1217. selector: "openMethod",
  1218. protocol: "actions",
  1219. fn: function (){
  1220. var self=this,$self=this;
  1221. var browser;
  1222. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  1223. return $core.withContext(function($ctx1) {
  1224. //>>excludeEnd("ctx");
  1225. var $1,$receiver;
  1226. $1=$self._selectedMethod();
  1227. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  1228. $ctx1.sendIdx["selectedMethod"]=1;
  1229. //>>excludeEnd("ctx");
  1230. if(($receiver = $1) == null || $receiver.a$nil){
  1231. return self;
  1232. } else {
  1233. $1;
  1234. }
  1235. $self._withChangesDo_((function(){
  1236. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  1237. return $core.withContext(function($ctx2) {
  1238. //>>excludeEnd("ctx");
  1239. browser=$recv($globals.HLBrowser)._openAsTab();
  1240. browser;
  1241. return $recv(browser)._openMethod_($self._selectedMethod());
  1242. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  1243. }, function($ctx2) {$ctx2.fillBlock({},$ctx1,2)});
  1244. //>>excludeEnd("ctx");
  1245. }));
  1246. return self;
  1247. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  1248. }, function($ctx1) {$ctx1.fill(self,"openMethod",{browser:browser},$globals.HLReferencesModel)});
  1249. //>>excludeEnd("ctx");
  1250. },
  1251. //>>excludeStart("ide", pragmas.excludeIdeData);
  1252. args: [],
  1253. source: "openMethod\x0a\x09| browser |\x0a\x09\x0a\x09self selectedMethod ifNil: [ ^ self ].\x0a\x09\x0a\x09self withChangesDo: [\x0a\x09\x09browser := HLBrowser openAsTab.\x0a\x09\x09browser openMethod: self selectedMethod ]",
  1254. referencedClasses: ["HLBrowser"],
  1255. //>>excludeEnd("ide");
  1256. messageSends: ["ifNil:", "selectedMethod", "withChangesDo:", "openAsTab", "openMethod:"]
  1257. }),
  1258. $globals.HLReferencesModel);
  1259. $core.addMethod(
  1260. $core.method({
  1261. selector: "regexpReferencesOf:",
  1262. protocol: "accessing",
  1263. fn: function (aString){
  1264. var self=this,$self=this;
  1265. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  1266. return $core.withContext(function($ctx1) {
  1267. //>>excludeEnd("ctx");
  1268. return $recv($recv($self._allMethods())._select_((function(each){
  1269. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  1270. return $core.withContext(function($ctx2) {
  1271. //>>excludeEnd("ctx");
  1272. return $recv($recv(each)._source())._match_(aString);
  1273. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  1274. }, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1,1)});
  1275. //>>excludeEnd("ctx");
  1276. })))._collect_((function(each){
  1277. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  1278. return $core.withContext(function($ctx2) {
  1279. //>>excludeEnd("ctx");
  1280. return $self._methodReferenceOn_(each);
  1281. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  1282. }, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1,2)});
  1283. //>>excludeEnd("ctx");
  1284. }));
  1285. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  1286. }, function($ctx1) {$ctx1.fill(self,"regexpReferencesOf:",{aString:aString},$globals.HLReferencesModel)});
  1287. //>>excludeEnd("ctx");
  1288. },
  1289. //>>excludeStart("ide", pragmas.excludeIdeData);
  1290. args: ["aString"],
  1291. source: "regexpReferencesOf: aString\x0a\x09^ (self allMethods select: [ :each |\x0a\x09\x09each source match: aString ])\x0a\x09\x09\x09collect: [ :each | self methodReferenceOn: each ]",
  1292. referencedClasses: [],
  1293. //>>excludeEnd("ide");
  1294. messageSends: ["collect:", "select:", "allMethods", "match:", "source", "methodReferenceOn:"]
  1295. }),
  1296. $globals.HLReferencesModel);
  1297. $core.addMethod(
  1298. $core.method({
  1299. selector: "search:",
  1300. protocol: "actions",
  1301. fn: function (aString){
  1302. var self=this,$self=this;
  1303. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  1304. return $core.withContext(function($ctx1) {
  1305. //>>excludeEnd("ctx");
  1306. var $1,$3,$2;
  1307. $self._updateCaches();
  1308. $1=$self._announcer();
  1309. $3=$recv($globals.HLSearchReferences)._new();
  1310. $recv($3)._searchString_(aString);
  1311. $2=$recv($3)._yourself();
  1312. $recv($1)._announce_($2);
  1313. return self;
  1314. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  1315. }, function($ctx1) {$ctx1.fill(self,"search:",{aString:aString},$globals.HLReferencesModel)});
  1316. //>>excludeEnd("ctx");
  1317. },
  1318. //>>excludeStart("ide", pragmas.excludeIdeData);
  1319. args: ["aString"],
  1320. source: "search: aString\x0a\x09self updateCaches.\x0a\x09\x0a\x09self announcer announce: (HLSearchReferences new\x0a\x09\x09searchString: aString;\x0a\x09\x09yourself)",
  1321. referencedClasses: ["HLSearchReferences"],
  1322. //>>excludeEnd("ide");
  1323. messageSends: ["updateCaches", "announce:", "announcer", "searchString:", "new", "yourself"]
  1324. }),
  1325. $globals.HLReferencesModel);
  1326. $core.addMethod(
  1327. $core.method({
  1328. selector: "sendersOf:",
  1329. protocol: "accessing",
  1330. fn: function (aString){
  1331. var self=this,$self=this;
  1332. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  1333. return $core.withContext(function($ctx1) {
  1334. //>>excludeEnd("ctx");
  1335. return $recv($recv($self._allMethods())._select_((function(each){
  1336. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  1337. return $core.withContext(function($ctx2) {
  1338. //>>excludeEnd("ctx");
  1339. return $recv($recv(each)._messageSends())._includes_(aString);
  1340. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  1341. }, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1,1)});
  1342. //>>excludeEnd("ctx");
  1343. })))._collect_((function(each){
  1344. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  1345. return $core.withContext(function($ctx2) {
  1346. //>>excludeEnd("ctx");
  1347. return $self._methodReferenceOn_(each);
  1348. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  1349. }, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1,2)});
  1350. //>>excludeEnd("ctx");
  1351. }));
  1352. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  1353. }, function($ctx1) {$ctx1.fill(self,"sendersOf:",{aString:aString},$globals.HLReferencesModel)});
  1354. //>>excludeEnd("ctx");
  1355. },
  1356. //>>excludeStart("ide", pragmas.excludeIdeData);
  1357. args: ["aString"],
  1358. source: "sendersOf: aString\x0a\x09^ (self allMethods select: [ :each |\x0a\x09\x09each messageSends includes: aString ])\x0a\x09\x09\x09collect: [ :each | self methodReferenceOn: each ]",
  1359. referencedClasses: [],
  1360. //>>excludeEnd("ide");
  1361. messageSends: ["collect:", "select:", "allMethods", "includes:", "messageSends", "methodReferenceOn:"]
  1362. }),
  1363. $globals.HLReferencesModel);
  1364. $core.addMethod(
  1365. $core.method({
  1366. selector: "updateCaches",
  1367. protocol: "cache",
  1368. fn: function (){
  1369. var self=this,$self=this;
  1370. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  1371. return $core.withContext(function($ctx1) {
  1372. //>>excludeEnd("ctx");
  1373. $self._updateClassesAndMetaclassesCache();
  1374. $self._updateMethodsCache();
  1375. return self;
  1376. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  1377. }, function($ctx1) {$ctx1.fill(self,"updateCaches",{},$globals.HLReferencesModel)});
  1378. //>>excludeEnd("ctx");
  1379. },
  1380. //>>excludeStart("ide", pragmas.excludeIdeData);
  1381. args: [],
  1382. source: "updateCaches\x0a\x09self \x0a\x09\x09updateClassesAndMetaclassesCache;\x0a\x09\x09updateMethodsCache",
  1383. referencedClasses: [],
  1384. //>>excludeEnd("ide");
  1385. messageSends: ["updateClassesAndMetaclassesCache", "updateMethodsCache"]
  1386. }),
  1387. $globals.HLReferencesModel);
  1388. $core.addMethod(
  1389. $core.method({
  1390. selector: "updateClassesAndMetaclassesCache",
  1391. protocol: "cache",
  1392. fn: function (){
  1393. var self=this,$self=this;
  1394. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  1395. return $core.withContext(function($ctx1) {
  1396. //>>excludeEnd("ctx");
  1397. var $1,$receiver;
  1398. $self["@classesAndMetaclassesCache"]=$recv($globals.OrderedCollection)._new();
  1399. $recv($recv($self._environment())._classes())._do_((function(each){
  1400. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  1401. return $core.withContext(function($ctx2) {
  1402. //>>excludeEnd("ctx");
  1403. $recv($self["@classesAndMetaclassesCache"])._add_(each);
  1404. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  1405. $ctx2.sendIdx["add:"]=1;
  1406. //>>excludeEnd("ctx");
  1407. $1=$recv(each)._theMetaClass();
  1408. if(($receiver = $1) == null || $receiver.a$nil){
  1409. return $1;
  1410. } else {
  1411. var meta;
  1412. meta=$receiver;
  1413. return $recv($self["@classesAndMetaclassesCache"])._add_(meta);
  1414. }
  1415. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  1416. }, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1,1)});
  1417. //>>excludeEnd("ctx");
  1418. }));
  1419. return self;
  1420. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  1421. }, function($ctx1) {$ctx1.fill(self,"updateClassesAndMetaclassesCache",{},$globals.HLReferencesModel)});
  1422. //>>excludeEnd("ctx");
  1423. },
  1424. //>>excludeStart("ide", pragmas.excludeIdeData);
  1425. args: [],
  1426. source: "updateClassesAndMetaclassesCache\x0a\x09classesAndMetaclassesCache := OrderedCollection new.\x0a\x09\x0a\x09self environment classes do: [ :each |\x0a\x09\x09classesAndMetaclassesCache add: each.\x0a\x09\x09each theMetaClass ifNotNil: [ :meta | classesAndMetaclassesCache add: meta ] ]",
  1427. referencedClasses: ["OrderedCollection"],
  1428. //>>excludeEnd("ide");
  1429. messageSends: ["new", "do:", "classes", "environment", "add:", "ifNotNil:", "theMetaClass"]
  1430. }),
  1431. $globals.HLReferencesModel);
  1432. $core.addMethod(
  1433. $core.method({
  1434. selector: "updateMethodsCache",
  1435. protocol: "cache",
  1436. fn: function (){
  1437. var self=this,$self=this;
  1438. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  1439. return $core.withContext(function($ctx1) {
  1440. //>>excludeEnd("ctx");
  1441. $self["@methodsCache"]=$recv($globals.OrderedCollection)._new();
  1442. $recv($self._classesAndMetaclasses())._do_((function(each){
  1443. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  1444. return $core.withContext(function($ctx2) {
  1445. //>>excludeEnd("ctx");
  1446. return $recv($self["@methodsCache"])._addAll_($recv(each)._methods());
  1447. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  1448. }, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1,1)});
  1449. //>>excludeEnd("ctx");
  1450. }));
  1451. return self;
  1452. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  1453. }, function($ctx1) {$ctx1.fill(self,"updateMethodsCache",{},$globals.HLReferencesModel)});
  1454. //>>excludeEnd("ctx");
  1455. },
  1456. //>>excludeStart("ide", pragmas.excludeIdeData);
  1457. args: [],
  1458. source: "updateMethodsCache\x0a\x09methodsCache := OrderedCollection new.\x0a\x09\x0a\x09self classesAndMetaclasses\x0a\x09\x09do: [ :each | methodsCache addAll: each methods ]",
  1459. referencedClasses: ["OrderedCollection"],
  1460. //>>excludeEnd("ide");
  1461. messageSends: ["new", "do:", "classesAndMetaclasses", "addAll:", "methods"]
  1462. }),
  1463. $globals.HLReferencesModel);
  1464. });