class AocCli::Interface::Args
Attributes
args[R]
cmd[R]
Public Class Methods
new()
click to toggle source
# File lib/aoc_cli/interface.rb, line 24 def initialize @args = {} end
Public Instance Methods
parse()
click to toggle source
# File lib/aoc_cli/interface.rb, line 27 def parse while ARGV.size > 0 case ARGV.shift when "-a", "--attempts" @cmd = :AttemptsTable when "-B", "--browser" @cmd = :OpenReddit args[:browser] = true when "-c", "--simple-cal" @cmd = :CalendarTable when "-C", "--fancy-cal" @cmd = :PrintCal when "-d", "--init-day" @cmd = :DayInit args[:day] = Validate.day(ARGV.shift.to_i) when "-D", "--day" args[:day] = ARGV.shift.to_i when "-G", "--gen-config" @cmd = :GenerateConfig when "-h", "--help" exit Help.print when "-k", "--key" @cmd = :KeyStore args[:key] = Validate.set_key(ARGV.shift) when "-p", "--part" args[:part] = ARGV.shift.to_i when "-r", "--refresh" @cmd = :Refresh when "-R", "--reddit" @cmd = :OpenReddit when "-s", "--solve" @cmd = :DaySolve args[:ans] = ARGV.shift when "-S", "--stats" @cmd = :StatsTable when "-u", "--user" args[:user] = ARGV.shift when "-U", "--default" @cmd = :DefaultAlias args[:user] = ARGV.shift when "-v", "--version" abort "aoc-cli(#{VERSION})" when "-y", "--init-year" @cmd = :YearInit args[:year] = Validate.year(ARGV.shift.to_i) when "-Y", "--year" args[:year] = ARGV.shift.to_i else raise Errors::FlagInv end end self end