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)
50 class initializer_list
53 typedef _E value_type;
54 typedef const _E& reference;
55 typedef const _E& const_reference;
56 typedef size_t size_type;
57 typedef const _E* iterator;
58 typedef const _E* const_iterator;
65 constexpr initializer_list(const_iterator __a, size_type __l)
66 : _M_array(__a), _M_len(__l) { }
69 constexpr initializer_list() noexcept
70 : _M_array(0), _M_len(0) { }
74 size()
const noexcept {
return _M_len; }
77 constexpr const_iterator
78 begin()
const noexcept {
return _M_array; }
81 constexpr const_iterator
82 end()
const noexcept {
return begin() + size(); }
84#if __glibcxx_initializer_list >= 202511L
86 empty()
const noexcept {
return _M_len == 0; }
88 constexpr const value_type*
89 data()
const noexcept {
return _M_array; }
93#if __glibcxx_initializer_list < 202511L
103 {
return __ils.begin(); }
113 end(initializer_list<_Tp> __ils)
noexcept
114 {
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.