blob: 18a9fe65329eff00c12a02621bab2c6caf7933f1 [file] [log] [blame]
// Copyright 2021 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_BROWSER_ATTRIBUTION_REPORTING_ATTRIBUTION_INTERNALS_MOJOM_TRAITS_H_
#define CONTENT_BROWSER_ATTRIBUTION_REPORTING_ATTRIBUTION_INTERNALS_MOJOM_TRAITS_H_
#include <stdint.h>
#include "content/browser/attribution_reporting/attribution_internals.mojom.h"
#include "content/browser/attribution_reporting/attribution_report.h"
#include "mojo/public/cpp/bindings/struct_traits.h"
namespace mojo {
template <>
class StructTraits<attribution_internals::mojom::ReportIDDataView,
content::AttributionReport::Id> {
public:
static int64_t value(const content::AttributionReport::Id& id) { return *id; }
static bool Read(attribution_internals::mojom::ReportIDDataView data,
content::AttributionReport::Id* out) {
*out = content::AttributionReport::Id(data.value());
return true;
}
};
} // namespace mojo
#endif // CONTENT_BROWSER_ATTRIBUTION_REPORTING_ATTRIBUTION_INTERNALS_MOJOM_TRAITS_H_