# File lib/adhearsion/voip/asterisk/config_generators/config_generator.rb, line 69 def one_of(criteria, options) cache = options.delete(:with) || properties options.each_pair do |key, value| search = !criteria.find { |criterion| criterion === value }.nil? unless search msg = "Didn't recognize #{value.inspect}! Must be one of " + criteria.map(&:inspect).to_sentence raise ArgumentError, msg end cache[key] = [true, false].include?(value) ? boolean_to_yes_no(value) : value end end