Project

General

Profile

Actions

Bug #21392

closed

Data classes do not allow overriding #inspect

Added by austin (Austin Ziegler) 5 days ago. Updated 1 day ago.

Status:
Closed
Target version:
-
[ruby-core:122369]

Description

I'm preparing a new version of Color and I have decided to make all of the colour classes Data classes. However, it does not appear that #inspect can be overridden:

module Color
  CIELAB = Data.define(:l, :a, :b) do
    def inspect
      "CIELAB [%.4f%% %.4f %.4f]" % [l, a, b]
    end
  end
end

p Color::CIELAB[1,2,3]
# Expected => CIELAB[1.000% 2.000 3.000]
# Actual #<data Color::CIELAB l=10, a=-125.0, b=20.5>

This feels like it should be permitted.

Actions

Also available in: Atom PDF

Like0
Like0Like0Like0Like0Like0Like0Like0