Module: Julewire::Core::Serialization::EncodingSanitizer
- Defined in:
- lib/julewire/core/serialization/encoding_sanitizer.rb
Class Method Summary collapse
Class Method Details
.call(value) ⇒ Object
8 9 10 11 12 13 14 15 16 17 |
# File 'lib/julewire/core/serialization/encoding_sanitizer.rb', line 8 def call(value) raise TypeError, "value must be a String" unless value.is_a?(String) return value if valid_utf8?(value) || valid_ascii_only?(value) return value.scrub("?") if utf8?(value) encode_utf8(value) rescue EncodingError encode_utf8(value.b.force_encoding(Encoding::UTF_8)) end |