Sha256: 94976fa80546b2fa3e9555fe2014ec3002980cc5ea624e6eb0c3883f146445eb
Contents?: true
Size: 822 Bytes
Versions: 3
Compression:
Stored size: 822 Bytes
Contents
# frozen_string_literal: true module Decanter module Parser module Utils # extract string transformation strategies def symbol_to_string(klass_or_sym) if singular_class_present?(klass_or_sym) singularize_and_camelize_str(klass_or_sym) else camelize_str(klass_or_sym) end end def singular_class_present?(klass_or_sym) parser_str = singularize_and_camelize_str(klass_or_sym) concat_str(parser_str).safe_constantize.present? end def singularize_and_camelize_str(klass_or_sym) klass_or_sym.to_s.singularize.camelize end def camelize_str(klass_or_sym) klass_or_sym.to_s.camelize end def concat_str(parser_str) 'Decanter::Parser::' + parser_str end end end end
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
decanter-2.1.2 | lib/decanter/parser/utils.rb |
decanter-2.1.1 | lib/decanter/parser/utils.rb |
decanter-2.1.0 | lib/decanter/parser/utils.rb |