我试图找出一个问题,其中Origen导入命令没有加载以前导出的模型。我在导出的rb文件中看到一个模块和一个名为self.extended的方法。import命令正在加载模块,以便我可以手动执行.extended(dut),但不必显式运行它。跟踪导入代码,我看不到扩展方法的调用位置。我的问题是:设计使然。模块导入应该如何工作?应该在哪里调用该扩展方法?
是的,应用程序代码不必不必直接调用扩展方法。
可能是由于此PR的更改引入了此问题?- https://github.com/Origen-SDK/origen/pull/221
对于您的问题,这是扩展被称为的地方-https: //github.com/Origen-SDK/origen/blob/master/lib/origen/model/exporter.rb#L80
但是,它不是直接调用的,扩展是Ruby提供的钩子,只要对象扩展了模块,钩子就会自动调用-https: //www.sitepoint.com/rubys-important-hook-methods/
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句