class ActiveSupport::InheritableOptions
Наследуемые опции
InheritableOptions предоставляет конструктор для создания хеша OrderedOptions, унаследованного от другого хеша.
Используйте этот класс, если у вас уже есть хеш, и вы хотите создать новый на его основе.
h = ActiveSupport::InheritableOptions.new({ girl: 'Mary', boy: 'John' })
h.girl # => 'Mary'
h.boy # => 'John'
Если существующий хеш имеет строковые ключи, вызовите Hash#symbolize_keys для него.
h = ActiveSupport::InheritableOptions.new({ 'girl' => 'Mary', 'boy' => 'John' }.symbolize_keys)
h.girl # => 'Mary'
h.boy # => 'John'
Публичные методы класса
# File activesupport/lib/active_support/ordered_options.rb, line 94
def initialize(parent = nil)
if parent.kind_of?(OrderedOptions)
# use the faster _get when dealing with OrderedOptions
super() { |h, k| parent._get(k) }
elsif parent
super() { |h, k| parent[k] }
else
super()
end
end Вызывает метод родительского класса
Публичные методы экземпляра
# File activesupport/lib/active_support/ordered_options.rb, line 105 def inheritable_copy self.class.new(self) end
© 2004–2021 David Heinemeier Hansson
Licensed under the MIT License.