Helios-References.js 51 KB

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