Sha256: c01fec0fb42ebb37c2dfd971e5eb61ec972cfc544fccaf9b8451917b60a91388
Contents?: true
Size: 649 Bytes
Versions: 10
Compression:
Stored size: 649 Bytes
Contents
# frozen_string_literal: true module Temple module Filters # Try to encode input string # # @api public class Encoding < Parser define_options encoding: 'utf-8' def call(s) if options[:encoding] && s.respond_to?(:encoding) old_enc = s.encoding s = s.dup if s.frozen? s.force_encoding(options[:encoding]) # Fall back to old encoding if new encoding is invalid unless s.valid_encoding? s.force_encoding(old_enc) s.force_encoding(::Encoding::BINARY) unless s.valid_encoding? end end s end end end end
Version data entries
10 entries across 9 versions & 3 rubygems