30#ifndef _INITIALIZER_LIST
31#define _INITIALIZER_LIST
34#pragma GCC system_header
37#if __cplusplus < 201103L
43#define __glibcxx_want_initializer_list
46namespace std _GLIBCXX_VISIBILITY(default)
52 class _GLIBCXX_NO_SPECIALIZATIONS initializer_list
55 typedef _E value_type;
56 typedef const _E& reference;
57 typedef const _E& const_reference;
58 typedef size_t size_type;
59 typedef const _E* iterator;
60 typedef const _E* const_iterator;
67 constexpr initializer_list(const_iterator __a, size_type __l)
68 : _M_array(__a), _M_len(__l) { }
71 constexpr initializer_list() noexcept
72 : _M_array(0), _M_len(0) { }
76 size()
const noexcept {
return _M_len; }
79 constexpr const_iterator
80 begin()
const noexcept {
return _M_array; }
83 constexpr const_iterator
84 end()
const noexcept {
return begin() + size(); }
86#if __glibcxx_initializer_list >= 202511L
88 empty()
const noexcept {
return _M_len == 0; }
90 constexpr const value_type*
91 data()
const noexcept {
return _M_array; }
95#if __glibcxx_initializer_list < 202511L
105 {
return __ils.begin(); }
115 end(initializer_list<_Tp> __ils)
noexcept
116 {
return __ils.end(); }
ISO C++ entities toplevel namespace is std.
constexpr auto end(_Container &__cont) noexcept(noexcept(__cont.end())) -> decltype(__cont.end())
Return an iterator pointing to one past the last element of the container.
constexpr auto begin(_Container &__cont) noexcept(noexcept(__cont.begin())) -> decltype(__cont.begin())
Return an iterator pointing to the first element of the container.