// Copyright (c) Microsoft Corporation.
// Licensed under the MIT License.
use Allocator;
use crateArena;
use crateFromIteratorIn;
/// Extension trait on iterators that lets you collect directly into an
/// arena-backed collection.
///
/// Blanket-implemented for every `IntoIterator`. Usage typically annotates
/// the result type so the compiler picks the right `C`:
///
/// ```
/// use multitude::Arena;
/// use multitude::vec::{CollectIn, Vec};
///
/// let arena = Arena::new();
/// let v: Vec<u32, _> = (1..=10).collect_in(&arena);
/// assert_eq!(v.len(), 10);
/// ```