module Ariadne::Yard::DocsHelper
def one_of(enumerable, lower: false, sort: false)
def one_of(enumerable, lower: false, sort: false) # Sort the array if requested if sort && !enumerable.nil? enumerable = enumerable.sort do |a, b| a.instance_of?(b.class) ? a <=> b : a.class.to_s <=> b.class.to_s end end values = case enumerable when Hash enumerable.map do |key, value| "#{pretty_value(key)} (#{pretty_value(value)})" end else enumerable.map do |key| pretty_value(key) end end prefix = "One of" prefix = prefix.downcase if lower "#{prefix} #{values.to_sentence(two_words_connector: " or ", last_word_connector: ", or ")}." end