#ifndef MOJO_PUBLIC_CPP_BINDINGS_ARRAY_TRAITS_STL_H_
#define MOJO_PUBLIC_CPP_BINDINGS_ARRAY_TRAITS_STL_H_
#include <array>
#include <map>
#include <set>
#include <type_traits>
#include <unordered_set>
#include "base/containers/flat_set.h"
#include "base/memory/raw_ptr_exclusion.h"
#include "mojo/public/cpp/bindings/array_traits.h"
#include "mojo/public/cpp/bindings/lib/default_construct_tag_internal.h"
namespace mojo {
ArrayTraits<std::unordered_set<T>>;
ArrayTraits<std::set<T>>;
ArrayTraits<base::flat_set<T>>;
template <typename K, typename V>
struct MapValuesArrayView { … };
template <typename K, typename V>
MapValuesArrayView<K, V> MapValuesToArray(const std::map<K, V>& map) { … }
ArrayTraits<MapValuesArrayView<K, V>>;
ArrayTraits<std::array<T, N>>;
}
#endif