module C4::Model::Refinement::Streak

Public Instance Methods

streak?(value, streak_length) click to toggle source

streak? looks for a streak of the given mark of the given length. Returns true if it finds at least one streak.

# File lib/c4/model/refinement/streak.rb, line 10
def streak?(value, streak_length)
  return false if streak_length <= 0 || streak_length > length

  (0..(length - streak_length)).any? do |idx|
    self[idx, streak_length].all? { |element| element == value }
  end
end