# File lib/typed-array.rb, line 29 def restricted_types(*types) @_restricted_types ||= [] types.each do |type| raise UnexpectedTypeException.new([Class],type.class) unless type.is_a? Class @_restricted_types << type unless @_restricted_types.include? type _subclasses.each do |subclass| subclass.restricted_types type end end @_restricted_types end