class Kanade::Converter::Symbol
Public Instance Methods
deserialize(term, field_info)
click to toggle source
# File lib/kanade/converter/symbol.rb, line 14 def deserialize(term, field_info) # TODO WARNING: This is not thread safe! # Consider moving this into field definition instead build_field_info(field_info) if field_info.options[:mapping_inverted].nil? return nil if term.nil? inv = field_info.options[:mapping_inverted][term] return inv unless inv.nil? # TODO use contract! term.to_s.downcase.to_sym end
serialize(term, field_info)
click to toggle source
# File lib/kanade/converter/symbol.rb, line 6 def serialize(term, field_info) return nil if term.nil? map = field_info.options[:mapping] map_entry = map[term] unless map.nil? return map_entry unless map_entry.nil? term.to_s.upcase end
Private Instance Methods
build_field_info(fi)
click to toggle source
# File lib/kanade/converter/symbol.rb, line 30 def build_field_info fi if fi.options[:mapping].nil? inverted = {} else inverted = fi.options[:mapping].invert end fi.options[:mapping_inverted] = inverted end