8.10. Prezentowanie obiektu w postaci czytelnej dla człowieka
Problem
Chcemy uzyskać naturalnie wyglądającą reprezentację obiektu.
Rozwiązanie
W większości przypadków metoda Object#inspect
znakomicie spełnia to zadanie, dając obraz obiektu często czytelniejszy niż prosta konwersja na łańcuch.
a = [1,2,3] puts a # 1 # 2 # 3 puts a.to_s # 123 puts a.inspect # [1, 2, 3] puts /foo/ # (?-mix:foo) puts /foo/.inspect # /foo/ f = File.open('foo', 'a') puts f # #<File:0x82b9320> puts f.inspect # #<File:foo>
Dyskusja
Nawet najbardziej złożonym strukturom danych można nadać wygląd zbliżony do kodu źródłowego, definiującego te struktury w języku Ruby. Często wynik produkowany przez metodę inspect
nadaje się wprost do odtworzenia obiektu, ...
Get Ruby. Receptury now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.