A simple generic implementation of weighted ranking.
let allPizzas: [Pizza] = model.allPizzas()
let rankedPizzas = Ranking.ranked(items: allPizzas, scorer: PizzaScorer())Business logic for scoring each dimension of a pizza is injected via PizzaScorer in Example.swift
Just copy/paste WeightedRanking.swift and have a great day.