Sha256: a754e4c5fd7cd5d47a3746da3cc9f6e8d6053e642c7c093a5433d4b8a9539e45
Contents?: true
Size: 853 Bytes
Versions: 1
Compression:
Stored size: 853 Bytes
Contents
# frozen_string_literal: true module FtcEvent class Alliance attr_reader :event attr_reader :rank def initialize(event, rank) @event = event @rank = rank end def info event.db.query('SELECT * FROM alliances WHERE rank = ?', [rank])&.first end def teams [1, 2, 3].map { |n| info["team#{n}"] }.reject(&:zero?) end def each_team return enum_for(:each_team) unless block_given? teams.each do |team_number| yield event.team(team_number) end nil end def short_team_list each_team.map(&:number).join('/') end def long_team_list each_team.map(&:description).join(' and ') end def short_description "##{rank} #{short_team_list}" end def long_description "##{rank} #{long_team_list}" end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
ftc_event-0.1.1 | lib/ftc_event/alliance.rb |