# File lib/thor/shell/basic.rb, line 377 def ask_filtered(statement, answer_set, *args) correct_answer = nil until correct_answer answer = ask_simply("#{statement} #{answer_set.inspect}", *args) correct_answer = answer_set.include?(answer) ? answer : nil answers = answer_set.map(&:inspect).join(", ") say("Your response must be one of: [#{answers}]. Please try again.") unless correct_answer end correct_answer end