【问题标题】:Find references to string/symbol/method查找对字符串/符号/方法的引用
【发布时间】:2009-12-11 01:04:15
【问题描述】:

这与 Smalltalk 的 Dolphin 变体有关。

我在图像中四处挖掘以尝试解决这个问题,但还没有 找到正确的方法调用,我希望有人可能是 能够帮助缩短此过程。我想做的是找到 所有方法(在整个系统内,或者最好只是 在单个类中)引用给定的字符串、符号或 方法。我找到了#references 系列方法 SmalltalkSystem,但没有运气弄清楚如何让他们 回馈我想要的东西。

【问题讨论】:

    标签: smalltalk


    【解决方案1】:

    程序化方式,我们开始

    SmalltalkSystem current browseContainingText: 'Dolphin'.
    

    【讨论】:

    • 感谢 Lukas 和 Adrian。这些是很好的建议,但我需要扫描的代码在 BlockClosure 中,最终的解决方案类似于 aBlock 方法 sendMessage: aSymbol 和 aBlock 方法 referToLiteral: aString 非常感谢!
    【解决方案2】:

    我手头没有 Dolphin,但以下代码应该可以在所有具有重构引擎的 Smalltalk 中工作(包括 Dolphin):

    result := BrowserEnvironment new matches: 'Dolphin'.
    

    然后你可以像这样迭代结果:

    result classesAndSelectorsDo: [ :class :selector | ... ].
    

    【讨论】:

      猜你喜欢
      • 2018-05-29
      • 1970-01-01
      • 2020-09-02
      • 2022-01-10
      • 2021-03-06
      • 2012-05-10
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多