Class: ActiveGenie::Ranker::Scoring

Inherits:
Object
  • Object
show all
Defined in:
lib/active_genie/ranker/scoring.rb

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(players, criteria, juries: [], config: nil) ⇒ Scoring

Returns a new instance of Scoring.



12
13
14
15
16
17
# File 'lib/active_genie/ranker/scoring.rb', line 12

def initialize(players, criteria, juries: [], config: nil)
  @players = Entities::Players.new(players)
  @criteria = criteria
  @initial_config = config
  @juries = Array(juries).compact.uniq
end

Class Method Details

.callObject



8
9
10
# File 'lib/active_genie/ranker/scoring.rb', line 8

def self.call(...)
  new(...).call
end

Instance Method Details

#callObject



19
20
21
22
23
# File 'lib/active_genie/ranker/scoring.rb', line 19

def call
  ActiveGenie::FiberByBatch.call(players_without_score, config:) do |player|
    player.score = generate_score(player)
  end
end