1// Copyright 2013 The Chromium Authors. All rights reserved.
2// Use of this source code is governed by a BSD-style license that can be
3// found in the LICENSE file.
4
5#ifndef COMPONENTS_AUTOFILL_CORE_COMMON_FORM_DATA_PREDICTIONS_H__
6#define COMPONENTS_AUTOFILL_CORE_COMMON_FORM_DATA_PREDICTIONS_H__
7
8#include <string>
9#include <vector>
10
11#include "components/autofill/core/common/form_data.h"
12#include "components/autofill/core/common/form_field_data_predictions.h"
13
14namespace autofill {
15
16// Holds information about a form to be filled and/or submitted.
17struct FormDataPredictions {
18  // Data for this form.
19  FormData data;
20  // The form signature for communication with the crowdsourcing server.
21  std::string signature;
22  // The experiment id for the server predictions.
23  std::string experiment_id;
24  // The form fields and their predicted field types.
25  std::vector<FormFieldDataPredictions> fields;
26
27  FormDataPredictions();
28  FormDataPredictions(const FormDataPredictions& other);
29  ~FormDataPredictions();
30
31  // Added for the sake of testing.
32  bool operator==(const FormDataPredictions& predictions) const;
33  bool operator!=(const FormDataPredictions& predictions) const;
34};
35
36}  // namespace autofill
37
38#endif  // COMPONENTS_AUTOFILL_CORE_COMMON_FORM_DATA_PREDICTIONS_H__
39