Skip to content

Commit 9a7ff48

Browse files
committed
Index: Add C++20 container and string changes
Adds C++20 uniform container erasure, `contains` for associative containers, std::span, and UTF-8 string additions.
1 parent f08d0b2 commit 9a7ff48

1 file changed

Lines changed: 74 additions & 0 deletions

File tree

index-functions-cpp.xml

Lines changed: 74 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2318,6 +2318,8 @@
23182318
<function name="std::mbsrtowcs" link="cpp/string/multibyte/mbsrtowcs"/>
23192319
<function name="std::wcsrtombs" link="cpp/string/multibyte/wcsrtombs"/>
23202320

2321+
<function name="std::mbrtoc8" link="cpp/string/multibyte/mbrtoc8" since="c++20"/>
2322+
<function name="std::c8rtomb" link="cpp/string/multibyte/c8rtomb" since="c++20"/>
23212323
<function name="std::mbrtoc16" link="cpp/string/multibyte/mbrtoc16" since="c++11"/>
23222324
<function name="std::c16rtomb" link="cpp/string/multibyte/c16rtomb" since="c++11"/>
23232325
<function name="std::mbrtoc32" link="cpp/string/multibyte/mbrtoc32" since="c++11"/>
@@ -2422,6 +2424,8 @@
24222424
<function name="append"/>
24232425
<function name="operator+="/>
24242426
<function name="compare"/>
2427+
<function name="starts_with" since="c++20"/>
2428+
<function name="ends_with" since="c++20"/>
24252429
<function name="replace"/>
24262430
<function name="substr"/>
24272431
<function name="copy"/>
@@ -2446,6 +2450,8 @@
24462450
<overload name="operator&gt;=" link="operator_cmp"/>
24472451

24482452
<overload name="std::swap" link="swap2"/>
2453+
<overload name="std::erase" link="erase2" since="c++20"/>
2454+
<overload name="std::erase_if" link="erase2" since="c++20"/>
24492455

24502456
<overload name="operator&lt;&lt;" link="operator_ltltgtgt"/>
24512457
<overload name="operator&gt;&gt;" link="operator_ltltgtgt"/>
@@ -2455,11 +2461,13 @@
24552461

24562462
<typedef name="std::string" alias="std::basic_string"/>
24572463
<typedef name="std::wstring" alias="std::basic_string"/>
2464+
<typedef name="std::u8string" alias="std::basic_string" since="c++20"/>
24582465
<typedef name="std::u16string" alias="std::basic_string"/>
24592466
<typedef name="std::u32string" alias="std::basic_string"/>
24602467

24612468
<typedef name="std::pmr::string" alias="std::basic_string" since="c++17"/>
24622469
<typedef name="std::pmr::wstring" alias="std::basic_string" since="c++17"/>
2470+
<typedef name="std::pmr::u8string" alias="std::basic_string" since="c++20"/>
24632471
<typedef name="std::pmr::u16string" alias="std::basic_string" since="c++17"/>
24642472
<typedef name="std::pmr::u32string" alias="std::basic_string" since="c++17"/>
24652473

@@ -2495,6 +2503,8 @@
24952503
<function name="copy"/>
24962504
<function name="substr"/>
24972505
<function name="compare"/>
2506+
<function name="starts_with" since="c++20"/>
2507+
<function name="ends_with" since="c++20"/>
24982508
<function name="find"/>
24992509
<function name="rfind"/>
25002510
<function name="find_first_of"/>
@@ -2509,12 +2519,15 @@
25092519
<overload name="operator&lt;=" link="operator_cmp"/>
25102520
<overload name="operator&gt;" link="operator_cmp"/>
25112521
<overload name="operator&gt;=" link="operator_cmp"/>
2522+
<overload name="std::begin" link="begin_end_nonmem" since="c++20"/>
2523+
<overload name="std::end" link="begin_end_nonmem" since="c++20"/>
25122524
<overload name="operator&lt;&lt;" link="operator_ltlt"/>
25132525
<specialization name="std::hash" link="hash"/>
25142526
</class>
25152527

25162528
<typedef name="std::string_view" alias="std::basic_string_view" since="c++17"/>
25172529
<typedef name="std::wstring_view" alias="std::basic_string_view" since="c++17"/>
2530+
<typedef name="std::u8string_view" alias="std::basic_string_view" since="c++20"/>
25182531
<typedef name="std::u16string_view" alias="std::basic_string_view" since="c++17"/>
25192532
<typedef name="std::u32string_view" alias="std::basic_string_view" since="c++17"/>
25202533

