// AUTOGENERATED BY glean_parser. DO NOT EDIT.
/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
#ifndef mozilla_GleanShellMetrics_h
#define mozilla_GleanShellMetrics_h
#include "mozilla/glean/bindings/MetricTypes.h"
namespace mozilla::glean {
namespace custom_icon {
/**
* generated from custom_icon.changed
*/
struct ChangedExtra {
mozilla::Maybe<nsCString> iconId;
std::tuple<nsTArray<nsCString>, nsTArray<nsCString>> ToFfiExtra() const {
nsTArray<nsCString> extraKeys;
nsTArray<nsCString> extraValues;
if (iconId) {
extraKeys.AppendElement()->AssignASCII("icon_id");
extraValues.EmplaceBack(iconId.value());
}
return std::make_tuple(std::move(extraKeys), std::move(extraValues));
}
};
/**
* Recorded when a user changes the current browser icon to something new.
*/
constexpr impl::EventMetric<ChangedExtra> changed(1001);
/**
* generated from custom_icon.current
* The ID of the current browser icon, recorded once at startup.
*/
constexpr impl::StringMetric current(1002);
}
} // namespace mozilla::glean
#endif // mozilla_GleanShellMetrics_h