blob: 61924ab7ffa49f4483d8fdfecd51e2c7b85f8eeb [file] [log] [blame]
// Copyright 2020 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#ifndef CONTENT_PUBLIC_BROWSER_INSTALLABILITY_ERROR_H_
#define CONTENT_PUBLIC_BROWSER_INSTALLABILITY_ERROR_H_
#include <ostream>
#include <string>
#include <vector>
#include "content/common/content_export.h"
namespace content {
struct CONTENT_EXPORT InstallabilityErrorArgument {
InstallabilityErrorArgument() = default;
InstallabilityErrorArgument(std::string name, std::string value);
bool operator==(const InstallabilityErrorArgument& other) const;
~InstallabilityErrorArgument();
std::string name;
std::string value;
};
struct CONTENT_EXPORT InstallabilityError {
InstallabilityError();
explicit InstallabilityError(std::string error_id);
InstallabilityError(const InstallabilityError& other);
InstallabilityError(InstallabilityError&& other);
bool operator==(const InstallabilityError& other) const;
~InstallabilityError();
std::string error_id;
std::vector<InstallabilityErrorArgument> installability_error_arguments;
};
CONTENT_EXPORT std::ostream& operator<<(std::ostream& os,
const InstallabilityError& error);
} // namespace content
#endif // CONTENT_PUBLIC_BROWSER_INSTALLABILITY_ERROR_H_