module TTY::Option::ParamPermitted

def call(param, value)

Other tags:
    Api: - public
def call(param, value)
  return Result.success(value) if !param.permit? || value.nil?
  unpermitted = Array(value) - Array(param.permit)
  if unpermitted.empty?
    Result.success(value)
  else
    Result.failure(unpermitted.map do |val|
      UnpermittedArgument.new(param, val)
    end)
  end
end