class Bundler::Molinillo::Resolver::Resolution

def group_possibilities(possibilities)

Returns:
  • (Array) - an array of possibility sets

Parameters:
  • possibilities (Array) -- an array of possibilities
def group_possibilities(possibilities)
  possibility_sets = []
  current_possibility_set = nil
  possibilities.reverse_each do |possibility|
    dependencies = dependencies_for(possibility)
    if current_possibility_set && dependencies_equal?(current_possibility_set.dependencies, dependencies)
      current_possibility_set.possibilities.unshift(possibility)
    else
      possibility_sets.unshift(PossibilitySet.new(dependencies, [possibility]))
      current_possibility_set = possibility_sets.first
    end
  end
  possibility_sets
end