@@ -2672,6 +2685,8 @@
26722685
<overload name="operator&gt;=" link="operator_cmp"/>
26732686

26742687
<overload name="std::swap" link="swap2"/>
2688+
<overload name="std::erase" link="erase2" since="c++20"/>
2689+
<overload name="std::erase_if" link="erase2" since="c++20"/>
26752690
</class>
26762691
<typedef name="std::pmr::vector" alias="std::vector" since="c++17"/>
26772692

@@ -2722,6 +2737,8 @@
27222737
<overload name="operator&gt;=" link="operator_cmp"/>
27232738

27242739
<overload name="std::swap" link="swap2"/>
2740+
<overload name="std::erase" link="erase2" since="c++20"/>
2741+
<overload name="std::erase_if" link="erase2" since="c++20"/>
27252742
</class>
27262743
<typedef name="std::pmr::deque" alias="std::deque" since="c++17"/>
27272744

@@ -2770,6 +2787,8 @@
27702787
<overload name="operator&gt;=" link="operator_cmp"/>
27712788

27722789
<overload name="std::swap" link="swap2"/>
2790+
<overload name="std::erase" link="erase2" since="c++20"/>
2791+
<overload name="std::erase_if" link="erase2" since="c++20"/>
27732792
</class>
27742793
<typedef name="std::pmr::forward_list" alias="std::forward_list" since="c++17"/>
27752794

@@ -2825,6 +2844,8 @@
28252844
<overload name="operator&gt;=" link="operator_cmp"/>
28262845

28272846
<overload name="std::swap" link="swap2"/>
2847+
<overload name="std::erase" link="erase2" since="c++20"/>
2848+
<overload name="std::erase_if" link="erase2" since="c++20"/>
28282849
</class>
28292850
<typedef name="std::pmr::list" alias="std::list" since="c++17"/>
28302851

@@ -2858,6 +2879,7 @@
28582879

28592880
<function name="count"/>
28602881
<function name="find"/>
2882+
<function name="contains" since="c++20"/>
28612883
<function name="equal_range"/>
28622884
<function name="lower_bound"/>
28632885
<function name="upper_bound"/>
@@ -2873,6 +2895,7 @@
28732895
<overload name="operator&gt;=" link="operator_cmp"/>
28742896

28752897
<overload name="std::swap" link="swap2"/>
2898+
<overload name="std::erase_if" link="erase_if" since="c++20"/>
28762899
</class>
28772900
<typedef name="std::pmr::set" alias="std::set" since="c++17"/>
28782901

@@ -2906,6 +2929,7 @@
29062929

29072930
<function name="count"/>
29082931
<function name="find"/>
2932+
<function name="contains" since="c++20"/>
29092933
<function name="equal_range"/>
29102934
<function name="lower_bound"/>
29112935
<function name="upper_bound"/>
@@ -2921,6 +2945,7 @@
29212945
<overload name="operator&gt;=" link="operator_cmp"/>
29222946

29232947
<overload name="std::swap" link="swap2"/>
2948+
<overload name="std::erase_if" link="erase_if" since="c++20"/>
29242949
</class>
29252950
<typedef name="std::pmr::multiset" alias="std::multiset" since="c++17"/>
29262951

@@ -2961,6 +2986,7 @@
29612986

29622987
<function name="count"/>
29632988
<function name="find"/>
2989+
<function name="contains" since="c++20"/>
29642990
<function name="equal_range"/>
29652991
<function name="lower_bound"/>
29662992
<function name="upper_bound"/>
@@ -2976,6 +3002,7 @@
29763002
<overload name="operator&gt;=" link="operator_cmp"/>
29773003

29783004
<overload name="std::swap" link="swap2"/>
3005+
<overload name="std::erase_if" link="erase_if" since="c++20"/>
29793006
</class>
29803007
<typedef name="std::pmr::map" alias="std::map" since="c++17"/>
29813008

@@ -3012,6 +3039,7 @@
30123039

30133040
<function name="count"/>
30143041
<function name="find"/>
3042+
<function name="contains" since="c++20"/>
30153043
<function name="equal_range"/>
30163044
<function name="lower_bound"/>
30173045
<function name="upper_bound"/>
@@ -3027,6 +3055,7 @@
30273055
<overload name="operator&gt;=" link="operator_cmp"/>
30283056

30293057
<overload name="std::swap" link="swap2"/>
3058+
<overload name="std::erase_if" link="erase_if" since="c++20"/>
30303059
</class>
30313060
<typedef name="std::pmr::multimap" alias="std::multimap" since="c++17"/>
30323061

@@ -3056,6 +3085,7 @@
30563085

