class Molinillo::Resolver::Resolution

def attempt_to_swap_possibility

Returns:
  • (Boolean) - Whether the possibility was swapped into {#activated}
def attempt_to_swap_possibility
  swapped = activated.dup
  vertex = swapped.vertex_named(name)
  vertex.payload = possibility
  return unless vertex.requirements.
      all? { |r| requirement_satisfied_by?(r, swapped, possibility) }
  return unless new_spec_satisfied?
  actual_vertex = activated.vertex_named(name)
  actual_vertex.payload = possibility
  fixup_swapped_children(actual_vertex)
  activate_spec
end