|
768 | 768 |
|
769 | 769 | template<class Container> class back_insert_iterator;
|
770 | 770 | template<class Container>
|
771 |
| - back_insert_iterator<Container> back_inserter(Container& x); |
| 771 | + constexpr back_insert_iterator<Container> back_inserter(Container& x); |
772 | 772 |
|
773 | 773 | template<class Container> class front_insert_iterator;
|
774 | 774 | template<class Container>
|
775 |
| - front_insert_iterator<Container> front_inserter(Container& x); |
| 775 | + constexpr front_insert_iterator<Container> front_inserter(Container& x); |
776 | 776 |
|
777 | 777 | template<class Container> class insert_iterator;
|
778 | 778 | template<class Container>
|
779 |
| - insert_iterator<Container> inserter(Container& x, typename Container::iterator i); |
| 779 | + constexpr insert_iterator<Container> |
| 780 | + inserter(Container& x, typename Container::iterator i); |
780 | 781 |
|
781 | 782 | template<class Iterator> class move_iterator;
|
782 | 783 | template<class Iterator1, class Iterator2>
|
|
1704 | 1705 | using reference = void;
|
1705 | 1706 | using container_type = Container;
|
1706 | 1707 |
|
1707 |
| - explicit back_insert_iterator(Container& x); |
1708 |
| - back_insert_iterator& operator=(const typename Container::value_type& value); |
1709 |
| - back_insert_iterator& operator=(typename Container::value_type&& value); |
| 1708 | + constexpr explicit back_insert_iterator(Container& x); |
| 1709 | + constexpr back_insert_iterator& operator=(const typename Container::value_type& value); |
| 1710 | + constexpr back_insert_iterator& operator=(typename Container::value_type&& value); |
1710 | 1711 |
|
1711 |
| - back_insert_iterator& operator*(); |
1712 |
| - back_insert_iterator& operator++(); |
1713 |
| - back_insert_iterator operator++(int); |
| 1712 | + constexpr back_insert_iterator& operator*(); |
| 1713 | + constexpr back_insert_iterator& operator++(); |
| 1714 | + constexpr back_insert_iterator operator++(int); |
1714 | 1715 | };
|
1715 | 1716 |
|
1716 | 1717 | template<class Container>
|
1717 |
| - back_insert_iterator<Container> back_inserter(Container& x); |
| 1718 | + constexpr back_insert_iterator<Container> back_inserter(Container& x); |
1718 | 1719 | }
|
1719 | 1720 | \end{codeblock}
|
1720 | 1721 |
|
1721 | 1722 | \rSec4[back.insert.iter.ops]{Operations}
|
1722 | 1723 |
|
1723 | 1724 | \indexlibrary{\idxcode{back_insert_iterator}!constructor}%
|
1724 | 1725 | \begin{itemdecl}
|
1725 |
| -explicit back_insert_iterator(Container& x); |
| 1726 | +constexpr explicit back_insert_iterator(Container& x); |
1726 | 1727 | \end{itemdecl}
|
1727 | 1728 |
|
1728 | 1729 | \begin{itemdescr}
|
|
1735 | 1736 |
|
1736 | 1737 | \indexlibrarymember{operator=}{back_insert_iterator}%
|
1737 | 1738 | \begin{itemdecl}
|
1738 |
| -back_insert_iterator& operator=(const typename Container::value_type& value); |
| 1739 | +constexpr back_insert_iterator& operator=(const typename Container::value_type& value); |
1739 | 1740 | \end{itemdecl}
|
1740 | 1741 |
|
1741 | 1742 | \begin{itemdescr}
|
|
1750 | 1751 |
|
1751 | 1752 | \indexlibrarymember{operator=}{back_insert_iterator}%
|
1752 | 1753 | \begin{itemdecl}
|
1753 |
| -back_insert_iterator& operator=(typename Container::value_type&& value); |
| 1754 | +constexpr back_insert_iterator& operator=(typename Container::value_type&& value); |
1754 | 1755 | \end{itemdecl}
|
1755 | 1756 |
|
1756 | 1757 | \begin{itemdescr}
|
|
1765 | 1766 |
|
1766 | 1767 | \indexlibrarymember{operator*}{back_insert_iterator}%
|
1767 | 1768 | \begin{itemdecl}
|
1768 |
| -back_insert_iterator& operator*(); |
| 1769 | +constexpr back_insert_iterator& operator*(); |
1769 | 1770 | \end{itemdecl}
|
1770 | 1771 |
|
1771 | 1772 | \begin{itemdescr}
|
|
1776 | 1777 |
|
1777 | 1778 | \indexlibrarymember{operator++}{back_insert_iterator}%
|
1778 | 1779 | \begin{itemdecl}
|
1779 |
| -back_insert_iterator& operator++(); |
1780 |
| -back_insert_iterator operator++(int); |
| 1780 | +constexpr back_insert_iterator& operator++(); |
| 1781 | +constexpr back_insert_iterator operator++(int); |
1781 | 1782 | \end{itemdecl}
|
1782 | 1783 |
|
1783 | 1784 | \begin{itemdescr}
|
|
1791 | 1792 | \indexlibrary{\idxcode{back_inserter}}%
|
1792 | 1793 | \begin{itemdecl}
|
1793 | 1794 | template<class Container>
|
1794 |
| - back_insert_iterator<Container> back_inserter(Container& x); |
| 1795 | + constexpr back_insert_iterator<Container> back_inserter(Container& x); |
1795 | 1796 | \end{itemdecl}
|
1796 | 1797 |
|
1797 | 1798 | \begin{itemdescr}
|
|
1818 | 1819 | using reference = void;
|
1819 | 1820 | using container_type = Container;
|
1820 | 1821 |
|
1821 |
| - explicit front_insert_iterator(Container& x); |
1822 |
| - front_insert_iterator& operator=(const typename Container::value_type& value); |
1823 |
| - front_insert_iterator& operator=(typename Container::value_type&& value); |
| 1822 | + constexpr explicit front_insert_iterator(Container& x); |
| 1823 | + constexpr front_insert_iterator& operator=(const typename Container::value_type& value); |
| 1824 | + constexpr front_insert_iterator& operator=(typename Container::value_type&& value); |
1824 | 1825 |
|
1825 |
| - front_insert_iterator& operator*(); |
1826 |
| - front_insert_iterator& operator++(); |
1827 |
| - front_insert_iterator operator++(int); |
| 1826 | + constexpr front_insert_iterator& operator*(); |
| 1827 | + constexpr front_insert_iterator& operator++(); |
| 1828 | + constexpr front_insert_iterator operator++(int); |
1828 | 1829 | };
|
1829 | 1830 |
|
1830 | 1831 | template<class Container>
|
1831 |
| - front_insert_iterator<Container> front_inserter(Container& x); |
| 1832 | + constexpr front_insert_iterator<Container> front_inserter(Container& x); |
1832 | 1833 | }
|
1833 | 1834 | \end{codeblock}
|
1834 | 1835 |
|
1835 | 1836 | \rSec4[front.insert.iter.ops]{Operations}
|
1836 | 1837 |
|
1837 | 1838 | \indexlibrary{\idxcode{front_insert_iterator}!constructor}%
|
1838 | 1839 | \begin{itemdecl}
|
1839 |
| -explicit front_insert_iterator(Container& x); |
| 1840 | +constexpr explicit front_insert_iterator(Container& x); |
1840 | 1841 | \end{itemdecl}
|
1841 | 1842 |
|
1842 | 1843 | \begin{itemdescr}
|
|
1849 | 1850 |
|
1850 | 1851 | \indexlibrarymember{operator=}{front_insert_iterator}%
|
1851 | 1852 | \begin{itemdecl}
|
1852 |
| -front_insert_iterator& operator=(const typename Container::value_type& value); |
| 1853 | +constexpr front_insert_iterator& operator=(const typename Container::value_type& value); |
1853 | 1854 | \end{itemdecl}
|
1854 | 1855 |
|
1855 | 1856 | \begin{itemdescr}
|
|
1864 | 1865 |
|
1865 | 1866 | \indexlibrarymember{operator=}{front_insert_iterator}%
|
1866 | 1867 | \begin{itemdecl}
|
1867 |
| -front_insert_iterator& operator=(typename Container::value_type&& value); |
| 1868 | +constexpr front_insert_iterator& operator=(typename Container::value_type&& value); |
1868 | 1869 | \end{itemdecl}
|
1869 | 1870 |
|
1870 | 1871 | \begin{itemdescr}
|
|
1879 | 1880 |
|
1880 | 1881 | \indexlibrarymember{operator*}{front_insert_iterator}%
|
1881 | 1882 | \begin{itemdecl}
|
1882 |
| -front_insert_iterator& operator*(); |
| 1883 | +constexpr front_insert_iterator& operator*(); |
1883 | 1884 | \end{itemdecl}
|
1884 | 1885 |
|
1885 | 1886 | \begin{itemdescr}
|
|
1890 | 1891 |
|
1891 | 1892 | \indexlibrarymember{operator++}{front_insert_iterator}%
|
1892 | 1893 | \begin{itemdecl}
|
1893 |
| -front_insert_iterator& operator++(); |
1894 |
| -front_insert_iterator operator++(int); |
| 1894 | +constexpr front_insert_iterator& operator++(); |
| 1895 | +constexpr front_insert_iterator operator++(int); |
1895 | 1896 | \end{itemdecl}
|
1896 | 1897 |
|
1897 | 1898 | \begin{itemdescr}
|
|
1905 | 1906 | \indexlibrary{\idxcode{front_inserter}}%
|
1906 | 1907 | \begin{itemdecl}
|
1907 | 1908 | template<class Container>
|
1908 |
| - front_insert_iterator<Container> front_inserter(Container& x); |
| 1909 | + constexpr front_insert_iterator<Container> front_inserter(Container& x); |
1909 | 1910 | \end{itemdecl}
|
1910 | 1911 |
|
1911 | 1912 | \begin{itemdescr}
|
|
1933 | 1934 | using reference = void;
|
1934 | 1935 | using container_type = Container;
|
1935 | 1936 |
|
1936 |
| - insert_iterator(Container& x, typename Container::iterator i); |
1937 |
| - insert_iterator& operator=(const typename Container::value_type& value); |
1938 |
| - insert_iterator& operator=(typename Container::value_type&& value); |
| 1937 | + constexpr insert_iterator(Container& x, typename Container::iterator i); |
| 1938 | + constexpr insert_iterator& operator=(const typename Container::value_type& value); |
| 1939 | + constexpr insert_iterator& operator=(typename Container::value_type&& value); |
1939 | 1940 |
|
1940 |
| - insert_iterator& operator*(); |
1941 |
| - insert_iterator& operator++(); |
1942 |
| - insert_iterator& operator++(int); |
| 1941 | + constexpr insert_iterator& operator*(); |
| 1942 | + constexpr insert_iterator& operator++(); |
| 1943 | + constexpr insert_iterator& operator++(int); |
1943 | 1944 | };
|
1944 | 1945 |
|
1945 | 1946 | template<class Container>
|
1946 |
| - insert_iterator<Container> inserter(Container& x, typename Container::iterator i); |
| 1947 | + constexpr insert_iterator<Container> |
| 1948 | + inserter(Container& x, typename Container::iterator i); |
1947 | 1949 | }
|
1948 | 1950 | \end{codeblock}
|
1949 | 1951 |
|
1950 | 1952 | \rSec4[insert.iter.ops]{Operations}
|
1951 | 1953 |
|
1952 | 1954 | \indexlibrary{\idxcode{insert_iterator}!constructor}%
|
1953 | 1955 | \begin{itemdecl}
|
1954 |
| -insert_iterator(Container& x, typename Container::iterator i); |
| 1956 | +constexpr insert_iterator(Container& x, typename Container::iterator i); |
1955 | 1957 | \end{itemdecl}
|
1956 | 1958 |
|
1957 | 1959 | \begin{itemdescr}
|
|
1966 | 1968 |
|
1967 | 1969 | \indexlibrarymember{operator=}{insert_iterator}%
|
1968 | 1970 | \begin{itemdecl}
|
1969 |
| -insert_iterator& operator=(const typename Container::value_type& value); |
| 1971 | +constexpr insert_iterator& operator=(const typename Container::value_type& value); |
1970 | 1972 | \end{itemdecl}
|
1971 | 1973 |
|
1972 | 1974 | \begin{itemdescr}
|
|
1985 | 1987 |
|
1986 | 1988 | \indexlibrarymember{operator=}{insert_iterator}%
|
1987 | 1989 | \begin{itemdecl}
|
1988 |
| -insert_iterator& operator=(typename Container::value_type&& value); |
| 1990 | +constexpr insert_iterator& operator=(typename Container::value_type&& value); |
1989 | 1991 | \end{itemdecl}
|
1990 | 1992 |
|
1991 | 1993 | \begin{itemdescr}
|
|
2004 | 2006 |
|
2005 | 2007 | \indexlibrarymember{operator*}{insert_iterator}%
|
2006 | 2008 | \begin{itemdecl}
|
2007 |
| -insert_iterator& operator*(); |
| 2009 | +constexpr insert_iterator& operator*(); |
2008 | 2010 | \end{itemdecl}
|
2009 | 2011 |
|
2010 | 2012 | \begin{itemdescr}
|
|
2015 | 2017 |
|
2016 | 2018 | \indexlibrarymember{operator++}{insert_iterator}%
|
2017 | 2019 | \begin{itemdecl}
|
2018 |
| -insert_iterator& operator++(); |
2019 |
| -insert_iterator& operator++(int); |
| 2020 | +constexpr insert_iterator& operator++(); |
| 2021 | +constexpr insert_iterator& operator++(int); |
2020 | 2022 | \end{itemdecl}
|
2021 | 2023 |
|
2022 | 2024 | \begin{itemdescr}
|
|
2030 | 2032 | \indexlibrary{\idxcode{inserter}}%
|
2031 | 2033 | \begin{itemdecl}
|
2032 | 2034 | template<class Container>
|
2033 |
| - insert_iterator<Container> inserter(Container& x, typename Container::iterator i); |
| 2035 | + constexpr insert_iterator<Container> |
| 2036 | + inserter(Container& x, typename Container::iterator i); |
2034 | 2037 | \end{itemdecl}
|
2035 | 2038 |
|
2036 | 2039 | \begin{itemdescr}
|
|
0 commit comments