class Confinement::Rendering::Guesser

Public Class Methods

new(guessing_registry) click to toggle source
# File lib/confinement.rb, line 537
def initialize(guessing_registry)
  @guessing_registry = guessing_registry
end

Public Instance Methods

call(path) click to toggle source
# File lib/confinement.rb, line 541
def call(path)
  basename = path.basename.to_s
  extensions = basename.split(".")[1..-1]

  extensions.reverse.filter_map do |extension|
    next if !@guessing_registry.key?(extension)

    guess = @guessing_registry[extension]
    guess = guess.call if guess.is_a?(Proc)

    guess
  end
end