Module: Decanter::ValueParser

Defined in:
lib/decanter/value_parser.rb,
lib/decanter/value_parser/base.rb,
lib/decanter/value_parser/core.rb,
lib/decanter/value_parser/date_parser.rb,
lib/decanter/value_parser/join_parser.rb,
lib/decanter/value_parser/float_parser.rb,
lib/decanter/value_parser/phone_parser.rb,
lib/decanter/value_parser/string_parser.rb,
lib/decanter/value_parser/boolean_parser.rb,
lib/decanter/value_parser/integer_parser.rb,
lib/decanter/value_parser/datetime_parser.rb,
lib/decanter/value_parser/key_value_splitter_parser.rb

Defined Under Namespace

Modules: Core Classes: Base, BooleanParser, DateParser, DateTimeParser, FloatParser, IntegerParser, JoinParser, KeyValueSplitterParser, PhoneParser, StringParser

Constant Summary collapse

@@value_parsers =
{}

Class Method Summary collapse

Class Method Details

.register(value_parser) ⇒ Object



5
6
7
# File 'lib/decanter/value_parser.rb', line 5

def self.register(value_parser)
  @@value_parsers[value_parser.name.demodulize] = value_parser
end

.value_parser_for(sym) ⇒ Object



9
10
11
# File 'lib/decanter/value_parser.rb', line 9

def self.value_parser_for(sym)
  @@value_parsers["#{sym.to_s.camelize}Parser"] || (raise NameError.new("unknown value parser #{sym.to_s.capitalize}Parser"))
end