class ActionDispatch::FileHandler

def try_precompressed_files(filepath, headers, accept_encoding:)

Experimental RBS support (using type sampling data from the type_fusion project).

def try_precompressed_files: (String filepath, Hash headers, accept_encoding: Array[Array, String, Float]) -> untyped

This signature was generated using 1 sample from 1 application.

def try_precompressed_files(filepath, headers, accept_encoding:)
  each_precompressed_filepath(filepath) do |content_encoding, precompressed_filepath|
    if file_readable? precompressed_filepath
      # Identity encoding is default, so we skip Accept-Encoding
      # negotiation and needn't set Content-Encoding.
      #
      # Vary header is expected when we've found other available
      # encodings that Accept-Encoding ruled out.
      if content_encoding == "identity"
        return precompressed_filepath, headers
      else
        headers["Vary"] = "Accept-Encoding"
        if accept_encoding.any? { |enc, _| /\b#{content_encoding}\b/i.match?(enc) }
          headers["Content-Encoding"] = content_encoding
          return precompressed_filepath, headers
        end
      end
    end
  end
end