Module: Jekyll::Favicon::Utils::Configuration::Patch
- Included in:
- Jekyll::Favicon::Utils
- Defined in:
- lib/jekyll/favicon/utils/configuration/patch.rb
Overview
Favicon configuration patch logic
Defined Under Namespace
Modules: ClassMethods
Class Method Summary collapse
- .included(klass) ⇒ Object
- .patch_array(values, &block) ⇒ Object
- .patch_hash(values, &block) ⇒ Object
- .patch_unknown(value_or_values, &block) ⇒ Object
- .patch_value(value, &block) ⇒ Object
- .patch_value_string_symbol(value) ⇒ Object
Class Method Details
.included(klass) ⇒ Object
9 10 11 |
# File 'lib/jekyll/favicon/utils/configuration/patch.rb', line 9 def self.included(klass) klass.extend(ClassMethods) end |
.patch_array(values, &block) ⇒ Object
23 24 25 |
# File 'lib/jekyll/favicon/utils/configuration/patch.rb', line 23 def self.patch_array(values, &block) values.collect { |value| patch_unknown value, &block } end |
.patch_hash(values, &block) ⇒ Object
27 28 29 |
# File 'lib/jekyll/favicon/utils/configuration/patch.rb', line 27 def self.patch_hash(values, &block) values.transform_values { |value| patch_unknown value, &block } end |
.patch_unknown(value_or_values, &block) ⇒ Object
13 14 15 16 17 18 19 20 21 |
# File 'lib/jekyll/favicon/utils/configuration/patch.rb', line 13 def self.patch_unknown(value_or_values, &block) patch_method = case value_or_values when Array then :patch_array when Hash then :patch_hash when Symbol, String then :patch_value else return value_or_values end send patch_method, value_or_values, &block end |
.patch_value(value, &block) ⇒ Object
31 32 33 |
# File 'lib/jekyll/favicon/utils/configuration/patch.rb', line 31 def self.patch_value(value, &block) block.call patch_value_string_symbol(value) end |
.patch_value_string_symbol(value) ⇒ Object
35 36 37 |
# File 'lib/jekyll/favicon/utils/configuration/patch.rb', line 35 def self.patch_value_string_symbol(value) value.to_s.start_with?(":") ? value[1..].to_sym : value end |