0

在实现 Origen::Parameters 时,我了解定义“默认”集的重要性。但是,从本质上讲,我真正的默认值被命名为不同的东西。所以我实现了一个参数别名的破解:

Origen.top_level.define_params :default do |params|
  params.tconds.override = 1
  params.tconds.override_lev_equ_set = 1
  params.tconds.override_lev_spec_set = 1
  params.tconds.override_levset = 1
  params.tconds.override_seqlbl = 'my_pattern'
  params.tconds.override_testf = 'tm_3'
  params.tconds.override_tim_spec_set = 'bist_xxMhz'
  params.tconds.override_timset = '1,1,1,1,1,1,1,1'
  params.tconds.site_control = 'parallel:'
  params.tconds.site_match = 2
end

Origen.top_level.define_params :cpu_mbist_hr, inherit: :default do |params|
 #  way of aliasing parameter names
end

是否有没有记录的参数别名的正确方法?

4

1 回答 1

0

目前没有其他方法可以做到这一点,尽管我愿意接受 PR 来启用类似的功能:

default_params = :cpu_mbist_hr

但是,如果您不希望:default在这种情况下调用它们,那么也许您真的不希望它们成为默认值。例如,在您定义它们之后立即添加它会有效地为您提供一个替代默认值,并且将完成与上面建议的 API 几乎相同的工作:

# self is required here to help Ruby know that you are calling the params= API
# and not defining a local variable called params
self.params = :cpu_mbist_hr
于 2017-08-30T11:41:08.910 回答