diff options
| author | Felix Morgner <felix.morgner@ost.ch> | 2026-03-19 15:08:39 +0100 |
|---|---|---|
| committer | Felix Morgner <felix.morgner@ost.ch> | 2026-03-19 15:08:39 +0100 |
| commit | 6c9e50bee8362bd87c66ee10c253d94a78e1459c (patch) | |
| tree | 2872785cf6a6ce31ef04bc8d32ffb8381ff85841 /libs | |
| parent | c2ba7be0e1e84752d21abdcb4ec4f9df444bc367 (diff) | |
| download | teachos-6c9e50bee8362bd87c66ee10c253d94a78e1459c.tar.xz teachos-6c9e50bee8362bd87c66ee10c253d94a78e1459c.zip | |
kstd/vector: add deduction guides
Diffstat (limited to 'libs')
| -rw-r--r-- | libs/kstd/include/kstd/vector | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/libs/kstd/include/kstd/vector b/libs/kstd/include/kstd/vector index f8e9ce2..79530d2 100644 --- a/libs/kstd/include/kstd/vector +++ b/libs/kstd/include/kstd/vector @@ -743,6 +743,16 @@ namespace kstd return std::lexicographical_compare_three_way(lhs.begin(), lhs.end(), rhs.begin(), rhs.end()); } + //! Deduction guide for vector construction from an interator pair. + template<std::forward_iterator ForwardIterator, + typename Allocator = kstd::allocator<typename std::iterator_traits<ForwardIterator>::value_type>> + vector(ForwardIterator, ForwardIterator, Allocator = Allocator()) + -> vector<typename std::iterator_traits<ForwardIterator>::value_type, Allocator>; + + //! Deduction guide for vector construction from a range. + template<std::ranges::input_range Range, typename Allocator = kstd::allocator<std::ranges::range_value_t<Range>>> + vector(kstd::from_range_t, Range &&, Allocator = Allocator()) -> vector<std::ranges::range_value_t<Range>, Allocator>; + } // namespace kstd #endif |
