Class: T::Struct

Inherits:
InexactStruct
  • Object
show all
Defined in:
lib/types/struct.rb

Class Method Summary collapse

Class Method Details

.inherited(subclass) ⇒ Object



11
12
13
14
15
16
17
18
# File 'lib/types/struct.rb', line 11

def self.inherited(subclass)
  super(subclass)
  original_method = subclass.singleton_class.instance_method(:inherited)
  T::Private::ClassUtils.replace_method(original_method, subclass.singleton_class, :inherited) do |s|
    super(s)
    raise "#{self.name} is a subclass of T::Struct and cannot be subclassed"
  end
end