1
我從瞭解計算書以下代碼。目的是改變inspect
的行爲。撬查方法不起作用
class Number < Struct.new(:value)
def inspect
"<<#{self}>>"
end
def to_s
value.to_s
end
end
它按預期工作當我使用irb
:
irb(main):014:0> Number.new(1)
=> <<1>>
但它沒有當我使用pry
:
[8] pry(main)> n = Number.new(1)
=> #<struct Number value=1>
撬是0.10.3版本上的Ruby 2.0。 0。爲什麼它不起作用?
完美的作品 - 謝謝! – evolution
修改所有對象的打印行爲(並且失去所有Pry的漂亮打印)似乎是一種恥辱,只是爲了獲得一個類的行爲。根據鏈接到的文檔,不會將該類添加到「Pry.config.prompt_safe_objects」中,從而在沒有不幸副作用的情況下完成同樣的任務? –