Class: HumanAttributes::FormattersBuilder
- Inherits:
-
Object
- Object
- HumanAttributes::FormattersBuilder
- Includes:
- Config
- Defined in:
- lib/human_attributes/formatters_builder.rb
Constant Summary
Constants included from Config
Instance Method Summary collapse
- #build ⇒ Object
-
#initialize(attributes, config) ⇒ FormattersBuilder
constructor
A new instance of FormattersBuilder.
Methods included from Config
#category_by_type, #formatter_by_type, #known_type?, #raise_error, #suffix_by_type, #type_config
Constructor Details
#initialize(attributes, config) ⇒ FormattersBuilder
Returns a new instance of FormattersBuilder.
5 6 7 8 9 |
# File 'lib/human_attributes/formatters_builder.rb', line 5 def initialize(attributes, config) raise_error('InvalidHumanizeConfig') unless config.is_a?(Hash) @attributes = attributes @config = config end |
Instance Method Details
#build ⇒ Object
11 12 13 14 15 16 17 18 19 20 21 22 23 |
# File 'lib/human_attributes/formatters_builder.rb', line 11 def build formatters = [] get_types(@config).each do |type| raise_error('InvalidType') unless known_type?(type) = (@config[type]) formatters << @attributes.map do |attribute| formatter_class(type).new(attribute, type, ) end end formatters.flatten end |