30573086
<function name="count"/>
30583087
<function name="find"/>
3088+
<function name="contains" since="c++20"/>
30593089
<function name="equal_range"/>
30603090

30613091
<function name="begin(int)" link="begin2"/>
@@ -3080,6 +3110,7 @@
30803110
<overload name="operator!=" link="operator_cmp"/>
30813111

30823112
<overload name="std::swap" link="swap2"/>
3113+
<overload name="std::erase_if" link="erase_if" since="c++20"/>
30833114
</class>
30843115
<typedef name="std::pmr::unordered_set" alias="std::unordered_set" since="c++17"/>
30853116

@@ -3109,6 +3140,7 @@
31093140

31103141
<function name="count"/>
31113142
<function name="find"/>
3143+
<function name="contains" since="c++20"/>
31123144
<function name="equal_range"/>
31133145

31143146
<function name="begin(int)" link="begin2"/>
@@ -3133,6 +3165,7 @@
31333165
<overload name="operator!=" link="operator_cmp"/>
31343166

31353167
<overload name="std::swap" link="swap2"/>
3168+
<overload name="std::erase_if" link="erase_if" since="c++20"/>
31363169
</class>
31373170
<typedef name="std::pmr::unordered_multiset" alias="std::unordered_multiset" since="c++17"/>
31383171

@@ -3166,6 +3199,7 @@
31663199
<function name="operator[]" link="operator_at"/>
31673200
<function name="count"/>
31683201
<function name="find"/>
3202+
<function name="contains" since="c++20"/>
31693203
<function name="equal_range"/>
31703204

31713205
<function name="begin(int)" link="begin2"/>
@@ -3190,6 +3224,7 @@
31903224
<overload name="operator!=" link="operator_cmp"/>
31913225

31923226
<overload name="std::swap" link="swap2"/>
3227+
<overload name="std::erase_if" link="erase_if" since="c++20"/>
31933228
</class>
31943229
<typedef name="std::pmr::unordered_map" alias="std::unordered_map" since="c++17"/>
31953230

@@ -3219,6 +3254,7 @@
32193254

32203255
<function name="count"/>
32213256
<function name="find"/>
3257+
<function name="contains" since="c++20"/>
32223258
<function name="equal_range"/>
32233259

32243260
<function name="begin(int)" link="begin2"/>
@@ -3243,6 +3279,7 @@
32433279
<overload name="operator!=" link="operator_cmp"/>
32443280

32453281
<overload name="std::swap" link="swap2"/>
3282+
<overload name="std::erase_if" link="erase_if" since="c++20"/>
32463283
</class>
32473284
<typedef name="std::pmr::unordered_multimap" alias="std::unordered_multimap" since="c++17"/>
32483285

@@ -3318,6 +3355,43 @@
33183355
<specialization name="std::uses_allocator" link="uses_allocator"/>
33193356
</class>
33203357

3358+
<class name="std::span" link="cpp/container/span" since="c++20">
3359+
<constructor/>
3360+
<function name="operator="/>
3361+
3362+
<function name="begin"/>
3363+
<function name="cbegin" link="begin"/>
3364+
<function name="end"/>
3365+
<function name="cend" link="end"/>
3366+
<function name="rbegin"/>
3367+
<function name="crbegin" link="rbegin"/>
3368+
<function name="rend"/>
3369+
<function name="crend" link="rend"/>
3370+
3371+
<function name="front"/>
3372+
<function name="back"/>
3373+
<function name="operator[]" link="operator_at"/>
3374+
<function name="data"/>
3375+
3376+
<function name="size"/>
3377+
<function name="size_bytes"/>
3378+
<function name="empty"/>
3379+
3380+
<function name="first"/>
3381+
<function name="last"/>
3382+
<function name="subspan"/>
3383+
3384+
<overload name="std::begin" link="begin_end_nonmem"/>
3385+
<overload name="std::end" link="begin_end_nonmem"/>
3386+
<overload name="std::as_bytes" link="as_bytes"/>
3387+
<overload name="std::as_writable_bytes" link="as_bytes"/>
3388+
<overload name="std::get" link="get"/>
3389+
3390+
<specialization name="std::tuple_size" link="tuple_size"/>
3391+
<specialization name="std::tuple_element" link="tuple_element"/>
3392+
</class>
3393+
<const name="std::dynamic_extent" link="cpp/container/span/dynamic_extent" since="c++20"/>
3394+
33213395
<!-- cpp/numeric/math -->
33223396

33233397
<function name="std::abs(int)" link="cpp/numeric/math/abs"/>

0 commit comments

Comments
 (0)