Rubysonar是Ruby的语义索引器,它确实可以推断出类型的分解分析。它是为代码搜索站点源图提供动力的基础技术之一。
Rubysonar以Pysonar2的形式进行建模,Pysonar2对Python进行了类似的分析,并已通过SourceGraph和Google使用。要了解其技术属性,请参阅我的博客文章:
mvn package
Rubysonar使用irb解释器来解析Ruby代码,因此请确保已安装并通过PATH环境变量指向。
Rubysonar主要设计为用于IDE和其他开发人员工具的库,因此其界面可能不像最终用户工具那样吸引人,但是为了理解库的功能,已经构建了一个相当不错的演示程序。
您可以使用以下命令行构建Ruby代码的简单“代码浏览器”:
java -jar target/rubysonar-0.1-SNAPSHOT.jar /path/to/project ./html
这将需要几分钟。在此过程之后,您应该在HTML目录内找到一些交互式HTML文件。
Rubysonar- Ruby的高级语义索引器
版权(C)2013-2019 Yin Wang
如果满足以下条件:
源代码的再分配必须保留上述版权通知,此条件列表和以下免责声明。
二进制形式的重新分配必须复制上述版权通知,此条件列表以及文档和/或分发提供的其他材料中的以下免责声明。
未经特定事先书面许可,作者的名称不可用来认可或推广从该软件中得出的产品。
该软件由作者提供``原样''提供,任何明示或暗示的担保,包括但不限于对特定目的的适销性和适合性的隐含保证。在任何情况下,作者均不应对任何直接,偶然,特殊,特殊,示例性或结果损害均承担任何责任(包括但不限于替代商品或服务的采购,损失,数据或利润的损失,数据或利润;或业务中断;或造成责任理论,无论是在合同,责任,包括侵权行为的情况下,是否有任何可能的责任理论,无论是否存在,或者在任何情况下都存在任何可能的情况,并且在任何情况下都存在任何可能的方式,并且在任何情况下都存在任何可能的方式,并且存在任何可能存在的责任。 损害。