module Solargraph::Source::EncodingFixes

def normalize string

Returns:
  • (String) -

Parameters:
  • string (String) --
def normalize string
  begin
    string.dup.force_encoding('UTF-8')
  rescue ::Encoding::CompatibilityError, ::Encoding::UndefinedConversionError, ::Encoding::InvalidByteSequenceError => e
    # @todo Improve error handling

    Solargraph::Logging.logger.warn "Normalize error: #{e.message}"
    string
  end
end