blob: be836db8fc9708756b1dff7c8fc81d715a33b86b [file] [log] [blame]
// Copyright (c) 2017 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#ifndef QUICHE_QUIC_PLATFORM_API_QUIC_CONTAINERS_H_
#define QUICHE_QUIC_PLATFORM_API_QUIC_CONTAINERS_H_
#include "net/quic/platform/impl/quic_containers_impl.h"
namespace quic {
// A vector optimized for small sizes. Provides the same APIs as a std::vector.
template <typename T, size_t N, typename A = std::allocator<T>>
using QuicInlinedVector = QuicInlinedVectorImpl<T, N, A>;
// An ordered container optimized for small sets.
// An implementation with O(n) mutations might be chosen
// in case it has better memory usage and/or faster access.
//
// DOES NOT GUARANTEE POINTER OR ITERATOR STABILITY!
template <typename Key, typename Compare = std::less<Key>>
using QuicSmallOrderedSet = QuicSmallOrderedSetImpl<Key, Compare>;
} // namespace quic
#endif // QUICHE_QUIC_PLATFORM_API_QUIC_CONTAINERS_H_