Module | Rails::Generator::Options::ClassMethods |
In: |
vendor/rails/railties/lib/rails_generator/options.rb
|
# File vendor/rails/railties/lib/rails_generator/options.rb, line 30 30: def default_options(options = nil) 31: if options 32: write_inheritable_attribute(:default_options, options) 33: else 34: read_inheritable_attribute(:default_options) or write_inheritable_attribute(:default_options, {}) 35: end 36: end
Merge together our class options. In increasing precedence:
default_options (class default options) runtime_options (provided as argument) mandatory_options (class mandatory options)
# File vendor/rails/railties/lib/rails_generator/options.rb, line 42 42: def full_options(runtime_options = {}) 43: default_options.merge(runtime_options).merge(mandatory_options) 44: end
# File vendor/rails/railties/lib/rails_generator/options.rb, line 17 17: def inherited_with_options(sub) 18: inherited_without_options(sub) if respond_to?(:inherited_without_options) 19: sub.extend(Rails::Generator::Options::ClassMethods) 20: end
# File vendor/rails/railties/lib/rails_generator/options.rb, line 22 22: def mandatory_options(options = nil) 23: if options 24: write_inheritable_attribute(:mandatory_options, options) 25: else 26: read_inheritable_attribute(:mandatory_options) or write_inheritable_attribute(:mandatory_options, {}) 27: end 28: end