Sha256: 23d360ab2dca482f5a45cc829d3d79338c0feb87bc5655177935ebb25a86798e
Contents?: true
Size: 875 Bytes
Versions: 84
Compression:
Stored size: 875 Bytes
Contents
# frozen_string_literal: true module PlutoniumGenerators module Concerns module Serializer private def serialize_value(value) case value when Symbol ":#{value}" when String serialize_string value when Integer, Float, BigDecimal serialize_number value when Enumerable serialize_enumerable value when nil "nil" else # debug "Unable to serialize a value '#{value}:#{value.class}'" value end end def serialize_string(value) "'#{value.gsub("'", "\\\\'")}'" end def serialize_number(num) num.to_s.gsub(/(\d)(?=(\d\d\d)+(?!\d))/, '\\1_') end def serialize_enumerable(enum) "[#{enum.entries.map { |val| serialize_value val }.join ", "}]" end end end end
Version data entries
84 entries across 84 versions & 1 rubygems