// Copyright 2024 The Chromium Authors // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. #ifndef BASE_CONTAINERS_SPAN_OR_SIZE_H_ #define BASE_CONTAINERS_SPAN_OR_SIZE_H_ #include <stddef.h> #include <variant> #include "base/containers/span.h" #include "base/functional/overloaded.h" #include "base/types/optional_ref.h" namespace base { // `SpanOrSize<T>` contains either a `span<T>` or just the size of data. This // is useful if the data is not retained in some scenarios, but size needs to be // available in all the scenarios. template <typename T> class SpanOrSize { … }; } // namespace base #endif // BASE_CONTAINERS_SPAN_OR_SIZE_H_