@swiftbrowser/wasm-sdk-cxx 0.0.0-stage → 0.9.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1824) hide show
  1. package/LICENSE.txt +1445 -0
  2. package/README.md +24 -2
  3. package/files.json +1822 -0
  4. package/package.json +18 -4
  5. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/adjacent_find.h +60 -0
  6. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/all_of.h +42 -0
  7. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/any_of.h +42 -0
  8. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/binary_search.h +38 -0
  9. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/clamp.h +44 -0
  10. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/comp.h +53 -0
  11. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/comp_ref_type.h +67 -0
  12. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/copy.h +254 -0
  13. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/copy_backward.h +270 -0
  14. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/copy_if.h +50 -0
  15. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/copy_move_common.h +113 -0
  16. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/copy_n.h +60 -0
  17. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/count.h +95 -0
  18. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/count_if.h +46 -0
  19. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/equal.h +292 -0
  20. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/equal_range.h +81 -0
  21. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/fill.h +45 -0
  22. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/fill_n.h +89 -0
  23. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/find.h +184 -0
  24. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/find_end.h +118 -0
  25. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/find_first_of.h +54 -0
  26. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/find_if.h +32 -0
  27. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/find_if_not.h +32 -0
  28. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/find_segment_if.h +62 -0
  29. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/for_each.h +65 -0
  30. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/for_each_n.h +102 -0
  31. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/for_each_n_segment.h +63 -0
  32. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/for_each_segment.h +53 -0
  33. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/generate.h +29 -0
  34. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/generate_n.h +33 -0
  35. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/half_positive.h +37 -0
  36. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/in_found_result.h +54 -0
  37. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/in_fun_result.h +54 -0
  38. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/in_in_out_result.h +59 -0
  39. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/in_in_result.h +56 -0
  40. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/in_out_out_result.h +57 -0
  41. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/in_out_result.h +56 -0
  42. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/includes.h +78 -0
  43. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/inplace_merge.h +243 -0
  44. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/is_heap.h +37 -0
  45. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/is_heap_until.h +62 -0
  46. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/is_partitioned.h +37 -0
  47. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/is_permutation.h +309 -0
  48. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/is_sorted.h +37 -0
  49. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/is_sorted_until.h +50 -0
  50. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/iter_swap.h +31 -0
  51. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/iterator_operations.h +226 -0
  52. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/lexicographical_compare.h +129 -0
  53. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/lexicographical_compare_three_way.h +125 -0
  54. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/lower_bound.h +108 -0
  55. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/make_heap.h +60 -0
  56. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/make_projected.h +104 -0
  57. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/max.h +58 -0
  58. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/max_element.h +54 -0
  59. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/merge.h +68 -0
  60. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/min.h +58 -0
  61. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/min_element.h +71 -0
  62. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/min_max_result.h +56 -0
  63. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/minmax.h +59 -0
  64. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/minmax_element.h +100 -0
  65. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/mismatch.h +218 -0
  66. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/move.h +139 -0
  67. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/move_backward.h +149 -0
  68. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/next_permutation.h +75 -0
  69. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/none_of.h +32 -0
  70. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/nth_element.h +261 -0
  71. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/out_value_result.h +56 -0
  72. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/partial_sort.h +91 -0
  73. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/partial_sort_copy.h +106 -0
  74. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/partition.h +91 -0
  75. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/partition_copy.h +43 -0
  76. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/partition_point.h +44 -0
  77. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/pop_heap.h +81 -0
  78. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/prev_permutation.h +75 -0
  79. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/pstl.h +663 -0
  80. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/push_heap.h +84 -0
  81. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/radix_sort.h +429 -0
  82. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/ranges_adjacent_find.h +66 -0
  83. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/ranges_all_of.h +64 -0
  84. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/ranges_any_of.h +63 -0
  85. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/ranges_binary_search.h +71 -0
  86. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/ranges_clamp.h +64 -0
  87. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/ranges_contains.h +64 -0
  88. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/ranges_contains_subrange.h +95 -0
  89. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/ranges_copy.h +68 -0
  90. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/ranges_copy_backward.h +67 -0
  91. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/ranges_copy_if.h +76 -0
  92. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/ranges_copy_n.h +80 -0
  93. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/ranges_count.h +64 -0
  94. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/ranges_count_if.h +67 -0
  95. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/ranges_ends_with.h +200 -0
  96. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/ranges_equal.h +107 -0
  97. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/ranges_equal_range.h +76 -0
  98. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/ranges_fill.h +60 -0
  99. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/ranges_fill_n.h +49 -0
  100. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/ranges_find.h +78 -0
  101. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/ranges_find_end.h +101 -0
  102. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/ranges_find_first_of.h +104 -0
  103. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/ranges_find_if.h +73 -0
  104. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/ranges_find_if_not.h +67 -0
  105. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/ranges_find_last.h +170 -0
  106. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/ranges_fold.h +129 -0
  107. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/ranges_for_each.h +89 -0
  108. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/ranges_for_each_n.h +59 -0
  109. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/ranges_generate.h +69 -0
  110. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/ranges_generate_n.h +61 -0
  111. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/ranges_includes.h +94 -0
  112. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/ranges_inplace_merge.h +80 -0
  113. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/ranges_is_heap.h +77 -0
  114. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/ranges_is_heap_until.h +77 -0
  115. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/ranges_is_partitioned.h +84 -0
  116. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/ranges_is_permutation.h +105 -0
  117. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/ranges_is_sorted.h +65 -0
  118. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/ranges_is_sorted_until.h +80 -0
  119. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/ranges_iterator_concept.h +56 -0
  120. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/ranges_lexicographical_compare.h +107 -0
  121. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/ranges_lower_bound.h +71 -0
  122. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/ranges_make_heap.h +81 -0
  123. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/ranges_max.h +101 -0
  124. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/ranges_max_element.h +67 -0
  125. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/ranges_merge.h +134 -0
  126. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/ranges_min.h +93 -0
  127. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/ranges_min_element.h +66 -0
  128. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/ranges_minmax.h +174 -0
  129. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/ranges_minmax_element.h +76 -0
  130. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/ranges_mismatch.h +98 -0
  131. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/ranges_move.h +72 -0
  132. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/ranges_move_backward.h +74 -0
  133. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/ranges_next_permutation.h +74 -0
  134. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/ranges_none_of.h +73 -0
  135. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/ranges_nth_element.h +80 -0
  136. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/ranges_partial_sort.h +78 -0
  137. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/ranges_partial_sort_copy.h +110 -0
  138. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/ranges_partition.h +85 -0
  139. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/ranges_partition_copy.h +106 -0
  140. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/ranges_partition_point.h +89 -0
  141. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/ranges_pop_heap.h +82 -0
  142. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/ranges_prev_permutation.h +74 -0
  143. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/ranges_push_heap.h +81 -0
  144. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/ranges_remove.h +66 -0
  145. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/ranges_remove_copy.h +77 -0
  146. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/ranges_remove_copy_if.h +91 -0
  147. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/ranges_remove_if.h +87 -0
  148. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/ranges_replace.h +66 -0
  149. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/ranges_replace_copy.h +89 -0
  150. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/ranges_replace_copy_if.h +94 -0
  151. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/ranges_replace_if.h +79 -0
  152. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/ranges_reverse.h +77 -0
  153. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/ranges_reverse_copy.h +68 -0
  154. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/ranges_rotate.h +67 -0
  155. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/ranges_rotate_copy.h +66 -0
  156. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/ranges_sample.h +70 -0
  157. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/ranges_search.h +132 -0
  158. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/ranges_search_n.h +114 -0
  159. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/ranges_set_difference.h +104 -0
  160. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/ranges_set_intersection.h +110 -0
  161. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/ranges_set_symmetric_difference.h +109 -0
  162. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/ranges_set_union.h +110 -0
  163. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/ranges_shuffle.h +68 -0
  164. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/ranges_sort.h +80 -0
  165. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/ranges_sort_heap.h +81 -0
  166. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/ranges_stable_partition.h +89 -0
  167. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/ranges_stable_sort.h +80 -0
  168. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/ranges_starts_with.h +93 -0
  169. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/ranges_swap_ranges.h +68 -0
  170. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/ranges_transform.h +175 -0
  171. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/ranges_unique.h +78 -0
  172. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/ranges_unique_copy.h +116 -0
  173. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/ranges_upper_bound.h +72 -0
  174. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/remove.h +46 -0
  175. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/remove_copy.h +34 -0
  176. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/remove_copy_if.h +34 -0
  177. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/remove_if.h +45 -0
  178. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/replace.h +30 -0
  179. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/replace_copy.h +37 -0
  180. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/replace_copy_if.h +37 -0
  181. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/replace_if.h +30 -0
  182. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/reverse.h +62 -0
  183. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/reverse_copy.h +30 -0
  184. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/rotate.h +243 -0
  185. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/rotate_copy.h +29 -0
  186. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/sample.h +123 -0
  187. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/search.h +192 -0
  188. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/search_n.h +156 -0
  189. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/set_difference.h +76 -0
  190. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/set_intersection.h +218 -0
  191. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/set_symmetric_difference.h +108 -0
  192. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/set_union.h +104 -0
  193. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/shift_left.h +59 -0
  194. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/shift_right.h +105 -0
  195. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/shuffle.h +167 -0
  196. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/sift_down.h +118 -0
  197. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/simd_utils.h +164 -0
  198. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/sort.h +958 -0
  199. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/sort_heap.h +63 -0
  200. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/stable_partition.h +305 -0
  201. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/stable_sort.h +323 -0
  202. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/swap_ranges.h +224 -0
  203. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/three_way_comp_ref_type.h +74 -0
  204. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/transform.h +42 -0
  205. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/uniform_random_bit_generator_adaptor.h +58 -0
  206. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/unique.h +66 -0
  207. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/unique_copy.h +127 -0
  208. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/unwrap_iter.h +85 -0
  209. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/unwrap_range.h +99 -0
  210. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__algorithm/upper_bound.h +71 -0
  211. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__assert +118 -0
  212. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__assertion_handler +64 -0
  213. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__atomic/aliases.h +111 -0
  214. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__atomic/atomic.h +830 -0
  215. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__atomic/atomic_flag.h +187 -0
  216. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__atomic/atomic_init.h +25 -0
  217. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__atomic/atomic_lock_free.h +48 -0
  218. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__atomic/atomic_ref.h +380 -0
  219. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__atomic/atomic_sync.h +195 -0
  220. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__atomic/check_memory_order.h +34 -0
  221. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__atomic/contention_t.h +32 -0
  222. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__atomic/fence.h +28 -0
  223. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__atomic/is_always_lock_free.h +28 -0
  224. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__atomic/kill_dependency.h +27 -0
  225. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__atomic/memory_order.h +65 -0
  226. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__atomic/support/c11.h +264 -0
  227. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__atomic/support/gcc.h +265 -0
  228. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__atomic/support.h +121 -0
  229. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__atomic/to_gcc_order.h +54 -0
  230. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__bit/bit_cast.h +44 -0
  231. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__bit/bit_ceil.h +54 -0
  232. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__bit/bit_floor.h +33 -0
  233. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__bit/bit_log2.h +33 -0
  234. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__bit/bit_width.h +33 -0
  235. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__bit/blsr.h +34 -0
  236. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__bit/byteswap.h +53 -0
  237. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__bit/countl.h +112 -0
  238. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__bit/countr.h +99 -0
  239. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__bit/endian.h +38 -0
  240. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__bit/has_single_bit.h +37 -0
  241. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__bit/invert_if.h +30 -0
  242. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__bit/popcount.h +86 -0
  243. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__bit/rotate.h +71 -0
  244. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__bit_reference +546 -0
  245. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__charconv/chars_format.h +61 -0
  246. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__charconv/from_chars_floating_point.h +73 -0
  247. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__charconv/from_chars_integral.h +240 -0
  248. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__charconv/from_chars_result.h +39 -0
  249. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__charconv/tables.h +159 -0
  250. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__charconv/to_chars.h +25 -0
  251. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__charconv/to_chars_base_10.h +184 -0
  252. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__charconv/to_chars_floating_point.h +55 -0
  253. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__charconv/to_chars_integral.h +346 -0
  254. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__charconv/to_chars_result.h +48 -0
  255. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__charconv/traits.h +197 -0
  256. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__chrono/calendar.h +44 -0
  257. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__chrono/concepts.h +36 -0
  258. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__chrono/convert_to_timespec.h +51 -0
  259. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__chrono/convert_to_tm.h +238 -0
  260. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__chrono/day.h +99 -0
  261. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__chrono/duration.h +545 -0
  262. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__chrono/exception.h +135 -0
  263. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__chrono/file_clock.h +80 -0
  264. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__chrono/formatter.h +1035 -0
  265. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__chrono/gps_clock.h +90 -0
  266. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__chrono/hh_mm_ss.h +112 -0
  267. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__chrono/high_resolution_clock.h +35 -0
  268. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__chrono/leap_second.h +131 -0
  269. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__chrono/literals.h +45 -0
  270. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__chrono/local_info.h +50 -0
  271. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__chrono/month.h +115 -0
  272. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__chrono/month_weekday.h +105 -0
  273. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__chrono/monthday.h +133 -0
  274. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__chrono/ostream.h +354 -0
  275. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__chrono/parser_std_format_spec.h +421 -0
  276. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__chrono/statically_widen.h +52 -0
  277. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__chrono/steady_clock.h +42 -0
  278. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__chrono/sys_info.h +51 -0
  279. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__chrono/system_clock.h +52 -0
  280. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__chrono/tai_clock.h +108 -0
  281. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__chrono/time_point.h +231 -0
  282. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__chrono/time_zone.h +185 -0
  283. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__chrono/time_zone_link.h +79 -0
  284. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__chrono/tzdb.h +96 -0
  285. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__chrono/tzdb_list.h +108 -0
  286. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__chrono/utc_clock.h +163 -0
  287. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__chrono/weekday.h +167 -0
  288. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__chrono/year.h +118 -0
  289. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__chrono/year_month.h +123 -0
  290. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__chrono/year_month_day.h +337 -0
  291. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__chrono/year_month_weekday.h +287 -0
  292. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__chrono/zoned_time.h +228 -0
  293. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__compare/common_comparison_category.h +86 -0
  294. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__compare/compare_partial_order_fallback.h +75 -0
  295. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__compare/compare_strong_order_fallback.h +72 -0
  296. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__compare/compare_three_way.h +40 -0
  297. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__compare/compare_three_way_result.h +46 -0
  298. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__compare/compare_weak_order_fallback.h +73 -0
  299. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__compare/is_eq.h +34 -0
  300. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__compare/ordering.h +282 -0
  301. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__compare/partial_order.h +77 -0
  302. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__compare/strong_order.h +143 -0
  303. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__compare/synth_three_way.h +53 -0
  304. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__compare/three_way_comparable.h +55 -0
  305. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__compare/weak_order.h +105 -0
  306. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__concepts/arithmetic.h +43 -0
  307. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__concepts/assignable.h +41 -0
  308. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__concepts/boolean_testable.h +38 -0
  309. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__concepts/class_or_enum.h +34 -0
  310. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__concepts/common_reference_with.h +36 -0
  311. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__concepts/common_with.h +52 -0
  312. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__concepts/constructible.h +55 -0
  313. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__concepts/convertible_to.h +33 -0
  314. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__concepts/copyable.h +41 -0
  315. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__concepts/derived_from.h +33 -0
  316. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__concepts/destructible.h +32 -0
  317. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__concepts/different_from.h +31 -0
  318. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__concepts/equality_comparable.h +56 -0
  319. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__concepts/invocable.h +40 -0
  320. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__concepts/movable.h +35 -0
  321. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__concepts/predicate.h +34 -0
  322. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__concepts/regular.h +33 -0
  323. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__concepts/relation.h +43 -0
  324. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__concepts/same_as.h +35 -0
  325. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__concepts/semiregular.h +33 -0
  326. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__concepts/swappable.h +122 -0
  327. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__concepts/totally_ordered.h +59 -0
  328. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__condition_variable/condition_variable.h +232 -0
  329. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__config +1267 -0
  330. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__config_site +58 -0
  331. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__configuration/abi.h +152 -0
  332. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__configuration/availability.h +367 -0
  333. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__configuration/compiler.h +51 -0
  334. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__configuration/language.h +50 -0
  335. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__configuration/platform.h +63 -0
  336. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__coroutine/coroutine_handle.h +177 -0
  337. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__coroutine/coroutine_traits.h +48 -0
  338. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__coroutine/noop_coroutine_handle.h +99 -0
  339. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__coroutine/trivial_awaitables.h +40 -0
  340. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cstddef/byte.h +85 -0
  341. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cstddef/max_align_t.h +27 -0
  342. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cstddef/nullptr_t.h +24 -0
  343. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cstddef/ptrdiff_t.h +24 -0
  344. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cstddef/size_t.h +24 -0
  345. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__algorithm/adjacent_find.h +57 -0
  346. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__algorithm/all_of.h +32 -0
  347. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__algorithm/any_of.h +32 -0
  348. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__algorithm/binary_search.h +39 -0
  349. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__algorithm/comp.h +49 -0
  350. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__algorithm/comp_ref_type.h +66 -0
  351. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__algorithm/copy.h +117 -0
  352. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__algorithm/copy_backward.h +132 -0
  353. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__algorithm/copy_if.h +34 -0
  354. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__algorithm/copy_move_common.h +112 -0
  355. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__algorithm/copy_n.h +58 -0
  356. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__algorithm/count.h +92 -0
  357. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__algorithm/count_if.h +34 -0
  358. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__algorithm/equal.h +73 -0
  359. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__algorithm/equal_range.h +85 -0
  360. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__algorithm/fill.h +44 -0
  361. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__algorithm/fill_n.h +94 -0
  362. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__algorithm/find.h +177 -0
  363. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__algorithm/find_end.h +225 -0
  364. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__algorithm/find_first_of.h +55 -0
  365. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__algorithm/find_if.h +32 -0
  366. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__algorithm/find_if_not.h +32 -0
  367. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__algorithm/find_segment_if.h +62 -0
  368. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__algorithm/for_each.h +39 -0
  369. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__algorithm/for_each_segment.h +52 -0
  370. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__algorithm/generate.h +28 -0
  371. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__algorithm/generate_n.h +32 -0
  372. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__algorithm/half_positive.h +37 -0
  373. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__algorithm/includes.h +79 -0
  374. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__algorithm/inplace_merge.h +240 -0
  375. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__algorithm/is_heap.h +38 -0
  376. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__algorithm/is_heap_until.h +62 -0
  377. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__algorithm/is_partitioned.h +37 -0
  378. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__algorithm/is_permutation.h +254 -0
  379. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__algorithm/is_sorted.h +37 -0
  380. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__algorithm/is_sorted_until.h +51 -0
  381. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__algorithm/iter_swap.h +29 -0
  382. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__algorithm/iterator_operations.h +192 -0
  383. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__algorithm/lexicographical_compare.h +57 -0
  384. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__algorithm/lower_bound.h +109 -0
  385. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__algorithm/make_heap.h +59 -0
  386. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__algorithm/make_projected.h +74 -0
  387. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__algorithm/max.h +42 -0
  388. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__algorithm/max_element.h +51 -0
  389. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__algorithm/merge.h +69 -0
  390. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__algorithm/min.h +42 -0
  391. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__algorithm/min_element.h +70 -0
  392. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__algorithm/minmax.h +39 -0
  393. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__algorithm/minmax_element.h +99 -0
  394. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__algorithm/mismatch.h +171 -0
  395. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__algorithm/move.h +120 -0
  396. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__algorithm/move_backward.h +133 -0
  397. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__algorithm/next_permutation.h +74 -0
  398. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__algorithm/none_of.h +32 -0
  399. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__algorithm/nth_element.h +261 -0
  400. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__algorithm/partial_sort.h +91 -0
  401. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__algorithm/partial_sort_copy.h +106 -0
  402. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__algorithm/partition.h +90 -0
  403. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__algorithm/partition_copy.h +43 -0
  404. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__algorithm/partition_point.h +44 -0
  405. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__algorithm/pop_heap.h +80 -0
  406. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__algorithm/prev_permutation.h +74 -0
  407. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__algorithm/push_heap.h +83 -0
  408. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__algorithm/remove.h +46 -0
  409. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__algorithm/remove_copy.h +34 -0
  410. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__algorithm/remove_copy_if.h +34 -0
  411. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__algorithm/remove_if.h +45 -0
  412. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__algorithm/replace.h +30 -0
  413. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__algorithm/replace_copy.h +37 -0
  414. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__algorithm/replace_copy_if.h +37 -0
  415. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__algorithm/replace_if.h +30 -0
  416. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__algorithm/reverse.h +61 -0
  417. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__algorithm/reverse_copy.h +30 -0
  418. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__algorithm/rotate.h +196 -0
  419. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__algorithm/rotate_copy.h +29 -0
  420. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__algorithm/search.h +182 -0
  421. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__algorithm/search_n.h +153 -0
  422. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__algorithm/set_difference.h +77 -0
  423. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__algorithm/set_intersection.h +211 -0
  424. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__algorithm/set_symmetric_difference.h +108 -0
  425. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__algorithm/set_union.h +104 -0
  426. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__algorithm/shuffle.h +157 -0
  427. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__algorithm/sift_down.h +118 -0
  428. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__algorithm/simd_utils.h +159 -0
  429. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__algorithm/sort.h +989 -0
  430. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__algorithm/sort_heap.h +62 -0
  431. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__algorithm/stable_partition.h +307 -0
  432. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__algorithm/stable_sort.h +273 -0
  433. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__algorithm/swap_ranges.h +62 -0
  434. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__algorithm/three_way_comp_ref_type.h +26 -0
  435. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__algorithm/transform.h +42 -0
  436. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__algorithm/uniform_random_bit_generator_adaptor.h +20 -0
  437. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__algorithm/unique.h +64 -0
  438. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__algorithm/unique_copy.h +127 -0
  439. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__algorithm/unwrap_iter.h +74 -0
  440. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__algorithm/unwrap_range.h +46 -0
  441. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__algorithm/upper_bound.h +68 -0
  442. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__assert +118 -0
  443. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__atomic/aliases.h +85 -0
  444. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__atomic/atomic.h +486 -0
  445. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__atomic/atomic_base.h +213 -0
  446. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__atomic/atomic_flag.h +184 -0
  447. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__atomic/atomic_init.h +21 -0
  448. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__atomic/atomic_lock_free.h +48 -0
  449. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__atomic/atomic_sync.h +205 -0
  450. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__atomic/check_memory_order.h +34 -0
  451. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__atomic/contention_t.h +32 -0
  452. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__atomic/cxx_atomic_impl.h +498 -0
  453. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__atomic/fence.h +28 -0
  454. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__atomic/is_always_lock_free.h +28 -0
  455. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__atomic/kill_dependency.h +27 -0
  456. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__atomic/memory_order.h +40 -0
  457. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__atomic/to_gcc_order.h +54 -0
  458. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__bit/blsr.h +30 -0
  459. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__bit/countl.h +96 -0
  460. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__bit/countr.h +67 -0
  461. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__bit/invert_if.h +29 -0
  462. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__bit/popcount.h +40 -0
  463. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__bit/rotate.h +57 -0
  464. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__bit_reference +965 -0
  465. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__chrono/convert_to_timespec.h +51 -0
  466. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__chrono/duration.h +418 -0
  467. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__chrono/high_resolution_clock.h +35 -0
  468. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__chrono/steady_clock.h +42 -0
  469. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__chrono/system_clock.h +43 -0
  470. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__chrono/time_point.h +177 -0
  471. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__condition_variable/condition_variable.h +244 -0
  472. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__config +1093 -0
  473. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__configuration/abi.h +172 -0
  474. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__configuration/availability.h +400 -0
  475. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__configuration/compiler.h +51 -0
  476. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__configuration/config_site_shim.h +80 -0
  477. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__configuration/language.h +27 -0
  478. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__configuration/platform.h +54 -0
  479. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__debug_utils/randomize_range.h +40 -0
  480. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__debug_utils/sanitizers.h +104 -0
  481. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__debug_utils/strict_weak_ordering_check.h +77 -0
  482. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__exception/exception.h +94 -0
  483. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__exception/exception_ptr.h +177 -0
  484. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__exception/nested_exception.h +99 -0
  485. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__exception/operations.h +38 -0
  486. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__exception/terminate.h +22 -0
  487. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__functional/binary_function.h +43 -0
  488. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__functional/binary_negate.h +45 -0
  489. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__functional/bind.h +70 -0
  490. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__functional/binder1st.h +49 -0
  491. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__functional/binder2nd.h +49 -0
  492. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__functional/hash.h +509 -0
  493. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__functional/identity.h +45 -0
  494. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__functional/mem_fn.h +51 -0
  495. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__functional/mem_fun_ref.h +137 -0
  496. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__functional/operations.h +181 -0
  497. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__functional/pointer_to_binary_function.h +38 -0
  498. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__functional/pointer_to_unary_function.h +38 -0
  499. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__functional/reference_wrapper.h +89 -0
  500. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__functional/unary_function.h +40 -0
  501. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__functional/unary_negate.h +38 -0
  502. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__functional/weak_result_type.h +209 -0
  503. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__fwd/array.h +38 -0
  504. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__fwd/bit_reference.h +25 -0
  505. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__fwd/complex.h +26 -0
  506. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__fwd/deque.h +26 -0
  507. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__fwd/fstream.h +53 -0
  508. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__fwd/functional.h +28 -0
  509. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__fwd/ios.h +43 -0
  510. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__fwd/istream.h +43 -0
  511. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__fwd/memory.h +25 -0
  512. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__fwd/ostream.h +35 -0
  513. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__fwd/pair.h +33 -0
  514. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__fwd/queue.h +31 -0
  515. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__fwd/sstream.h +58 -0
  516. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__fwd/stack.h +26 -0
  517. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__fwd/streambuf.h +35 -0
  518. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__fwd/string.h +73 -0
  519. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__fwd/string_view.h +50 -0
  520. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__fwd/tuple.h +26 -0
  521. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__fwd/vector.h +26 -0
  522. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__hash_table +1842 -0
  523. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__ios/fpos.h +76 -0
  524. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__iterator/access.h +54 -0
  525. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__iterator/advance.h +74 -0
  526. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__iterator/aliasing_iterator.h +127 -0
  527. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__iterator/back_insert_iterator.h +67 -0
  528. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__iterator/bounded_iter.h +247 -0
  529. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__iterator/distance.h +47 -0
  530. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__iterator/erase_if_container.h +43 -0
  531. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__iterator/front_insert_iterator.h +65 -0
  532. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__iterator/insert_iterator.h +71 -0
  533. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__iterator/istream_iterator.h +86 -0
  534. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__iterator/istreambuf_iterator.h +94 -0
  535. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__iterator/iterator.h +33 -0
  536. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__iterator/iterator_traits.h +246 -0
  537. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__iterator/move_iterator.h +166 -0
  538. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__iterator/next.h +39 -0
  539. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__iterator/ostream_iterator.h +67 -0
  540. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__iterator/ostreambuf_iterator.h +64 -0
  541. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__iterator/prev.h +38 -0
  542. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__iterator/reverse_iterator.h +203 -0
  543. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__iterator/segmented_iterator.h +79 -0
  544. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__iterator/wrap_iter.h +188 -0
  545. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__locale +1507 -0
  546. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__locale_dir/locale_base_api/android.h +45 -0
  547. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__locale_dir/locale_base_api/bsd_locale_defaults.h +36 -0
  548. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__locale_dir/locale_base_api/bsd_locale_fallbacks.h +126 -0
  549. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__locale_dir/locale_base_api/fuchsia.h +18 -0
  550. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__locale_dir/locale_base_api/ibm.h +108 -0
  551. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__locale_dir/locale_base_api/locale_guard.h +78 -0
  552. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__locale_dir/locale_base_api/musl.h +31 -0
  553. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__locale_dir/locale_base_api/newlib.h +12 -0
  554. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__locale_dir/locale_base_api/openbsd.h +19 -0
  555. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__locale_dir/locale_base_api/win32.h +235 -0
  556. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__locale_dir/locale_base_api.h +98 -0
  557. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__math/abs.h +46 -0
  558. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__math/copysign.h +45 -0
  559. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__math/error_functions.h +60 -0
  560. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__math/exponential_functions.h +171 -0
  561. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__math/fdim.h +48 -0
  562. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__math/fma.h +55 -0
  563. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__math/gamma.h +62 -0
  564. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__math/hyperbolic_functions.h +76 -0
  565. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__math/hypot.h +58 -0
  566. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__math/inverse_hyperbolic_functions.h +76 -0
  567. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__math/inverse_trigonometric_functions.h +99 -0
  568. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__math/logarithms.h +124 -0
  569. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__math/min_max.h +74 -0
  570. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__math/modulo.h +63 -0
  571. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__math/remainder.h +73 -0
  572. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__math/roots.h +62 -0
  573. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__math/rounding_functions.h +245 -0
  574. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__math/traits.h +174 -0
  575. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__math/trigonometric_functions.h +76 -0
  576. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__mbstate_t.h +54 -0
  577. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__memory/addressof.h +56 -0
  578. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__memory/align.h +25 -0
  579. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__memory/aligned_alloc.h +53 -0
  580. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__memory/allocate_at_least.h +36 -0
  581. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__memory/allocation_guard.h +108 -0
  582. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__memory/allocator.h +162 -0
  583. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__memory/allocator_arg_t.h +32 -0
  584. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__memory/allocator_destructor.h +40 -0
  585. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__memory/allocator_traits.h +371 -0
  586. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__memory/assume_aligned.h +41 -0
  587. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__memory/auto_ptr.h +88 -0
  588. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__memory/builtin_new_allocator.h +67 -0
  589. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__memory/compressed_pair.h +139 -0
  590. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__memory/construct_at.h +77 -0
  591. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__memory/destruct_n.h +63 -0
  592. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__memory/pointer_traits.h +217 -0
  593. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__memory/raw_storage_iterator.h +66 -0
  594. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__memory/shared_ptr.h +1217 -0
  595. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__memory/swap_allocator.h +41 -0
  596. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__memory/temp_value.h +45 -0
  597. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__memory/temporary_buffer.h +75 -0
  598. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__memory/uninitialized_algorithms.h +310 -0
  599. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__memory/unique_ptr.h +553 -0
  600. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__memory/uses_allocator.h +47 -0
  601. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__memory/voidify.h +30 -0
  602. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__mutex/lock_guard.h +48 -0
  603. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__mutex/mutex.h +53 -0
  604. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__mutex/once_flag.h +101 -0
  605. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__mutex/tag_types.h +34 -0
  606. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__mutex/unique_lock.h +177 -0
  607. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__numeric/accumulate.h +44 -0
  608. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__numeric/adjacent_difference.h +60 -0
  609. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__numeric/inner_product.h +50 -0
  610. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__numeric/iota.h +29 -0
  611. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__numeric/partial_sum.h +58 -0
  612. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__ostream/basic_ostream.h +797 -0
  613. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__random/bernoulli_distribution.h +118 -0
  614. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__random/binomial_distribution.h +192 -0
  615. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__random/cauchy_distribution.h +133 -0
  616. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__random/chi_squared_distribution.h +120 -0
  617. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__random/clamp_to_integral.h +59 -0
  618. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__random/default_random_engine.h +25 -0
  619. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__random/discard_block_engine.h +161 -0
  620. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__random/discrete_distribution.h +206 -0
  621. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__random/exponential_distribution.h +127 -0
  622. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__random/extreme_value_distribution.h +133 -0
  623. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__random/fisher_f_distribution.h +132 -0
  624. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__random/gamma_distribution.h +175 -0
  625. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__random/generate_canonical.h +46 -0
  626. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__random/geometric_distribution.h +115 -0
  627. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__random/independent_bits_engine.h +197 -0
  628. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__random/is_seed_sequence.h +31 -0
  629. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__random/is_valid.h +94 -0
  630. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__random/knuth_b.h +26 -0
  631. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__random/linear_congruential_engine.h +378 -0
  632. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__random/log2.h +66 -0
  633. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__random/lognormal_distribution.h +121 -0
  634. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__random/mersenne_twister_engine.h +829 -0
  635. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__random/negative_binomial_distribution.h +152 -0
  636. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__random/normal_distribution.h +170 -0
  637. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__random/piecewise_constant_distribution.h +269 -0
  638. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__random/piecewise_linear_distribution.h +282 -0
  639. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__random/poisson_distribution.h +236 -0
  640. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__random/random_device.h +76 -0
  641. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__random/ranlux.h +31 -0
  642. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__random/seed_seq.h +159 -0
  643. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__random/shuffle_order_engine.h +222 -0
  644. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__random/student_t_distribution.h +127 -0
  645. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__random/subtract_with_carry_engine.h +270 -0
  646. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__random/uniform_int_distribution.h +253 -0
  647. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__random/uniform_real_distribution.h +132 -0
  648. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__random/weibull_distribution.h +126 -0
  649. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__split_buffer +544 -0
  650. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__std_clang_module +215 -0
  651. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__std_mbstate_t.h +29 -0
  652. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__string/char_traits.h +496 -0
  653. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__string/constexpr_c_functions.h +223 -0
  654. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__string/extern_template_lists.h +133 -0
  655. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__support/ibm/gettod_zos.h +52 -0
  656. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__support/ibm/locale_mgmt_zos.h +53 -0
  657. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__support/ibm/nanosleep.h +55 -0
  658. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__support/xlocale/__nop_locale_mgmt.h +35 -0
  659. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__support/xlocale/__posix_l_fallback.h +107 -0
  660. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__support/xlocale/__strtonum_fallback.h +45 -0
  661. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__system_error/errc.h +266 -0
  662. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__system_error/error_category.h +64 -0
  663. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__system_error/error_code.h +123 -0
  664. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__system_error/error_condition.h +109 -0
  665. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__system_error/system_error.h +54 -0
  666. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__thread/id.h +102 -0
  667. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__thread/poll_with_backoff.h +67 -0
  668. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__thread/support/c11.h +191 -0
  669. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__thread/support/external.h +21 -0
  670. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__thread/support/pthread.h +221 -0
  671. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__thread/support/windows.h +131 -0
  672. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__thread/support.h +123 -0
  673. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__thread/this_thread.h +74 -0
  674. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__thread/thread.h +218 -0
  675. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__thread/timed_backoff_policy.h +44 -0
  676. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__tree +2106 -0
  677. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__tuple/find_index.h +20 -0
  678. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__tuple/make_tuple_types.h +28 -0
  679. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__tuple/sfinae_helpers.h +36 -0
  680. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__tuple/tuple_element.h +43 -0
  681. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__tuple/tuple_indices.h +20 -0
  682. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__tuple/tuple_like.h +26 -0
  683. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__tuple/tuple_like_ext.h +47 -0
  684. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__tuple/tuple_like_no_subrange.h +29 -0
  685. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__tuple/tuple_size.h +37 -0
  686. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__tuple/tuple_types.h +25 -0
  687. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__type_traits/add_const.h +27 -0
  688. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__type_traits/add_cv.h +27 -0
  689. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__type_traits/add_lvalue_reference.h +49 -0
  690. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__type_traits/add_pointer.h +50 -0
  691. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__type_traits/add_rvalue_reference.h +49 -0
  692. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__type_traits/add_volatile.h +27 -0
  693. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__type_traits/aligned_storage.h +129 -0
  694. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__type_traits/aligned_union.h +46 -0
  695. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__type_traits/alignment_of.h +27 -0
  696. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__type_traits/can_extract_key.h +53 -0
  697. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__type_traits/common_type.h +79 -0
  698. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__type_traits/conditional.h +53 -0
  699. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__type_traits/conjunction.h +49 -0
  700. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__type_traits/copy_cv.h +51 -0
  701. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__type_traits/copy_cvref.h +43 -0
  702. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__type_traits/datasizeof.h +65 -0
  703. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__type_traits/decay.h +68 -0
  704. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__type_traits/dependent_type.h +25 -0
  705. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__type_traits/desugars_to.h +40 -0
  706. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__type_traits/disjunction.h +48 -0
  707. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__type_traits/enable_if.h +32 -0
  708. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__type_traits/extent.h +44 -0
  709. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__type_traits/has_virtual_destructor.h +26 -0
  710. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__type_traits/integral_constant.h +39 -0
  711. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__type_traits/invoke.h +214 -0
  712. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__type_traits/is_abstract.h +26 -0
  713. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__type_traits/is_allocator.h +34 -0
  714. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__type_traits/is_always_bitcastable.h +85 -0
  715. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__type_traits/is_arithmetic.h +29 -0
  716. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__type_traits/is_array.h +41 -0
  717. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__type_traits/is_assignable.h +37 -0
  718. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__type_traits/is_base_of.h +26 -0
  719. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__type_traits/is_bounded_array.h +29 -0
  720. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__type_traits/is_callable.h +32 -0
  721. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__type_traits/is_char_like_type.h +28 -0
  722. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__type_traits/is_class.h +26 -0
  723. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__type_traits/is_compound.h +36 -0
  724. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__type_traits/is_const.h +37 -0
  725. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__type_traits/is_constant_evaluated.h +26 -0
  726. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__type_traits/is_constructible.h +39 -0
  727. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__type_traits/is_convertible.h +26 -0
  728. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__type_traits/is_core_convertible.h +35 -0
  729. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__type_traits/is_destructible.h +87 -0
  730. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__type_traits/is_empty.h +26 -0
  731. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__type_traits/is_enum.h +26 -0
  732. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__type_traits/is_equality_comparable.h +88 -0
  733. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__type_traits/is_execution_policy.h +19 -0
  734. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__type_traits/is_final.h +26 -0
  735. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__type_traits/is_floating_point.h +34 -0
  736. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__type_traits/is_function.h +26 -0
  737. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__type_traits/is_fundamental.h +38 -0
  738. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__type_traits/is_implicitly_default_constructible.h +24 -0
  739. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__type_traits/is_integral.h +64 -0
  740. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__type_traits/is_literal_type.h +26 -0
  741. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__type_traits/is_member_pointer.h +32 -0
  742. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__type_traits/is_nothrow_assignable.h +41 -0
  743. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__type_traits/is_nothrow_constructible.h +41 -0
  744. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__type_traits/is_nothrow_destructible.h +58 -0
  745. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__type_traits/is_null_pointer.h +27 -0
  746. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__type_traits/is_object.h +26 -0
  747. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__type_traits/is_pod.h +26 -0
  748. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__type_traits/is_pointer.h +55 -0
  749. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__type_traits/is_polymorphic.h +26 -0
  750. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__type_traits/is_primary_template.h +31 -0
  751. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__type_traits/is_reference.h +48 -0
  752. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__type_traits/is_reference_wrapper.h +32 -0
  753. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__type_traits/is_referenceable.h +41 -0
  754. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__type_traits/is_same.h +39 -0
  755. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__type_traits/is_scalar.h +59 -0
  756. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__type_traits/is_signed.h +49 -0
  757. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__type_traits/is_signed_integer.h +35 -0
  758. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__type_traits/is_specialization.h +35 -0
  759. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__type_traits/is_standard_layout.h +26 -0
  760. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__type_traits/is_swappable.h +60 -0
  761. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__type_traits/is_trivial.h +26 -0
  762. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__type_traits/is_trivially_assignable.h +41 -0
  763. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__type_traits/is_trivially_constructible.h +41 -0
  764. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__type_traits/is_trivially_copyable.h +27 -0
  765. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__type_traits/is_trivially_destructible.h +42 -0
  766. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__type_traits/is_trivially_lexicographically_comparable.h +53 -0
  767. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__type_traits/is_trivially_relocatable.h +42 -0
  768. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__type_traits/is_unbounded_array.h +28 -0
  769. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__type_traits/is_union.h +26 -0
  770. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__type_traits/is_unsigned.h +49 -0
  771. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__type_traits/is_unsigned_integer.h +35 -0
  772. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__type_traits/is_valid_expansion.h +31 -0
  773. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__type_traits/is_void.h +26 -0
  774. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__type_traits/is_volatile.h +37 -0
  775. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__type_traits/lazy.h +25 -0
  776. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__type_traits/make_32_64_or_128_bit.h +46 -0
  777. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__type_traits/make_const_lvalue_ref.h +26 -0
  778. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__type_traits/make_signed.h +84 -0
  779. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__type_traits/make_unsigned.h +89 -0
  780. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__type_traits/maybe_const.h +26 -0
  781. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__type_traits/nat.h +24 -0
  782. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__type_traits/negation.h +26 -0
  783. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__type_traits/noexcept_move_assign_container.h +31 -0
  784. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__type_traits/promote.h +128 -0
  785. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__type_traits/rank.h +41 -0
  786. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__type_traits/remove_all_extents.h +49 -0
  787. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__type_traits/remove_const.h +44 -0
  788. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__type_traits/remove_const_ref.h +27 -0
  789. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__type_traits/remove_cv.h +42 -0
  790. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__type_traits/remove_cvref.h +36 -0
  791. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__type_traits/remove_extent.h +49 -0
  792. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__type_traits/remove_pointer.h +48 -0
  793. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__type_traits/remove_reference.h +42 -0
  794. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__type_traits/remove_volatile.h +44 -0
  795. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__type_traits/result_of.h +31 -0
  796. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__type_traits/strip_signature.h +18 -0
  797. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__type_traits/type_identity.h +30 -0
  798. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__type_traits/type_list.h +42 -0
  799. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__type_traits/underlying_type.h +37 -0
  800. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__type_traits/unwrap_ref.h +37 -0
  801. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__type_traits/void_t.h +25 -0
  802. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__undef_macros +28 -0
  803. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__utility/as_lvalue.h +28 -0
  804. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__utility/auto_cast.h +22 -0
  805. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__utility/convert_to_integral.h +63 -0
  806. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__utility/declval.h +38 -0
  807. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__utility/empty.h +24 -0
  808. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__utility/exception_guard.h +136 -0
  809. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__utility/forward.h +38 -0
  810. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__utility/integer_sequence.h +48 -0
  811. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__utility/is_pointer_in_range.h +62 -0
  812. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__utility/is_valid_range.h +36 -0
  813. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__utility/move.h +49 -0
  814. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__utility/no_destroy.h +54 -0
  815. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__utility/pair.h +274 -0
  816. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__utility/piecewise_construct.h +26 -0
  817. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__utility/priority_tag.h +28 -0
  818. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__utility/private_constructor_tag.h +28 -0
  819. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__utility/rel_ops.h +46 -0
  820. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__utility/small_buffer.h +26 -0
  821. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__utility/swap.h +52 -0
  822. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__utility/unreachable.h +28 -0
  823. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__variant/monostate.h +26 -0
  824. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__verbose_abort +52 -0
  825. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/__verbose_trap +36 -0
  826. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/algorithm +1924 -0
  827. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/array +419 -0
  828. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/atomic +627 -0
  829. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/bitset +886 -0
  830. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/cassert +31 -0
  831. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/ccomplex +26 -0
  832. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/cctype +127 -0
  833. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/cerrno +48 -0
  834. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/cfenv +90 -0
  835. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/cfloat +88 -0
  836. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/chrono +969 -0
  837. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/cinttypes +270 -0
  838. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/ciso646 +24 -0
  839. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/climits +48 -0
  840. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/clocale +61 -0
  841. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/cmath +606 -0
  842. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/codecvt +591 -0
  843. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/complex +1298 -0
  844. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/complex.h +32 -0
  845. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/condition_variable +267 -0
  846. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/csetjmp +54 -0
  847. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/csignal +64 -0
  848. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/cstdarg +54 -0
  849. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/cstdbool +31 -0
  850. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/cstddef +64 -0
  851. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/cstdint +199 -0
  852. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/cstdio +172 -0
  853. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/cstdlib +147 -0
  854. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/cstring +104 -0
  855. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/ctgmath +28 -0
  856. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/ctime +80 -0
  857. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/ctype.h +61 -0
  858. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/cuchar +59 -0
  859. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/cwchar +256 -0
  860. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/cwctype +97 -0
  861. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/deque +2134 -0
  862. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/errno.h +399 -0
  863. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/exception +96 -0
  864. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/experimental/__config +45 -0
  865. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/experimental/utility +40 -0
  866. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/ext/__hash +85 -0
  867. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/ext/hash_map +864 -0
  868. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/ext/hash_set +583 -0
  869. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/fenv.h +114 -0
  870. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/float.h +95 -0
  871. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/forward_list +1241 -0
  872. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/fstream +1457 -0
  873. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/functional +576 -0
  874. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/future +1946 -0
  875. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/inttypes.h +264 -0
  876. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/iomanip +510 -0
  877. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/ios +876 -0
  878. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/iosfwd +166 -0
  879. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/iostream +67 -0
  880. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/istream +1345 -0
  881. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/iterator +718 -0
  882. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/limits +544 -0
  883. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/list +1368 -0
  884. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/locale +3733 -0
  885. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/locale.h +46 -0
  886. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/map +1332 -0
  887. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/math.h +520 -0
  888. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/memory +973 -0
  889. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/module.modulemap +2136 -0
  890. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/mutex +375 -0
  891. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/new +326 -0
  892. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/numeric +187 -0
  893. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/ostream +195 -0
  894. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/queue +588 -0
  895. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/random +1735 -0
  896. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/ratio +461 -0
  897. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/regex +5640 -0
  898. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/set +914 -0
  899. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/sstream +898 -0
  900. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/stack +250 -0
  901. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/stdatomic.h +235 -0
  902. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/stdbool.h +40 -0
  903. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/stddef.h +44 -0
  904. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/stdexcept +286 -0
  905. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/stdint.h +127 -0
  906. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/stdio.h +123 -0
  907. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/stdlib.h +151 -0
  908. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/streambuf +445 -0
  909. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/string +3562 -0
  910. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/string.h +110 -0
  911. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/string_view +733 -0
  912. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/strstream +267 -0
  913. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/system_error +166 -0
  914. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/tgmath.h +34 -0
  915. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/thread +123 -0
  916. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/type_traits +497 -0
  917. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/typeindex +92 -0
  918. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/typeinfo +383 -0
  919. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/uchar.h +41 -0
  920. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/unordered_map +1456 -0
  921. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/unordered_set +1045 -0
  922. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/utility +281 -0
  923. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/valarray +3197 -0
  924. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/vector +2452 -0
  925. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/version +273 -0
  926. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/wchar.h +211 -0
  927. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxx03/wctype.h +95 -0
  928. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__cxxabi_config.h +112 -0
  929. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__debug_utils/randomize_range.h +42 -0
  930. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__debug_utils/sanitizers.h +104 -0
  931. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__debug_utils/strict_weak_ordering_check.h +77 -0
  932. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__exception/exception.h +94 -0
  933. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__exception/exception_ptr.h +204 -0
  934. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__exception/nested_exception.h +100 -0
  935. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__exception/operations.h +42 -0
  936. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__exception/terminate.h +22 -0
  937. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__expected/bad_expected_access.h +73 -0
  938. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__expected/expected.h +1909 -0
  939. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__expected/unexpect.h +32 -0
  940. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__expected/unexpected.h +127 -0
  941. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__filesystem/copy_options.h +69 -0
  942. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__filesystem/directory_entry.h +470 -0
  943. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__filesystem/directory_iterator.h +150 -0
  944. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__filesystem/directory_options.h +57 -0
  945. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__filesystem/file_status.h +67 -0
  946. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__filesystem/file_time_type.h +31 -0
  947. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__filesystem/file_type.h +42 -0
  948. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__filesystem/filesystem_error.h +88 -0
  949. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__filesystem/operations.h +310 -0
  950. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__filesystem/path.h +932 -0
  951. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__filesystem/path_iterator.h +112 -0
  952. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__filesystem/perm_options.h +57 -0
  953. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__filesystem/perms.h +80 -0
  954. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__filesystem/recursive_directory_iterator.h +163 -0
  955. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__filesystem/space_info.h +38 -0
  956. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__filesystem/u8path.h +95 -0
  957. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__flat_map/flat_map.h +1272 -0
  958. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__flat_map/flat_multimap.h +1011 -0
  959. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__flat_map/key_value_iterator.h +218 -0
  960. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__flat_map/sorted_equivalent.h +31 -0
  961. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__flat_map/sorted_unique.h +31 -0
  962. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__flat_map/utils.h +121 -0
  963. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__flat_set/flat_multiset.h +792 -0
  964. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__flat_set/flat_set.h +874 -0
  965. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__flat_set/ra_iterator.h +157 -0
  966. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__flat_set/utils.h +82 -0
  967. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__format/buffer.h +708 -0
  968. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__format/concepts.h +83 -0
  969. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__format/container_adaptor.h +73 -0
  970. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__format/enable_insertable.h +35 -0
  971. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__format/escaped_output_table.h +887 -0
  972. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__format/extended_grapheme_cluster_table.h +1668 -0
  973. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__format/format_arg.h +402 -0
  974. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__format/format_arg_store.h +282 -0
  975. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__format/format_args.h +78 -0
  976. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__format/format_context.h +215 -0
  977. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__format/format_error.h +50 -0
  978. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__format/format_functions.h +722 -0
  979. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__format/format_parse_context.h +105 -0
  980. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__format/format_string.h +160 -0
  981. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__format/format_to_n_result.h +35 -0
  982. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__format/formatter.h +58 -0
  983. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__format/formatter_bool.h +80 -0
  984. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__format/formatter_char.h +101 -0
  985. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__format/formatter_floating_point.h +792 -0
  986. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__format/formatter_integer.h +126 -0
  987. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__format/formatter_integral.h +446 -0
  988. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__format/formatter_output.h +317 -0
  989. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__format/formatter_pointer.h +80 -0
  990. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__format/formatter_string.h +173 -0
  991. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__format/formatter_tuple.h +148 -0
  992. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__format/indic_conjunct_break_table.h +552 -0
  993. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__format/parser_std_format_spec.h +1172 -0
  994. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__format/range_default_formatter.h +214 -0
  995. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__format/range_formatter.h +264 -0
  996. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__format/unicode.h +602 -0
  997. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__format/width_estimation_table.h +273 -0
  998. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__format/write_escaped.h +242 -0
  999. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__functional/binary_function.h +53 -0
  1000. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__functional/binary_negate.h +51 -0
  1001. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__functional/bind.h +293 -0
  1002. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__functional/bind_back.h +83 -0
  1003. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__functional/bind_front.h +54 -0
  1004. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__functional/binder1st.h +54 -0
  1005. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__functional/binder2nd.h +54 -0
  1006. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__functional/boyer_moore_searcher.h +305 -0
  1007. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__functional/compose.h +53 -0
  1008. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__functional/default_searcher.h +54 -0
  1009. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__functional/function.h +831 -0
  1010. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__functional/hash.h +471 -0
  1011. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__functional/identity.h +65 -0
  1012. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__functional/invoke.h +55 -0
  1013. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__functional/is_transparent.h +34 -0
  1014. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__functional/mem_fn.h +52 -0
  1015. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__functional/mem_fun_ref.h +145 -0
  1016. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__functional/not_fn.h +76 -0
  1017. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__functional/operations.h +551 -0
  1018. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__functional/perfect_forward.h +105 -0
  1019. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__functional/pointer_to_binary_function.h +43 -0
  1020. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__functional/pointer_to_unary_function.h +43 -0
  1021. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__functional/ranges_operations.h +115 -0
  1022. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__functional/reference_wrapper.h +190 -0
  1023. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__functional/unary_function.h +50 -0
  1024. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__functional/unary_negate.h +47 -0
  1025. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__functional/weak_result_type.h +228 -0
  1026. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__fwd/array.h +47 -0
  1027. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__fwd/bit_reference.h +44 -0
  1028. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__fwd/byte.h +26 -0
  1029. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__fwd/complex.h +42 -0
  1030. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__fwd/deque.h +26 -0
  1031. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__fwd/format.h +38 -0
  1032. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__fwd/fstream.h +53 -0
  1033. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__fwd/functional.h +35 -0
  1034. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__fwd/get.h +24 -0
  1035. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__fwd/ios.h +43 -0
  1036. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__fwd/istream.h +43 -0
  1037. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__fwd/map.h +31 -0
  1038. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__fwd/mdspan.h +57 -0
  1039. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__fwd/memory.h +28 -0
  1040. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__fwd/memory_resource.h +31 -0
  1041. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__fwd/ostream.h +35 -0
  1042. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__fwd/pair.h +51 -0
  1043. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__fwd/queue.h +31 -0
  1044. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__fwd/set.h +30 -0
  1045. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__fwd/span.h +38 -0
  1046. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__fwd/sstream.h +58 -0
  1047. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__fwd/stack.h +26 -0
  1048. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__fwd/streambuf.h +35 -0
  1049. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__fwd/string.h +107 -0
  1050. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__fwd/string_view.h +50 -0
  1051. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__fwd/subrange.h +49 -0
  1052. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__fwd/tuple.h +52 -0
  1053. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__fwd/variant.h +68 -0
  1054. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__fwd/vector.h +29 -0
  1055. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__hash_table +2110 -0
  1056. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__ios/fpos.h +76 -0
  1057. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__iterator/access.h +95 -0
  1058. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__iterator/advance.h +199 -0
  1059. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__iterator/aliasing_iterator.h +130 -0
  1060. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__iterator/back_insert_iterator.h +85 -0
  1061. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__iterator/bounded_iter.h +293 -0
  1062. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__iterator/common_iterator.h +301 -0
  1063. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__iterator/concepts.h +327 -0
  1064. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__iterator/counted_iterator.h +289 -0
  1065. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__iterator/cpp17_iterator_concepts.h +190 -0
  1066. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__iterator/data.h +48 -0
  1067. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__iterator/default_sentinel.h +30 -0
  1068. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__iterator/distance.h +95 -0
  1069. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__iterator/empty.h +44 -0
  1070. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__iterator/erase_if_container.h +43 -0
  1071. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__iterator/front_insert_iterator.h +83 -0
  1072. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__iterator/incrementable_traits.h +79 -0
  1073. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__iterator/indirectly_comparable.h +33 -0
  1074. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__iterator/insert_iterator.h +95 -0
  1075. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__iterator/istream_iterator.h +104 -0
  1076. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__iterator/istreambuf_iterator.h +111 -0
  1077. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__iterator/iter_move.h +104 -0
  1078. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__iterator/iter_swap.h +108 -0
  1079. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__iterator/iterator.h +33 -0
  1080. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__iterator/iterator_traits.h +480 -0
  1081. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__iterator/iterator_with_data.h +105 -0
  1082. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__iterator/mergeable.h +42 -0
  1083. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__iterator/move_iterator.h +347 -0
  1084. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__iterator/move_sentinel.h +61 -0
  1085. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__iterator/next.h +74 -0
  1086. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__iterator/ostream_iterator.h +75 -0
  1087. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__iterator/ostreambuf_iterator.h +77 -0
  1088. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__iterator/permutable.h +34 -0
  1089. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__iterator/prev.h +84 -0
  1090. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__iterator/product_iterator.h +76 -0
  1091. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__iterator/projected.h +61 -0
  1092. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__iterator/ranges_iterator_traits.h +40 -0
  1093. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__iterator/readable_traits.h +81 -0
  1094. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__iterator/reverse_access.h +79 -0
  1095. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__iterator/reverse_iterator.h +348 -0
  1096. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__iterator/segmented_iterator.h +85 -0
  1097. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__iterator/size.h +60 -0
  1098. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__iterator/sortable.h +35 -0
  1099. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__iterator/static_bounded_iter.h +318 -0
  1100. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__iterator/unreachable_sentinel.h +37 -0
  1101. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__iterator/wrap_iter.h +251 -0
  1102. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__locale +1508 -0
  1103. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__locale_dir/check_grouping.h +31 -0
  1104. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__locale_dir/get_c_locale.h +40 -0
  1105. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__locale_dir/locale_base_api/android.h +45 -0
  1106. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__locale_dir/locale_base_api/bsd_locale_fallbacks.h +140 -0
  1107. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__locale_dir/locale_base_api/ibm.h +108 -0
  1108. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__locale_dir/locale_base_api/musl.h +31 -0
  1109. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__locale_dir/locale_base_api/openbsd.h +19 -0
  1110. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__locale_dir/locale_base_api.h +322 -0
  1111. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__locale_dir/messages.h +143 -0
  1112. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__locale_dir/money.h +873 -0
  1113. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__locale_dir/num.h +1072 -0
  1114. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__locale_dir/pad_and_output.h +88 -0
  1115. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__locale_dir/scan_keyword.h +143 -0
  1116. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__locale_dir/support/apple.h +20 -0
  1117. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__locale_dir/support/bsd_like.h +228 -0
  1118. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__locale_dir/support/freebsd.h +20 -0
  1119. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__locale_dir/support/fuchsia.h +160 -0
  1120. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__locale_dir/support/linux.h +281 -0
  1121. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__locale_dir/support/no_locale/characters.h +96 -0
  1122. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__locale_dir/support/no_locale/strtonum.h +49 -0
  1123. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__locale_dir/support/windows.h +337 -0
  1124. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__locale_dir/time.h +766 -0
  1125. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__locale_dir/wbuffer_convert.h +430 -0
  1126. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__locale_dir/wstring_convert.h +254 -0
  1127. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__log_hardening_failure +42 -0
  1128. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__math/abs.h +70 -0
  1129. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__math/copysign.h +44 -0
  1130. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__math/error_functions.h +60 -0
  1131. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__math/exponential_functions.h +171 -0
  1132. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__math/fdim.h +48 -0
  1133. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__math/fma.h +55 -0
  1134. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__math/gamma.h +62 -0
  1135. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__math/hyperbolic_functions.h +76 -0
  1136. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__math/hypot.h +108 -0
  1137. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__math/inverse_hyperbolic_functions.h +76 -0
  1138. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__math/inverse_trigonometric_functions.h +99 -0
  1139. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__math/logarithms.h +124 -0
  1140. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__math/min_max.h +74 -0
  1141. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__math/modulo.h +63 -0
  1142. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__math/remainder.h +72 -0
  1143. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__math/roots.h +62 -0
  1144. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__math/rounding_functions.h +245 -0
  1145. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__math/special_functions.h +84 -0
  1146. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__math/traits.h +196 -0
  1147. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__math/trigonometric_functions.h +76 -0
  1148. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__mbstate_t.h +54 -0
  1149. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__mdspan/aligned_accessor.h +87 -0
  1150. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__mdspan/default_accessor.h +65 -0
  1151. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__mdspan/extents.h +533 -0
  1152. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__mdspan/layout_left.h +203 -0
  1153. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__mdspan/layout_right.h +201 -0
  1154. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__mdspan/layout_stride.h +371 -0
  1155. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__mdspan/mdspan.h +318 -0
  1156. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__memory/addressof.h +59 -0
  1157. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__memory/align.h +25 -0
  1158. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__memory/aligned_alloc.h +63 -0
  1159. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__memory/allocate_at_least.h +48 -0
  1160. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__memory/allocation_guard.h +109 -0
  1161. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__memory/allocator.h +177 -0
  1162. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__memory/allocator_arg_t.h +75 -0
  1163. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__memory/allocator_destructor.h +40 -0
  1164. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__memory/allocator_traits.h +381 -0
  1165. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__memory/array_cookie.h +123 -0
  1166. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__memory/assume_aligned.h +50 -0
  1167. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__memory/auto_ptr.h +92 -0
  1168. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__memory/compressed_pair.h +136 -0
  1169. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__memory/concepts.h +63 -0
  1170. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__memory/construct_at.h +93 -0
  1171. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__memory/destroy.h +71 -0
  1172. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__memory/destruct_n.h +63 -0
  1173. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__memory/inout_ptr.h +110 -0
  1174. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__memory/is_sufficiently_aligned.h +34 -0
  1175. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__memory/noexcept_move_assign_container.h +37 -0
  1176. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__memory/out_ptr.h +102 -0
  1177. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__memory/pointer_traits.h +271 -0
  1178. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__memory/ranges_construct_at.h +72 -0
  1179. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__memory/ranges_destroy.h +79 -0
  1180. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__memory/ranges_uninitialized_algorithms.h +284 -0
  1181. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__memory/raw_storage_iterator.h +86 -0
  1182. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__memory/shared_count.h +137 -0
  1183. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__memory/shared_ptr.h +1588 -0
  1184. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__memory/swap_allocator.h +54 -0
  1185. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__memory/temp_value.h +58 -0
  1186. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__memory/temporary_buffer.h +45 -0
  1187. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__memory/uninitialized_algorithms.h +648 -0
  1188. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__memory/unique_ptr.h +815 -0
  1189. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__memory/unique_temporary_buffer.h +93 -0
  1190. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__memory/uses_allocator.h +52 -0
  1191. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__memory/uses_allocator_construction.h +233 -0
  1192. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__memory_resource/memory_resource.h +89 -0
  1193. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__memory_resource/monotonic_buffer_resource.h +119 -0
  1194. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__memory_resource/polymorphic_allocator.h +246 -0
  1195. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__memory_resource/pool_options.h +38 -0
  1196. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__memory_resource/synchronized_pool_resource.h +93 -0
  1197. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__memory_resource/unsynchronized_pool_resource.h +106 -0
  1198. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__mutex/lock_guard.h +46 -0
  1199. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__mutex/mutex.h +53 -0
  1200. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__mutex/once_flag.h +160 -0
  1201. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__mutex/tag_types.h +44 -0
  1202. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__mutex/unique_lock.h +173 -0
  1203. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__new/align_val_t.h +29 -0
  1204. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__new/allocate.h +79 -0
  1205. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__new/destroying_delete_t.h +29 -0
  1206. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__new/exceptions.h +73 -0
  1207. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__new/global_new_delete.h +77 -0
  1208. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__new/interference_size.h +34 -0
  1209. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__new/launder.h +36 -0
  1210. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__new/new_handler.h +28 -0
  1211. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__new/nothrow_t.h +29 -0
  1212. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__new/placement_new_delete.h +34 -0
  1213. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__node_handle +210 -0
  1214. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__numeric/accumulate.h +53 -0
  1215. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__numeric/adjacent_difference.h +68 -0
  1216. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__numeric/exclusive_scan.h +58 -0
  1217. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__numeric/gcd_lcm.h +130 -0
  1218. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__numeric/inclusive_scan.h +59 -0
  1219. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__numeric/inner_product.h +58 -0
  1220. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__numeric/iota.h +30 -0
  1221. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__numeric/midpoint.h +88 -0
  1222. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__numeric/partial_sum.h +66 -0
  1223. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__numeric/pstl.h +174 -0
  1224. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__numeric/ranges_iota.h +65 -0
  1225. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__numeric/reduce.h +53 -0
  1226. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__numeric/saturation_arithmetic.h +146 -0
  1227. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__numeric/transform_exclusive_scan.h +42 -0
  1228. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__numeric/transform_inclusive_scan.h +52 -0
  1229. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__numeric/transform_reduce.h +59 -0
  1230. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__ostream/basic_ostream.h +681 -0
  1231. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__ostream/print.h +174 -0
  1232. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__ostream/put_character_sequence.h +59 -0
  1233. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__pstl/backend.h +39 -0
  1234. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__pstl/backend_fwd.h +307 -0
  1235. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__pstl/backends/default.h +507 -0
  1236. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__pstl/backends/libdispatch.h +402 -0
  1237. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__pstl/backends/serial.h +185 -0
  1238. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__pstl/backends/std_thread.h +139 -0
  1239. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__pstl/cpu_algos/any_of.h +103 -0
  1240. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__pstl/cpu_algos/cpu_traits.h +89 -0
  1241. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__pstl/cpu_algos/fill.h +70 -0
  1242. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__pstl/cpu_algos/find_if.h +140 -0
  1243. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__pstl/cpu_algos/for_each.h +70 -0
  1244. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__pstl/cpu_algos/merge.h +89 -0
  1245. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__pstl/cpu_algos/stable_sort.h +51 -0
  1246. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__pstl/cpu_algos/transform.h +157 -0
  1247. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__pstl/cpu_algos/transform_reduce.h +218 -0
  1248. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__pstl/dispatch.h +71 -0
  1249. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__pstl/handle_exception.h +61 -0
  1250. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__random/bernoulli_distribution.h +123 -0
  1251. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__random/binomial_distribution.h +199 -0
  1252. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__random/cauchy_distribution.h +139 -0
  1253. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__random/chi_squared_distribution.h +125 -0
  1254. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__random/clamp_to_integral.h +59 -0
  1255. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__random/default_random_engine.h +25 -0
  1256. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__random/discard_block_engine.h +166 -0
  1257. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__random/discrete_distribution.h +212 -0
  1258. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__random/exponential_distribution.h +132 -0
  1259. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__random/extreme_value_distribution.h +139 -0
  1260. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__random/fisher_f_distribution.h +138 -0
  1261. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__random/gamma_distribution.h +181 -0
  1262. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__random/generate_canonical.h +51 -0
  1263. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__random/geometric_distribution.h +120 -0
  1264. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__random/independent_bits_engine.h +205 -0
  1265. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__random/is_seed_sequence.h +31 -0
  1266. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__random/is_valid.h +94 -0
  1267. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__random/knuth_b.h +26 -0
  1268. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__random/linear_congruential_engine.h +371 -0
  1269. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__random/log2.h +66 -0
  1270. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__random/lognormal_distribution.h +126 -0
  1271. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__random/mersenne_twister_engine.h +592 -0
  1272. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__random/negative_binomial_distribution.h +157 -0
  1273. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__random/normal_distribution.h +176 -0
  1274. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__random/piecewise_constant_distribution.h +304 -0
  1275. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__random/piecewise_linear_distribution.h +318 -0
  1276. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__random/poisson_distribution.h +241 -0
  1277. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__random/random_device.h +81 -0
  1278. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__random/ranlux.h +31 -0
  1279. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__random/seed_seq.h +168 -0
  1280. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__random/shuffle_order_engine.h +227 -0
  1281. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__random/student_t_distribution.h +132 -0
  1282. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__random/subtract_with_carry_engine.h +264 -0
  1283. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__random/uniform_int_distribution.h +264 -0
  1284. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__random/uniform_random_bit_generator.h +44 -0
  1285. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__random/uniform_real_distribution.h +138 -0
  1286. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__random/weibull_distribution.h +132 -0
  1287. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__ranges/access.h +210 -0
  1288. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__ranges/all.h +78 -0
  1289. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__ranges/as_rvalue_view.h +142 -0
  1290. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__ranges/chunk_by_view.h +235 -0
  1291. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__ranges/common_view.h +142 -0
  1292. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__ranges/concepts.h +182 -0
  1293. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__ranges/container_compatible_range.h +33 -0
  1294. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__ranges/counted.h +89 -0
  1295. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__ranges/dangling.h +42 -0
  1296. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__ranges/data.h +102 -0
  1297. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__ranges/drop_view.h +329 -0
  1298. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__ranges/drop_while_view.h +136 -0
  1299. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__ranges/elements_view.h +418 -0
  1300. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__ranges/empty.h +71 -0
  1301. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__ranges/empty_view.h +54 -0
  1302. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__ranges/enable_borrowed_range.h +40 -0
  1303. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__ranges/enable_view.h +50 -0
  1304. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__ranges/filter_view.h +260 -0
  1305. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__ranges/from_range.h +33 -0
  1306. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__ranges/iota_view.h +404 -0
  1307. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__ranges/istream_view.h +141 -0
  1308. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__ranges/join_view.h +429 -0
  1309. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__ranges/join_with_view.h +460 -0
  1310. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__ranges/lazy_split_view.h +442 -0
  1311. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__ranges/movable_box.h +247 -0
  1312. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__ranges/non_propagating_cache.h +103 -0
  1313. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__ranges/owning_view.h +116 -0
  1314. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__ranges/range_adaptor.h +99 -0
  1315. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__ranges/rbegin.h +120 -0
  1316. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__ranges/ref_view.h +89 -0
  1317. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__ranges/rend.h +123 -0
  1318. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__ranges/repeat_view.h +267 -0
  1319. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__ranges/reverse_view.h +204 -0
  1320. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__ranges/single_view.h +112 -0
  1321. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__ranges/size.h +138 -0
  1322. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__ranges/split_view.h +232 -0
  1323. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__ranges/subrange.h +274 -0
  1324. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__ranges/take_view.h +368 -0
  1325. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__ranges/take_while_view.h +170 -0
  1326. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__ranges/to.h +248 -0
  1327. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__ranges/transform_view.h +420 -0
  1328. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__ranges/view_interface.h +170 -0
  1329. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__ranges/views.h +35 -0
  1330. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__ranges/zip_view.h +499 -0
  1331. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__split_buffer +487 -0
  1332. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__std_mbstate_t.h +29 -0
  1333. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__stop_token/atomic_unique_lock.h +140 -0
  1334. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__stop_token/intrusive_list_view.h +85 -0
  1335. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__stop_token/intrusive_shared_ptr.h +135 -0
  1336. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__stop_token/stop_callback.h +102 -0
  1337. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__stop_token/stop_source.h +91 -0
  1338. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__stop_token/stop_state.h +236 -0
  1339. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__stop_token/stop_token.h +63 -0
  1340. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__string/char_traits.h +537 -0
  1341. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__string/constexpr_c_functions.h +236 -0
  1342. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__string/extern_template_lists.h +94 -0
  1343. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__support/ibm/gettod_zos.h +52 -0
  1344. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__support/ibm/locale_mgmt_zos.h +53 -0
  1345. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__support/ibm/nanosleep.h +55 -0
  1346. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__support/xlocale/__nop_locale_mgmt.h +33 -0
  1347. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__support/xlocale/__posix_l_fallback.h +91 -0
  1348. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__support/xlocale/__strtonum_fallback.h +45 -0
  1349. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__system_error/errc.h +266 -0
  1350. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__system_error/error_category.h +75 -0
  1351. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__system_error/error_code.h +142 -0
  1352. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__system_error/error_condition.h +129 -0
  1353. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__system_error/system_error.h +57 -0
  1354. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__system_error/throw_system_error.h +25 -0
  1355. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__thread/formatter.h +80 -0
  1356. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__thread/id.h +121 -0
  1357. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__thread/jthread.h +136 -0
  1358. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__thread/poll_with_backoff.h +67 -0
  1359. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__thread/support/c11.h +191 -0
  1360. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__thread/support/external.h +21 -0
  1361. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__thread/support/pthread.h +221 -0
  1362. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__thread/support/windows.h +131 -0
  1363. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__thread/support.h +123 -0
  1364. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__thread/this_thread.h +79 -0
  1365. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__thread/thread.h +263 -0
  1366. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__thread/timed_backoff_policy.h +44 -0
  1367. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__tree +2211 -0
  1368. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__tuple/find_index.h +62 -0
  1369. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__tuple/ignore.h +39 -0
  1370. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__tuple/make_tuple_types.h +80 -0
  1371. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__tuple/sfinae_helpers.h +142 -0
  1372. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__tuple/tuple_element.h +58 -0
  1373. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__tuple/tuple_indices.h +37 -0
  1374. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__tuple/tuple_like.h +42 -0
  1375. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__tuple/tuple_like_ext.h +52 -0
  1376. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__tuple/tuple_like_no_subrange.h +61 -0
  1377. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__tuple/tuple_size.h +74 -0
  1378. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__tuple/tuple_types.h +25 -0
  1379. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__type_traits/add_cv_quals.h +52 -0
  1380. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__type_traits/add_pointer.h +65 -0
  1381. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__type_traits/add_reference.h +58 -0
  1382. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__type_traits/aligned_storage.h +88 -0
  1383. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__type_traits/aligned_union.h +50 -0
  1384. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__type_traits/alignment_of.h +32 -0
  1385. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__type_traits/can_extract_key.h +53 -0
  1386. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__type_traits/common_reference.h +202 -0
  1387. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__type_traits/common_type.h +117 -0
  1388. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__type_traits/conditional.h +64 -0
  1389. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__type_traits/conjunction.h +70 -0
  1390. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__type_traits/container_traits.h +46 -0
  1391. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__type_traits/copy_cv.h +51 -0
  1392. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__type_traits/copy_cvref.h +45 -0
  1393. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__type_traits/datasizeof.h +50 -0
  1394. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__type_traits/decay.h +40 -0
  1395. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__type_traits/dependent_type.h +25 -0
  1396. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__type_traits/desugars_to.h +69 -0
  1397. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__type_traits/detected_or.h +36 -0
  1398. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__type_traits/disjunction.h +58 -0
  1399. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__type_traits/enable_if.h +43 -0
  1400. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__type_traits/extent.h +54 -0
  1401. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__type_traits/has_unique_object_representation.h +35 -0
  1402. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__type_traits/has_virtual_destructor.h +32 -0
  1403. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__type_traits/integer_traits.h +73 -0
  1404. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__type_traits/integral_constant.h +44 -0
  1405. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__type_traits/invoke.h +393 -0
  1406. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__type_traits/is_abstract.h +31 -0
  1407. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__type_traits/is_aggregate.h +33 -0
  1408. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__type_traits/is_allocator.h +34 -0
  1409. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__type_traits/is_always_bitcastable.h +83 -0
  1410. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__type_traits/is_arithmetic.h +34 -0
  1411. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__type_traits/is_array.h +31 -0
  1412. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__type_traits/is_assignable.h +50 -0
  1413. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__type_traits/is_base_of.h +43 -0
  1414. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__type_traits/is_bounded_array.h +36 -0
  1415. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__type_traits/is_callable.h +32 -0
  1416. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__type_traits/is_char_like_type.h +30 -0
  1417. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__type_traits/is_class.h +31 -0
  1418. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__type_traits/is_compound.h +46 -0
  1419. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__type_traits/is_const.h +31 -0
  1420. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__type_traits/is_constant_evaluated.h +32 -0
  1421. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__type_traits/is_constructible.h +58 -0
  1422. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__type_traits/is_convertible.h +31 -0
  1423. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__type_traits/is_core_convertible.h +54 -0
  1424. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__type_traits/is_destructible.h +97 -0
  1425. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__type_traits/is_empty.h +31 -0
  1426. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__type_traits/is_enum.h +41 -0
  1427. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__type_traits/is_equality_comparable.h +88 -0
  1428. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__type_traits/is_execution_policy.h +59 -0
  1429. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__type_traits/is_final.h +36 -0
  1430. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__type_traits/is_floating_point.h +39 -0
  1431. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__type_traits/is_function.h +31 -0
  1432. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__type_traits/is_fundamental.h +48 -0
  1433. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__type_traits/is_implicit_lifetime.h +35 -0
  1434. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__type_traits/is_implicitly_default_constructible.h +46 -0
  1435. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__type_traits/is_integral.h +74 -0
  1436. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__type_traits/is_literal_type.h +34 -0
  1437. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__type_traits/is_member_pointer.h +43 -0
  1438. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__type_traits/is_nothrow_assignable.h +52 -0
  1439. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__type_traits/is_nothrow_constructible.h +63 -0
  1440. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__type_traits/is_nothrow_convertible.h +62 -0
  1441. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__type_traits/is_nothrow_destructible.h +61 -0
  1442. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__type_traits/is_null_pointer.h +37 -0
  1443. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__type_traits/is_object.h +31 -0
  1444. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__type_traits/is_pod.h +31 -0
  1445. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__type_traits/is_pointer.h +31 -0
  1446. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__type_traits/is_polymorphic.h +31 -0
  1447. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__type_traits/is_primary_template.h +32 -0
  1448. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__type_traits/is_reference.h +68 -0
  1449. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__type_traits/is_reference_wrapper.h +32 -0
  1450. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__type_traits/is_referenceable.h +34 -0
  1451. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__type_traits/is_replaceable.h +61 -0
  1452. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__type_traits/is_same.h +44 -0
  1453. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__type_traits/is_scalar.h +69 -0
  1454. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__type_traits/is_signed.h +52 -0
  1455. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__type_traits/is_specialization.h +45 -0
  1456. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__type_traits/is_standard_layout.h +31 -0
  1457. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__type_traits/is_swappable.h +106 -0
  1458. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__type_traits/is_trivial.h +35 -0
  1459. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__type_traits/is_trivially_assignable.h +56 -0
  1460. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__type_traits/is_trivially_constructible.h +64 -0
  1461. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__type_traits/is_trivially_copyable.h +35 -0
  1462. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__type_traits/is_trivially_destructible.h +47 -0
  1463. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__type_traits/is_trivially_lexicographically_comparable.h +63 -0
  1464. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__type_traits/is_trivially_relocatable.h +44 -0
  1465. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__type_traits/is_unbounded_array.h +38 -0
  1466. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__type_traits/is_union.h +31 -0
  1467. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__type_traits/is_unqualified.h +25 -0
  1468. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__type_traits/is_unsigned.h +52 -0
  1469. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__type_traits/is_valid_expansion.h +31 -0
  1470. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__type_traits/is_void.h +31 -0
  1471. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__type_traits/is_volatile.h +31 -0
  1472. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__type_traits/lazy.h +25 -0
  1473. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__type_traits/make_32_64_or_128_bit.h +49 -0
  1474. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__type_traits/make_const_lvalue_ref.h +26 -0
  1475. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__type_traits/make_signed.h +84 -0
  1476. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__type_traits/make_unsigned.h +94 -0
  1477. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__type_traits/maybe_const.h +26 -0
  1478. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__type_traits/nat.h +31 -0
  1479. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__type_traits/negation.h +33 -0
  1480. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__type_traits/promote.h +43 -0
  1481. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__type_traits/rank.h +52 -0
  1482. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__type_traits/reference_constructs_from_temporary.h +44 -0
  1483. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__type_traits/reference_converts_from_temporary.h +35 -0
  1484. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__type_traits/remove_all_extents.h +40 -0
  1485. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__type_traits/remove_const.h +49 -0
  1486. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__type_traits/remove_const_ref.h +27 -0
  1487. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__type_traits/remove_cv.h +40 -0
  1488. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__type_traits/remove_cvref.h +45 -0
  1489. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__type_traits/remove_extent.h +40 -0
  1490. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__type_traits/remove_pointer.h +53 -0
  1491. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__type_traits/remove_reference.h +47 -0
  1492. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__type_traits/remove_volatile.h +49 -0
  1493. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__type_traits/result_of.h +43 -0
  1494. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__type_traits/strip_signature.h +81 -0
  1495. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__type_traits/type_identity.h +39 -0
  1496. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__type_traits/type_list.h +47 -0
  1497. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__type_traits/underlying_type.h +51 -0
  1498. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__type_traits/unwrap_ref.h +51 -0
  1499. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__type_traits/void_t.h +30 -0
  1500. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__undef_macros +28 -0
  1501. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__utility/as_const.h +32 -0
  1502. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__utility/as_lvalue.h +37 -0
  1503. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__utility/auto_cast.h +22 -0
  1504. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__utility/cmp.h +81 -0
  1505. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__utility/convert_to_integral.h +68 -0
  1506. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__utility/declval.h +38 -0
  1507. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__utility/element_count.h +27 -0
  1508. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__utility/empty.h +24 -0
  1509. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__utility/exception_guard.h +143 -0
  1510. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__utility/exchange.h +41 -0
  1511. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__utility/forward.h +38 -0
  1512. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__utility/forward_like.h +63 -0
  1513. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__utility/in_place.h +64 -0
  1514. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__utility/integer_sequence.h +90 -0
  1515. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__utility/is_pointer_in_range.h +70 -0
  1516. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__utility/is_valid_range.h +37 -0
  1517. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__utility/move.h +49 -0
  1518. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__utility/no_destroy.h +53 -0
  1519. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__utility/pair.h +692 -0
  1520. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__utility/piecewise_construct.h +32 -0
  1521. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__utility/priority_tag.h +28 -0
  1522. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__utility/private_constructor_tag.h +28 -0
  1523. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__utility/rel_ops.h +46 -0
  1524. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__utility/scope_guard.h +55 -0
  1525. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__utility/small_buffer.h +101 -0
  1526. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__utility/swap.h +60 -0
  1527. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__utility/to_underlying.h +38 -0
  1528. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__utility/unreachable.h +34 -0
  1529. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__variant/monostate.h +66 -0
  1530. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__vector/comparison.h +71 -0
  1531. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__vector/container_traits.h +41 -0
  1532. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__vector/erase.h +50 -0
  1533. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__vector/pmr.h +33 -0
  1534. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__vector/swap.h +29 -0
  1535. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__vector/vector.h +1422 -0
  1536. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__vector/vector_bool.h +1122 -0
  1537. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__vector/vector_bool_formatter.h +49 -0
  1538. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__verbose_abort +52 -0
  1539. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/__verbose_trap +36 -0
  1540. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/algorithm +2071 -0
  1541. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/any +618 -0
  1542. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/array +577 -0
  1543. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/atomic +641 -0
  1544. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/barrier +207 -0
  1545. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/bit +101 -0
  1546. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/bitset +963 -0
  1547. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/cassert +35 -0
  1548. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/ccomplex +43 -0
  1549. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/cctype +131 -0
  1550. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/cerrno +52 -0
  1551. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/cfenv +95 -0
  1552. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/cfloat +92 -0
  1553. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/charconv +121 -0
  1554. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/chrono +1129 -0
  1555. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/cinttypes +275 -0
  1556. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/ciso646 +36 -0
  1557. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/climits +53 -0
  1558. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/clocale +60 -0
  1559. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/cmath +620 -0
  1560. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/codecvt +606 -0
  1561. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/compare +177 -0
  1562. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/complex +1482 -0
  1563. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/complex.h +36 -0
  1564. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/concepts +174 -0
  1565. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/condition_variable +368 -0
  1566. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/coroutine +72 -0
  1567. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/csetjmp +59 -0
  1568. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/csignal +69 -0
  1569. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/cstdalign +59 -0
  1570. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/cstdarg +59 -0
  1571. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/cstdbool +47 -0
  1572. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/cstddef +63 -0
  1573. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/cstdint +198 -0
  1574. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/cstdio +179 -0
  1575. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/cstdlib +159 -0
  1576. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/cstring +109 -0
  1577. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/ctgmath +46 -0
  1578. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/ctime +91 -0
  1579. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/ctype.h +65 -0
  1580. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/cuchar +80 -0
  1581. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/cwchar +266 -0
  1582. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/cwctype +102 -0
  1583. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/cxxabi.h +197 -0
  1584. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/deque +2664 -0
  1585. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/errno.h +403 -0
  1586. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/exception +102 -0
  1587. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/execution +163 -0
  1588. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/expected +60 -0
  1589. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/experimental/__simd/aligned_tag.h +75 -0
  1590. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/experimental/__simd/declaration.h +88 -0
  1591. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/experimental/__simd/reference.h +192 -0
  1592. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/experimental/__simd/scalar.h +102 -0
  1593. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/experimental/__simd/simd.h +155 -0
  1594. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/experimental/__simd/simd_mask.h +97 -0
  1595. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/experimental/__simd/traits.h +75 -0
  1596. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/experimental/__simd/utility.h +103 -0
  1597. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/experimental/__simd/vec_ext.h +130 -0
  1598. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/experimental/iterator +140 -0
  1599. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/experimental/memory +205 -0
  1600. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/experimental/propagate_const +497 -0
  1601. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/experimental/simd +96 -0
  1602. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/experimental/type_traits +161 -0
  1603. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/experimental/utility +54 -0
  1604. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/ext/__hash +85 -0
  1605. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/ext/hash_map +876 -0
  1606. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/ext/hash_set +588 -0
  1607. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/fenv.h +118 -0
  1608. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/filesystem +581 -0
  1609. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/flat_map +92 -0
  1610. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/flat_set +85 -0
  1611. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/float.h +99 -0
  1612. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/format +264 -0
  1613. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/forward_list +1642 -0
  1614. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/fstream +1627 -0
  1615. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/functional +609 -0
  1616. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/future +2085 -0
  1617. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/initializer_list +107 -0
  1618. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/inttypes.h +268 -0
  1619. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/iomanip +576 -0
  1620. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/ios +898 -0
  1621. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/iosfwd +191 -0
  1622. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/iostream +72 -0
  1623. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/istream +1421 -0
  1624. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/iterator +759 -0
  1625. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/latch +135 -0
  1626. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/libcxx.imp +939 -0
  1627. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/limits +528 -0
  1628. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/list +1851 -0
  1629. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/locale +226 -0
  1630. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/map +2071 -0
  1631. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/math.h +515 -0
  1632. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/mdspan +474 -0
  1633. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/memory +1008 -0
  1634. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/memory_resource +81 -0
  1635. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/module.modulemap +2473 -0
  1636. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/mutex +514 -0
  1637. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/new +124 -0
  1638. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/numbers +169 -0
  1639. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/numeric +212 -0
  1640. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/optional +1323 -0
  1641. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/ostream +215 -0
  1642. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/print +407 -0
  1643. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/queue +979 -0
  1644. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/random +1746 -0
  1645. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/ranges +469 -0
  1646. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/ratio +499 -0
  1647. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/regex +5846 -0
  1648. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/scoped_allocator +577 -0
  1649. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/semaphore +192 -0
  1650. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/set +1526 -0
  1651. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/shared_mutex +453 -0
  1652. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/source_location +90 -0
  1653. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/span +646 -0
  1654. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/sstream +1297 -0
  1655. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/stack +389 -0
  1656. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/stdatomic.h +247 -0
  1657. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/stdbool.h +44 -0
  1658. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/stddef.h +48 -0
  1659. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/stdexcept +292 -0
  1660. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/stdio.h +122 -0
  1661. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/stdlib.h +135 -0
  1662. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/stop_token +61 -0
  1663. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/streambuf +405 -0
  1664. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/string +4038 -0
  1665. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/string.h +115 -0
  1666. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/string_view +960 -0
  1667. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/strstream +363 -0
  1668. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/syncstream +523 -0
  1669. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/system_error +176 -0
  1670. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/tgmath.h +39 -0
  1671. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/thread +133 -0
  1672. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/tuple +1447 -0
  1673. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/type_traits +570 -0
  1674. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/typeindex +111 -0
  1675. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/typeinfo +396 -0
  1676. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/uchar.h +60 -0
  1677. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/unordered_map +2484 -0
  1678. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/unordered_set +1853 -0
  1679. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/utility +318 -0
  1680. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/valarray +3373 -0
  1681. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/variant +1662 -0
  1682. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/vector +375 -0
  1683. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/version +619 -0
  1684. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/wchar.h +207 -0
  1685. package/wasm32-unknown-wasip1/WASI.sdk/include/c++/v1/wctype.h +94 -0
  1686. package/wasm32-unknown-wasip1/WASI.sdk/share/libc++/v1/std/algorithm.inc +624 -0
  1687. package/wasm32-unknown-wasip1/WASI.sdk/share/libc++/v1/std/any.inc +23 -0
  1688. package/wasm32-unknown-wasip1/WASI.sdk/share/libc++/v1/std/array.inc +29 -0
  1689. package/wasm32-unknown-wasip1/WASI.sdk/share/libc++/v1/std/atomic.inc +141 -0
  1690. package/wasm32-unknown-wasip1/WASI.sdk/share/libc++/v1/std/barrier.inc +14 -0
  1691. package/wasm32-unknown-wasip1/WASI.sdk/share/libc++/v1/std/bit.inc +38 -0
  1692. package/wasm32-unknown-wasip1/WASI.sdk/share/libc++/v1/std/bitset.inc +23 -0
  1693. package/wasm32-unknown-wasip1/WASI.sdk/share/libc++/v1/std/cassert.inc +12 -0
  1694. package/wasm32-unknown-wasip1/WASI.sdk/share/libc++/v1/std/cctype.inc +25 -0
  1695. package/wasm32-unknown-wasip1/WASI.sdk/share/libc++/v1/std/cerrno.inc +12 -0
  1696. package/wasm32-unknown-wasip1/WASI.sdk/share/libc++/v1/std/cfenv.inc +30 -0
  1697. package/wasm32-unknown-wasip1/WASI.sdk/share/libc++/v1/std/cfloat.inc +12 -0
  1698. package/wasm32-unknown-wasip1/WASI.sdk/share/libc++/v1/std/charconv.inc +34 -0
  1699. package/wasm32-unknown-wasip1/WASI.sdk/share/libc++/v1/std/chrono.inc +302 -0
  1700. package/wasm32-unknown-wasip1/WASI.sdk/share/libc++/v1/std/cinttypes.inc +25 -0
  1701. package/wasm32-unknown-wasip1/WASI.sdk/share/libc++/v1/std/climits.inc +12 -0
  1702. package/wasm32-unknown-wasip1/WASI.sdk/share/libc++/v1/std/clocale.inc +17 -0
  1703. package/wasm32-unknown-wasip1/WASI.sdk/share/libc++/v1/std/cmath.inc +376 -0
  1704. package/wasm32-unknown-wasip1/WASI.sdk/share/libc++/v1/std/codecvt.inc +20 -0
  1705. package/wasm32-unknown-wasip1/WASI.sdk/share/libc++/v1/std/compare.inc +51 -0
  1706. package/wasm32-unknown-wasip1/WASI.sdk/share/libc++/v1/std/complex.inc +78 -0
  1707. package/wasm32-unknown-wasip1/WASI.sdk/share/libc++/v1/std/concepts.inc +96 -0
  1708. package/wasm32-unknown-wasip1/WASI.sdk/share/libc++/v1/std/condition_variable.inc +22 -0
  1709. package/wasm32-unknown-wasip1/WASI.sdk/share/libc++/v1/std/coroutine.inc +33 -0
  1710. package/wasm32-unknown-wasip1/WASI.sdk/share/libc++/v1/std/csetjmp.inc +13 -0
  1711. package/wasm32-unknown-wasip1/WASI.sdk/share/libc++/v1/std/csignal.inc +18 -0
  1712. package/wasm32-unknown-wasip1/WASI.sdk/share/libc++/v1/std/cstdarg.inc +12 -0
  1713. package/wasm32-unknown-wasip1/WASI.sdk/share/libc++/v1/std/cstddef.inc +31 -0
  1714. package/wasm32-unknown-wasip1/WASI.sdk/share/libc++/v1/std/cstdint.inc +50 -0
  1715. package/wasm32-unknown-wasip1/WASI.sdk/share/libc++/v1/std/cstdio.inc +60 -0
  1716. package/wasm32-unknown-wasip1/WASI.sdk/share/libc++/v1/std/cstdlib.inc +71 -0
  1717. package/wasm32-unknown-wasip1/WASI.sdk/share/libc++/v1/std/cstring.inc +35 -0
  1718. package/wasm32-unknown-wasip1/WASI.sdk/share/libc++/v1/std/ctime.inc +28 -0
  1719. package/wasm32-unknown-wasip1/WASI.sdk/share/libc++/v1/std/cuchar.inc +28 -0
  1720. package/wasm32-unknown-wasip1/WASI.sdk/share/libc++/v1/std/cwchar.inc +80 -0
  1721. package/wasm32-unknown-wasip1/WASI.sdk/share/libc++/v1/std/cwctype.inc +35 -0
  1722. package/wasm32-unknown-wasip1/WASI.sdk/share/libc++/v1/std/deque.inc +26 -0
  1723. package/wasm32-unknown-wasip1/WASI.sdk/share/libc++/v1/std/exception.inc +28 -0
  1724. package/wasm32-unknown-wasip1/WASI.sdk/share/libc++/v1/std/execution.inc +36 -0
  1725. package/wasm32-unknown-wasip1/WASI.sdk/share/libc++/v1/std/expected.inc +25 -0
  1726. package/wasm32-unknown-wasip1/WASI.sdk/share/libc++/v1/std/filesystem.inc +121 -0
  1727. package/wasm32-unknown-wasip1/WASI.sdk/share/libc++/v1/std/flat_map.inc +31 -0
  1728. package/wasm32-unknown-wasip1/WASI.sdk/share/libc++/v1/std/flat_set.inc +29 -0
  1729. package/wasm32-unknown-wasip1/WASI.sdk/share/libc++/v1/std/format.inc +84 -0
  1730. package/wasm32-unknown-wasip1/WASI.sdk/share/libc++/v1/std/forward_list.inc +26 -0
  1731. package/wasm32-unknown-wasip1/WASI.sdk/share/libc++/v1/std/fstream.inc +44 -0
  1732. package/wasm32-unknown-wasip1/WASI.sdk/share/libc++/v1/std/functional.inc +124 -0
  1733. package/wasm32-unknown-wasip1/WASI.sdk/share/libc++/v1/std/future.inc +55 -0
  1734. package/wasm32-unknown-wasip1/WASI.sdk/share/libc++/v1/std/generator.inc +14 -0
  1735. package/wasm32-unknown-wasip1/WASI.sdk/share/libc++/v1/std/hazard_pointer.inc +23 -0
  1736. package/wasm32-unknown-wasip1/WASI.sdk/share/libc++/v1/std/initializer_list.inc +16 -0
  1737. package/wasm32-unknown-wasip1/WASI.sdk/share/libc++/v1/std/iomanip.inc +25 -0
  1738. package/wasm32-unknown-wasip1/WASI.sdk/share/libc++/v1/std/ios.inc +76 -0
  1739. package/wasm32-unknown-wasip1/WASI.sdk/share/libc++/v1/std/iosfwd.inc +40 -0
  1740. package/wasm32-unknown-wasip1/WASI.sdk/share/libc++/v1/std/iostream.inc +24 -0
  1741. package/wasm32-unknown-wasip1/WASI.sdk/share/libc++/v1/std/istream.inc +30 -0
  1742. package/wasm32-unknown-wasip1/WASI.sdk/share/libc++/v1/std/iterator.inc +244 -0
  1743. package/wasm32-unknown-wasip1/WASI.sdk/share/libc++/v1/std/latch.inc +14 -0
  1744. package/wasm32-unknown-wasip1/WASI.sdk/share/libc++/v1/std/limits.inc +17 -0
  1745. package/wasm32-unknown-wasip1/WASI.sdk/share/libc++/v1/std/list.inc +26 -0
  1746. package/wasm32-unknown-wasip1/WASI.sdk/share/libc++/v1/std/locale.inc +81 -0
  1747. package/wasm32-unknown-wasip1/WASI.sdk/share/libc++/v1/std/map.inc +29 -0
  1748. package/wasm32-unknown-wasip1/WASI.sdk/share/libc++/v1/std/mdspan.inc +39 -0
  1749. package/wasm32-unknown-wasip1/WASI.sdk/share/libc++/v1/std/memory.inc +215 -0
  1750. package/wasm32-unknown-wasip1/WASI.sdk/share/libc++/v1/std/memory_resource.inc +30 -0
  1751. package/wasm32-unknown-wasip1/WASI.sdk/share/libc++/v1/std/mutex.inc +44 -0
  1752. package/wasm32-unknown-wasip1/WASI.sdk/share/libc++/v1/std/new.inc +44 -0
  1753. package/wasm32-unknown-wasip1/WASI.sdk/share/libc++/v1/std/numbers.inc +38 -0
  1754. package/wasm32-unknown-wasip1/WASI.sdk/share/libc++/v1/std/numeric.inc +71 -0
  1755. package/wasm32-unknown-wasip1/WASI.sdk/share/libc++/v1/std/optional.inc +37 -0
  1756. package/wasm32-unknown-wasip1/WASI.sdk/share/libc++/v1/std/ostream.inc +42 -0
  1757. package/wasm32-unknown-wasip1/WASI.sdk/share/libc++/v1/std/print.inc +21 -0
  1758. package/wasm32-unknown-wasip1/WASI.sdk/share/libc++/v1/std/queue.inc +27 -0
  1759. package/wasm32-unknown-wasip1/WASI.sdk/share/libc++/v1/std/random.inc +115 -0
  1760. package/wasm32-unknown-wasip1/WASI.sdk/share/libc++/v1/std/ranges.inc +365 -0
  1761. package/wasm32-unknown-wasip1/WASI.sdk/share/libc++/v1/std/ratio.inc +58 -0
  1762. package/wasm32-unknown-wasip1/WASI.sdk/share/libc++/v1/std/rcu.inc +22 -0
  1763. package/wasm32-unknown-wasip1/WASI.sdk/share/libc++/v1/std/regex.inc +117 -0
  1764. package/wasm32-unknown-wasip1/WASI.sdk/share/libc++/v1/std/scoped_allocator.inc +17 -0
  1765. package/wasm32-unknown-wasip1/WASI.sdk/share/libc++/v1/std/semaphore.inc +17 -0
  1766. package/wasm32-unknown-wasip1/WASI.sdk/share/libc++/v1/std/set.inc +29 -0
  1767. package/wasm32-unknown-wasip1/WASI.sdk/share/libc++/v1/std/shared_mutex.inc +20 -0
  1768. package/wasm32-unknown-wasip1/WASI.sdk/share/libc++/v1/std/source_location.inc +12 -0
  1769. package/wasm32-unknown-wasip1/WASI.sdk/share/libc++/v1/std/span.inc +26 -0
  1770. package/wasm32-unknown-wasip1/WASI.sdk/share/libc++/v1/std/spanstream.inc +42 -0
  1771. package/wasm32-unknown-wasip1/WASI.sdk/share/libc++/v1/std/sstream.inc +42 -0
  1772. package/wasm32-unknown-wasip1/WASI.sdk/share/libc++/v1/std/stack.inc +24 -0
  1773. package/wasm32-unknown-wasip1/WASI.sdk/share/libc++/v1/std/stacktrace.inc +35 -0
  1774. package/wasm32-unknown-wasip1/WASI.sdk/share/libc++/v1/std/stdexcept.inc +20 -0
  1775. package/wasm32-unknown-wasip1/WASI.sdk/share/libc++/v1/std/stdfloat.inc +26 -0
  1776. package/wasm32-unknown-wasip1/WASI.sdk/share/libc++/v1/std/stop_token.inc +25 -0
  1777. package/wasm32-unknown-wasip1/WASI.sdk/share/libc++/v1/std/streambuf.inc +18 -0
  1778. package/wasm32-unknown-wasip1/WASI.sdk/share/libc++/v1/std/string.inc +80 -0
  1779. package/wasm32-unknown-wasip1/WASI.sdk/share/libc++/v1/std/string_view.inc +46 -0
  1780. package/wasm32-unknown-wasip1/WASI.sdk/share/libc++/v1/std/strstream.inc +19 -0
  1781. package/wasm32-unknown-wasip1/WASI.sdk/share/libc++/v1/std/syncstream.inc +28 -0
  1782. package/wasm32-unknown-wasip1/WASI.sdk/share/libc++/v1/std/system_error.inc +42 -0
  1783. package/wasm32-unknown-wasip1/WASI.sdk/share/libc++/v1/std/text_encoding.inc +19 -0
  1784. package/wasm32-unknown-wasip1/WASI.sdk/share/libc++/v1/std/thread.inc +42 -0
  1785. package/wasm32-unknown-wasip1/WASI.sdk/share/libc++/v1/std/tuple.inc +55 -0
  1786. package/wasm32-unknown-wasip1/WASI.sdk/share/libc++/v1/std/type_traits.inc +341 -0
  1787. package/wasm32-unknown-wasip1/WASI.sdk/share/libc++/v1/std/typeindex.inc +13 -0
  1788. package/wasm32-unknown-wasip1/WASI.sdk/share/libc++/v1/std/typeinfo.inc +14 -0
  1789. package/wasm32-unknown-wasip1/WASI.sdk/share/libc++/v1/std/unordered_map.inc +28 -0
  1790. package/wasm32-unknown-wasip1/WASI.sdk/share/libc++/v1/std/unordered_set.inc +28 -0
  1791. package/wasm32-unknown-wasip1/WASI.sdk/share/libc++/v1/std/utility.inc +99 -0
  1792. package/wasm32-unknown-wasip1/WASI.sdk/share/libc++/v1/std/valarray.inc +68 -0
  1793. package/wasm32-unknown-wasip1/WASI.sdk/share/libc++/v1/std/variant.inc +49 -0
  1794. package/wasm32-unknown-wasip1/WASI.sdk/share/libc++/v1/std/vector.inc +34 -0
  1795. package/wasm32-unknown-wasip1/WASI.sdk/share/libc++/v1/std/version.inc +12 -0
  1796. package/wasm32-unknown-wasip1/WASI.sdk/share/libc++/v1/std.compat/cassert.inc +12 -0
  1797. package/wasm32-unknown-wasip1/WASI.sdk/share/libc++/v1/std.compat/cctype.inc +25 -0
  1798. package/wasm32-unknown-wasip1/WASI.sdk/share/libc++/v1/std.compat/cerrno.inc +12 -0
  1799. package/wasm32-unknown-wasip1/WASI.sdk/share/libc++/v1/std.compat/cfenv.inc +29 -0
  1800. package/wasm32-unknown-wasip1/WASI.sdk/share/libc++/v1/std.compat/cfloat.inc +12 -0
  1801. package/wasm32-unknown-wasip1/WASI.sdk/share/libc++/v1/std.compat/cinttypes.inc +25 -0
  1802. package/wasm32-unknown-wasip1/WASI.sdk/share/libc++/v1/std.compat/climits.inc +12 -0
  1803. package/wasm32-unknown-wasip1/WASI.sdk/share/libc++/v1/std.compat/clocale.inc +17 -0
  1804. package/wasm32-unknown-wasip1/WASI.sdk/share/libc++/v1/std.compat/cmath.inc +268 -0
  1805. package/wasm32-unknown-wasip1/WASI.sdk/share/libc++/v1/std.compat/csetjmp.inc +13 -0
  1806. package/wasm32-unknown-wasip1/WASI.sdk/share/libc++/v1/std.compat/csignal.inc +17 -0
  1807. package/wasm32-unknown-wasip1/WASI.sdk/share/libc++/v1/std.compat/cstdarg.inc +10 -0
  1808. package/wasm32-unknown-wasip1/WASI.sdk/share/libc++/v1/std.compat/cstddef.inc +22 -0
  1809. package/wasm32-unknown-wasip1/WASI.sdk/share/libc++/v1/std.compat/cstdint.inc +50 -0
  1810. package/wasm32-unknown-wasip1/WASI.sdk/share/libc++/v1/std.compat/cstdio.inc +61 -0
  1811. package/wasm32-unknown-wasip1/WASI.sdk/share/libc++/v1/std.compat/cstdlib.inc +72 -0
  1812. package/wasm32-unknown-wasip1/WASI.sdk/share/libc++/v1/std.compat/cstring.inc +36 -0
  1813. package/wasm32-unknown-wasip1/WASI.sdk/share/libc++/v1/std.compat/ctime.inc +28 -0
  1814. package/wasm32-unknown-wasip1/WASI.sdk/share/libc++/v1/std.compat/cuchar.inc +28 -0
  1815. package/wasm32-unknown-wasip1/WASI.sdk/share/libc++/v1/std.compat/cwchar.inc +80 -0
  1816. package/wasm32-unknown-wasip1/WASI.sdk/share/libc++/v1/std.compat/cwctype.inc +35 -0
  1817. package/wasm32-unknown-wasip1/WASI.sdk/share/libc++/v1/std.compat.cppm +108 -0
  1818. package/wasm32-unknown-wasip1/WASI.sdk/share/libc++/v1/std.cppm +280 -0
  1819. package/wasm32-unknown-wasip1/swift.xctoolchain/usr/lib/swift_static/wasi/Cxx.swiftmodule/wasm32-unknown-wasip1.private.swiftinterface +855 -0
  1820. package/wasm32-unknown-wasip1/swift.xctoolchain/usr/lib/swift_static/wasi/Cxx.swiftmodule/wasm32-unknown-wasip1.swiftinterface +855 -0
  1821. package/wasm32-unknown-wasip1/swift.xctoolchain/usr/lib/swift_static/wasi/Cxx.swiftmodule/wasm32-unknown-wasip1.swiftmodule +0 -0
  1822. package/wasm32-unknown-wasip1/swift.xctoolchain/usr/lib/swift_static/wasi/libcxxshim.h +4 -0
  1823. package/wasm32-unknown-wasip1/swift.xctoolchain/usr/lib/swift_static/wasi/libcxxshim.modulemap +9 -0
  1824. package/wasm32-unknown-wasip1/swift.xctoolchain/usr/lib/swift_static/wasi/libcxxstdlibshim.h +107 -0
@@ -0,0 +1,3562 @@
1
+ // -*- C++ -*-
2
+ //===----------------------------------------------------------------------===//
3
+ //
4
+ // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
5
+ // See https://llvm.org/LICENSE.txt for license information.
6
+ // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
7
+ //
8
+ //===----------------------------------------------------------------------===//
9
+
10
+ #ifndef _LIBCPP___CXX03_STRING
11
+ #define _LIBCPP___CXX03_STRING
12
+
13
+ // clang-format off
14
+
15
+ /*
16
+ string synopsis
17
+
18
+ #include <__cxx03/compare>
19
+ #include <__cxx03/initializer_list>
20
+
21
+ namespace std
22
+ {
23
+
24
+ template <class stateT>
25
+ class fpos
26
+ {
27
+ private:
28
+ stateT st;
29
+ public:
30
+ fpos(streamoff = streamoff());
31
+
32
+ operator streamoff() const;
33
+
34
+ stateT state() const;
35
+ void state(stateT);
36
+
37
+ fpos& operator+=(streamoff);
38
+ fpos operator+ (streamoff) const;
39
+ fpos& operator-=(streamoff);
40
+ fpos operator- (streamoff) const;
41
+ };
42
+
43
+ template <class stateT> streamoff operator-(const fpos<stateT>& x, const fpos<stateT>& y);
44
+
45
+ template <class stateT> bool operator==(const fpos<stateT>& x, const fpos<stateT>& y);
46
+ template <class stateT> bool operator!=(const fpos<stateT>& x, const fpos<stateT>& y);
47
+
48
+ template <class charT>
49
+ struct char_traits
50
+ {
51
+ using char_type = charT;
52
+ using int_type = ...;
53
+ using off_type = streamoff;
54
+ using pos_type = streampos;
55
+ using state_type = mbstate_t;
56
+ using comparison_category = strong_ordering; // Since C++20 only for the specializations
57
+ // char, wchar_t, char8_t, char16_t, and char32_t.
58
+
59
+ static void assign(char_type& c1, const char_type& c2) noexcept;
60
+ static constexpr bool eq(char_type c1, char_type c2) noexcept;
61
+ static constexpr bool lt(char_type c1, char_type c2) noexcept;
62
+
63
+ static int compare(const char_type* s1, const char_type* s2, size_t n);
64
+ static size_t length(const char_type* s);
65
+ static const char_type* find(const char_type* s, size_t n, const char_type& a);
66
+ static char_type* move(char_type* s1, const char_type* s2, size_t n);
67
+ static char_type* copy(char_type* s1, const char_type* s2, size_t n);
68
+ static char_type* assign(char_type* s, size_t n, char_type a);
69
+
70
+ static constexpr int_type not_eof(int_type c) noexcept;
71
+ static constexpr char_type to_char_type(int_type c) noexcept;
72
+ static constexpr int_type to_int_type(char_type c) noexcept;
73
+ static constexpr bool eq_int_type(int_type c1, int_type c2) noexcept;
74
+ static constexpr int_type eof() noexcept;
75
+ };
76
+
77
+ template <> struct char_traits<char>;
78
+ template <> struct char_traits<wchar_t>;
79
+ template <> struct char_traits<char8_t>; // C++20
80
+ template <> struct char_traits<char16_t>;
81
+ template <> struct char_traits<char32_t>;
82
+
83
+ template<class charT, class traits = char_traits<charT>, class Allocator = allocator<charT> >
84
+ class basic_string
85
+ {
86
+ public:
87
+ // types:
88
+ typedef traits traits_type;
89
+ typedef typename traits_type::char_type value_type;
90
+ typedef Allocator allocator_type;
91
+ typedef typename allocator_type::size_type size_type;
92
+ typedef typename allocator_type::difference_type difference_type;
93
+ typedef typename allocator_type::reference reference;
94
+ typedef typename allocator_type::const_reference const_reference;
95
+ typedef typename allocator_type::pointer pointer;
96
+ typedef typename allocator_type::const_pointer const_pointer;
97
+ typedef implementation-defined iterator;
98
+ typedef implementation-defined const_iterator;
99
+ typedef std::reverse_iterator<iterator> reverse_iterator;
100
+ typedef std::reverse_iterator<const_iterator> const_reverse_iterator;
101
+
102
+ static const size_type npos = -1;
103
+
104
+ basic_string()
105
+ noexcept(is_nothrow_default_constructible<allocator_type>::value); // constexpr since C++20
106
+ explicit basic_string(const allocator_type& a); // constexpr since C++20
107
+ basic_string(const basic_string& str); // constexpr since C++20
108
+ basic_string(basic_string&& str)
109
+ noexcept(is_nothrow_move_constructible<allocator_type>::value); // constexpr since C++20
110
+ basic_string(const basic_string& str, size_type pos,
111
+ const allocator_type& a = allocator_type()); // constexpr since C++20
112
+ basic_string(const basic_string& str, size_type pos, size_type n,
113
+ const Allocator& a = Allocator()); // constexpr since C++20
114
+ constexpr basic_string(
115
+ basic_string&& str, size_type pos, const Allocator& a = Allocator()); // since C++23
116
+ constexpr basic_string(
117
+ basic_string&& str, size_type pos, size_type n, const Allocator& a = Allocator()); // since C++23
118
+ template<class T>
119
+ basic_string(const T& t, size_type pos, size_type n, const Allocator& a = Allocator()); // C++17, constexpr since C++20
120
+ template <class T>
121
+ explicit basic_string(const T& t, const Allocator& a = Allocator()); // C++17, constexpr since C++20
122
+ basic_string(const value_type* s, const allocator_type& a = allocator_type()); // constexpr since C++20
123
+ basic_string(const value_type* s, size_type n, const allocator_type& a = allocator_type()); // constexpr since C++20
124
+ basic_string(nullptr_t) = delete; // C++23
125
+ basic_string(size_type n, value_type c, const allocator_type& a = allocator_type()); // constexpr since C++20
126
+ template<class InputIterator>
127
+ basic_string(InputIterator begin, InputIterator end,
128
+ const allocator_type& a = allocator_type()); // constexpr since C++20
129
+ template<container-compatible-range<charT> R>
130
+ constexpr basic_string(from_range_t, R&& rg, const Allocator& a = Allocator()); // since C++23
131
+ basic_string(initializer_list<value_type>, const Allocator& = Allocator()); // constexpr since C++20
132
+ basic_string(const basic_string&, const Allocator&); // constexpr since C++20
133
+ basic_string(basic_string&&, const Allocator&); // constexpr since C++20
134
+
135
+ ~basic_string(); // constexpr since C++20
136
+
137
+ operator basic_string_view<charT, traits>() const noexcept; // constexpr since C++20
138
+
139
+ basic_string& operator=(const basic_string& str); // constexpr since C++20
140
+ template <class T>
141
+ basic_string& operator=(const T& t); // C++17, constexpr since C++20
142
+ basic_string& operator=(basic_string&& str)
143
+ noexcept(
144
+ allocator_type::propagate_on_container_move_assignment::value ||
145
+ allocator_type::is_always_equal::value ); // C++17, constexpr since C++20
146
+ basic_string& operator=(const value_type* s); // constexpr since C++20
147
+ basic_string& operator=(nullptr_t) = delete; // C++23
148
+ basic_string& operator=(value_type c); // constexpr since C++20
149
+ basic_string& operator=(initializer_list<value_type>); // constexpr since C++20
150
+
151
+ iterator begin() noexcept; // constexpr since C++20
152
+ const_iterator begin() const noexcept; // constexpr since C++20
153
+ iterator end() noexcept; // constexpr since C++20
154
+ const_iterator end() const noexcept; // constexpr since C++20
155
+
156
+ reverse_iterator rbegin() noexcept; // constexpr since C++20
157
+ const_reverse_iterator rbegin() const noexcept; // constexpr since C++20
158
+ reverse_iterator rend() noexcept; // constexpr since C++20
159
+ const_reverse_iterator rend() const noexcept; // constexpr since C++20
160
+
161
+ const_iterator cbegin() const noexcept; // constexpr since C++20
162
+ const_iterator cend() const noexcept; // constexpr since C++20
163
+ const_reverse_iterator crbegin() const noexcept; // constexpr since C++20
164
+ const_reverse_iterator crend() const noexcept; // constexpr since C++20
165
+
166
+ size_type size() const noexcept; // constexpr since C++20
167
+ size_type length() const noexcept; // constexpr since C++20
168
+ size_type max_size() const noexcept; // constexpr since C++20
169
+ size_type capacity() const noexcept; // constexpr since C++20
170
+
171
+ void resize(size_type n, value_type c); // constexpr since C++20
172
+ void resize(size_type n); // constexpr since C++20
173
+
174
+ template<class Operation>
175
+ constexpr void resize_and_overwrite(size_type n, Operation op); // since C++23
176
+
177
+ void reserve(size_type res_arg); // constexpr since C++20
178
+ void reserve(); // deprecated in C++20, removed in C++26
179
+ void shrink_to_fit(); // constexpr since C++20
180
+ void clear() noexcept; // constexpr since C++20
181
+ bool empty() const noexcept; // constexpr since C++20
182
+
183
+ const_reference operator[](size_type pos) const; // constexpr since C++20
184
+ reference operator[](size_type pos); // constexpr since C++20
185
+
186
+ const_reference at(size_type n) const; // constexpr since C++20
187
+ reference at(size_type n); // constexpr since C++20
188
+
189
+ basic_string& operator+=(const basic_string& str); // constexpr since C++20
190
+ template <class T>
191
+ basic_string& operator+=(const T& t); // C++17, constexpr since C++20
192
+ basic_string& operator+=(const value_type* s); // constexpr since C++20
193
+ basic_string& operator+=(value_type c); // constexpr since C++20
194
+ basic_string& operator+=(initializer_list<value_type>); // constexpr since C++20
195
+
196
+ basic_string& append(const basic_string& str); // constexpr since C++20
197
+ template <class T>
198
+ basic_string& append(const T& t); // C++17, constexpr since C++20
199
+ basic_string& append(const basic_string& str, size_type pos, size_type n=npos); // C++14, constexpr since C++20
200
+ template <class T>
201
+ basic_string& append(const T& t, size_type pos, size_type n=npos); // C++17, constexpr since C++20
202
+ basic_string& append(const value_type* s, size_type n); // constexpr since C++20
203
+ basic_string& append(const value_type* s); // constexpr since C++20
204
+ basic_string& append(size_type n, value_type c); // constexpr since C++20
205
+ template<class InputIterator>
206
+ basic_string& append(InputIterator first, InputIterator last); // constexpr since C++20
207
+ template<container-compatible-range<charT> R>
208
+ constexpr basic_string& append_range(R&& rg); // C++23
209
+ basic_string& append(initializer_list<value_type>); // constexpr since C++20
210
+
211
+ void push_back(value_type c); // constexpr since C++20
212
+ void pop_back(); // constexpr since C++20
213
+ reference front(); // constexpr since C++20
214
+ const_reference front() const; // constexpr since C++20
215
+ reference back(); // constexpr since C++20
216
+ const_reference back() const; // constexpr since C++20
217
+
218
+ basic_string& assign(const basic_string& str); // constexpr since C++20
219
+ template <class T>
220
+ basic_string& assign(const T& t); // C++17, constexpr since C++20
221
+ basic_string& assign(basic_string&& str); // constexpr since C++20
222
+ basic_string& assign(const basic_string& str, size_type pos, size_type n=npos); // C++14, constexpr since C++20
223
+ template <class T>
224
+ basic_string& assign(const T& t, size_type pos, size_type n=npos); // C++17, constexpr since C++20
225
+ basic_string& assign(const value_type* s, size_type n); // constexpr since C++20
226
+ basic_string& assign(const value_type* s); // constexpr since C++20
227
+ basic_string& assign(size_type n, value_type c); // constexpr since C++20
228
+ template<class InputIterator>
229
+ basic_string& assign(InputIterator first, InputIterator last); // constexpr since C++20
230
+ template<container-compatible-range<charT> R>
231
+ constexpr basic_string& assign_range(R&& rg); // C++23
232
+ basic_string& assign(initializer_list<value_type>); // constexpr since C++20
233
+
234
+ basic_string& insert(size_type pos1, const basic_string& str); // constexpr since C++20
235
+ template <class T>
236
+ basic_string& insert(size_type pos1, const T& t); // constexpr since C++20
237
+ basic_string& insert(size_type pos1, const basic_string& str,
238
+ size_type pos2, size_type n); // constexpr since C++20
239
+ template <class T>
240
+ basic_string& insert(size_type pos1, const T& t, size_type pos2, size_type n); // C++17, constexpr since C++20
241
+ basic_string& insert(size_type pos, const value_type* s, size_type n=npos); // C++14, constexpr since C++20
242
+ basic_string& insert(size_type pos, const value_type* s); // constexpr since C++20
243
+ basic_string& insert(size_type pos, size_type n, value_type c); // constexpr since C++20
244
+ iterator insert(const_iterator p, value_type c); // constexpr since C++20
245
+ iterator insert(const_iterator p, size_type n, value_type c); // constexpr since C++20
246
+ template<class InputIterator>
247
+ iterator insert(const_iterator p, InputIterator first, InputIterator last); // constexpr since C++20
248
+ template<container-compatible-range<charT> R>
249
+ constexpr iterator insert_range(const_iterator p, R&& rg); // C++23
250
+ iterator insert(const_iterator p, initializer_list<value_type>); // constexpr since C++20
251
+
252
+ basic_string& erase(size_type pos = 0, size_type n = npos); // constexpr since C++20
253
+ iterator erase(const_iterator position); // constexpr since C++20
254
+ iterator erase(const_iterator first, const_iterator last); // constexpr since C++20
255
+
256
+ basic_string& replace(size_type pos1, size_type n1, const basic_string& str); // constexpr since C++20
257
+ template <class T>
258
+ basic_string& replace(size_type pos1, size_type n1, const T& t); // C++17, constexpr since C++20
259
+ basic_string& replace(size_type pos1, size_type n1, const basic_string& str,
260
+ size_type pos2, size_type n2=npos); // C++14, constexpr since C++20
261
+ template <class T>
262
+ basic_string& replace(size_type pos1, size_type n1, const T& t,
263
+ size_type pos2, size_type n); // C++17, constexpr since C++20
264
+ basic_string& replace(size_type pos, size_type n1, const value_type* s, size_type n2); // constexpr since C++20
265
+ basic_string& replace(size_type pos, size_type n1, const value_type* s); // constexpr since C++20
266
+ basic_string& replace(size_type pos, size_type n1, size_type n2, value_type c); // constexpr since C++20
267
+ basic_string& replace(const_iterator i1, const_iterator i2, const basic_string& str); // constexpr since C++20
268
+ template <class T>
269
+ basic_string& replace(const_iterator i1, const_iterator i2, const T& t); // C++17, constexpr since C++20
270
+ basic_string& replace(const_iterator i1, const_iterator i2, const value_type* s, size_type n); // constexpr since C++20
271
+ basic_string& replace(const_iterator i1, const_iterator i2, const value_type* s); // constexpr since C++20
272
+ basic_string& replace(const_iterator i1, const_iterator i2, size_type n, value_type c); // constexpr since C++20
273
+ template<class InputIterator>
274
+ basic_string& replace(const_iterator i1, const_iterator i2, InputIterator j1, InputIterator j2); // constexpr since C++20
275
+ template<container-compatible-range<charT> R>
276
+ constexpr basic_string& replace_with_range(const_iterator i1, const_iterator i2, R&& rg); // C++23
277
+ basic_string& replace(const_iterator i1, const_iterator i2, initializer_list<value_type>); // constexpr since C++20
278
+
279
+ size_type copy(value_type* s, size_type n, size_type pos = 0) const; // constexpr since C++20
280
+ basic_string substr(size_type pos = 0, size_type n = npos) const; // constexpr in C++20, removed in C++23
281
+ basic_string substr(size_type pos = 0, size_type n = npos) const&; // since C++23
282
+ constexpr basic_string substr(size_type pos = 0, size_type n = npos) &&; // since C++23
283
+ void swap(basic_string& str)
284
+ noexcept(allocator_traits<allocator_type>::propagate_on_container_swap::value ||
285
+ allocator_traits<allocator_type>::is_always_equal::value); // C++17, constexpr since C++20
286
+
287
+ const value_type* c_str() const noexcept; // constexpr since C++20
288
+ const value_type* data() const noexcept; // constexpr since C++20
289
+ value_type* data() noexcept; // C++17, constexpr since C++20
290
+
291
+ allocator_type get_allocator() const noexcept; // constexpr since C++20
292
+
293
+ size_type find(const basic_string& str, size_type pos = 0) const noexcept; // constexpr since C++20
294
+ template <class T>
295
+ size_type find(const T& t, size_type pos = 0) const noexcept; // C++17, noexcept as an extension, constexpr since C++20
296
+ size_type find(const value_type* s, size_type pos, size_type n) const noexcept; // constexpr since C++20
297
+ size_type find(const value_type* s, size_type pos = 0) const noexcept; // constexpr since C++20
298
+ size_type find(value_type c, size_type pos = 0) const noexcept; // constexpr since C++20
299
+
300
+ size_type rfind(const basic_string& str, size_type pos = npos) const noexcept; // constexpr since C++20
301
+ template <class T>
302
+ size_type rfind(const T& t, size_type pos = npos) const noexcept; // C++17, noexcept as an extension, constexpr since C++20
303
+ size_type rfind(const value_type* s, size_type pos, size_type n) const noexcept; // constexpr since C++20
304
+ size_type rfind(const value_type* s, size_type pos = npos) const noexcept; // constexpr since C++20
305
+ size_type rfind(value_type c, size_type pos = npos) const noexcept; // constexpr since C++20
306
+
307
+ size_type find_first_of(const basic_string& str, size_type pos = 0) const noexcept; // constexpr since C++20
308
+ template <class T>
309
+ size_type find_first_of(const T& t, size_type pos = 0) const noexcept; // C++17, noexcept as an extension, constexpr since C++20
310
+ size_type find_first_of(const value_type* s, size_type pos, size_type n) const noexcept; // constexpr since C++20
311
+ size_type find_first_of(const value_type* s, size_type pos = 0) const noexcept; // constexpr since C++20
312
+ size_type find_first_of(value_type c, size_type pos = 0) const noexcept; // constexpr since C++20
313
+
314
+ size_type find_last_of(const basic_string& str, size_type pos = npos) const noexcept; // constexpr since C++20
315
+ template <class T>
316
+ size_type find_last_of(const T& t, size_type pos = npos) const noexcept noexcept; // C++17, noexcept as an extension, constexpr since C++20
317
+ size_type find_last_of(const value_type* s, size_type pos, size_type n) const noexcept; // constexpr since C++20
318
+ size_type find_last_of(const value_type* s, size_type pos = npos) const noexcept; // constexpr since C++20
319
+ size_type find_last_of(value_type c, size_type pos = npos) const noexcept; // constexpr since C++20
320
+
321
+ size_type find_first_not_of(const basic_string& str, size_type pos = 0) const noexcept; // constexpr since C++20
322
+ template <class T>
323
+ size_type find_first_not_of(const T& t, size_type pos = 0) const noexcept; // C++17, noexcept as an extension, constexpr since C++20
324
+ size_type find_first_not_of(const value_type* s, size_type pos, size_type n) const noexcept; // constexpr since C++20
325
+ size_type find_first_not_of(const value_type* s, size_type pos = 0) const noexcept; // constexpr since C++20
326
+ size_type find_first_not_of(value_type c, size_type pos = 0) const noexcept; // constexpr since C++20
327
+
328
+ size_type find_last_not_of(const basic_string& str, size_type pos = npos) const noexcept; // constexpr since C++20
329
+ template <class T>
330
+ size_type find_last_not_of(const T& t, size_type pos = npos) const noexcept; // C++17, noexcept as an extension, constexpr since C++20
331
+ size_type find_last_not_of(const value_type* s, size_type pos, size_type n) const noexcept; // constexpr since C++20
332
+ size_type find_last_not_of(const value_type* s, size_type pos = npos) const noexcept; // constexpr since C++20
333
+ size_type find_last_not_of(value_type c, size_type pos = npos) const noexcept; // constexpr since C++20
334
+
335
+ int compare(const basic_string& str) const noexcept; // constexpr since C++20
336
+ template <class T>
337
+ int compare(const T& t) const noexcept; // C++17, noexcept as an extension, constexpr since C++20
338
+ int compare(size_type pos1, size_type n1, const basic_string& str) const; // constexpr since C++20
339
+ template <class T>
340
+ int compare(size_type pos1, size_type n1, const T& t) const; // C++17, constexpr since C++20
341
+ int compare(size_type pos1, size_type n1, const basic_string& str,
342
+ size_type pos2, size_type n2=npos) const; // C++14, constexpr since C++20
343
+ template <class T>
344
+ int compare(size_type pos1, size_type n1, const T& t,
345
+ size_type pos2, size_type n2=npos) const; // C++17, constexpr since C++20
346
+ int compare(const value_type* s) const noexcept; // constexpr since C++20
347
+ int compare(size_type pos1, size_type n1, const value_type* s) const; // constexpr since C++20
348
+ int compare(size_type pos1, size_type n1, const value_type* s, size_type n2) const; // constexpr since C++20
349
+
350
+ constexpr bool starts_with(basic_string_view<charT, traits> sv) const noexcept; // C++20
351
+ constexpr bool starts_with(charT c) const noexcept; // C++20
352
+ constexpr bool starts_with(const charT* s) const; // C++20
353
+ constexpr bool ends_with(basic_string_view<charT, traits> sv) const noexcept; // C++20
354
+ constexpr bool ends_with(charT c) const noexcept; // C++20
355
+ constexpr bool ends_with(const charT* s) const; // C++20
356
+
357
+ constexpr bool contains(basic_string_view<charT, traits> sv) const noexcept; // C++23
358
+ constexpr bool contains(charT c) const noexcept; // C++23
359
+ constexpr bool contains(const charT* s) const; // C++23
360
+ };
361
+
362
+ template<class InputIterator,
363
+ class Allocator = allocator<typename iterator_traits<InputIterator>::value_type>>
364
+ basic_string(InputIterator, InputIterator, Allocator = Allocator())
365
+ -> basic_string<typename iterator_traits<InputIterator>::value_type,
366
+ char_traits<typename iterator_traits<InputIterator>::value_type>,
367
+ Allocator>; // C++17
368
+
369
+ template<ranges::input_range R,
370
+ class Allocator = allocator<ranges::range_value_t<R>>>
371
+ basic_string(from_range_t, R&&, Allocator = Allocator())
372
+ -> basic_string<ranges::range_value_t<R>, char_traits<ranges::range_value_t<R>>,
373
+ Allocator>; // C++23
374
+
375
+ template<class charT,
376
+ class traits,
377
+ class Allocator = allocator<charT>>
378
+ explicit basic_string(basic_string_view<charT, traits>, const Allocator& = Allocator())
379
+ -> basic_string<charT, traits, Allocator>; // C++17
380
+
381
+ template<class charT,
382
+ class traits,
383
+ class Allocator = allocator<charT>>
384
+ basic_string(basic_string_view<charT, traits>,
385
+ typename see below::size_type, typename see below::size_type,
386
+ const Allocator& = Allocator())
387
+ -> basic_string<charT, traits, Allocator>; // C++17
388
+
389
+ template<class charT, class traits, class Allocator>
390
+ basic_string<charT, traits, Allocator>
391
+ operator+(const basic_string<charT, traits, Allocator>& lhs,
392
+ const basic_string<charT, traits, Allocator>& rhs); // constexpr since C++20
393
+
394
+ template<class charT, class traits, class Allocator>
395
+ basic_string<charT, traits, Allocator>
396
+ operator+(const charT* lhs , const basic_string<charT,traits,Allocator>&rhs); // constexpr since C++20
397
+
398
+ template<class charT, class traits, class Allocator>
399
+ basic_string<charT, traits, Allocator>
400
+ operator+(charT lhs, const basic_string<charT,traits,Allocator>& rhs); // constexpr since C++20
401
+
402
+ template<class charT, class traits, class Allocator>
403
+ basic_string<charT, traits, Allocator>
404
+ operator+(const basic_string<charT, traits, Allocator>& lhs, const charT* rhs); // constexpr since C++20
405
+
406
+ template<class charT, class traits, class Allocator>
407
+ basic_string<charT, traits, Allocator>
408
+ operator+(const basic_string<charT, traits, Allocator>& lhs, charT rhs); // constexpr since C++20
409
+
410
+ template<class charT, class traits, class Allocator>
411
+ constexpr basic_string<charT, traits, Allocator>
412
+ operator+(const basic_string<charT, traits, Allocator>& lhs,
413
+ type_identity_t<basic_string_view<charT, traits>> rhs); // Since C++26
414
+ template<class charT, class traits, class Allocator>
415
+ constexpr basic_string<charT, traits, Allocator>
416
+ operator+(basic_string<charT, traits, Allocator>&& lhs,
417
+ type_identity_t<basic_string_view<charT, traits>> rhs); // Since C++26
418
+ template<class charT, class traits, class Allocator>
419
+ constexpr basic_string<charT, traits, Allocator>
420
+ operator+(type_identity_t<basic_string_view<charT, traits>> lhs,
421
+ const basic_string<charT, traits, Allocator>& rhs); // Since C++26
422
+ template<class charT, class traits, class Allocator>
423
+ constexpr basic_string<charT, traits, Allocator>
424
+ operator+(type_identity_t<basic_string_view<charT, traits>> lhs,
425
+ basic_string<charT, traits, Allocator>&& rhs); // Since C++26
426
+
427
+
428
+ template<class charT, class traits, class Allocator>
429
+ bool operator==(const basic_string<charT, traits, Allocator>& lhs,
430
+ const basic_string<charT, traits, Allocator>& rhs) noexcept; // constexpr since C++20
431
+
432
+ template<class charT, class traits, class Allocator>
433
+ bool operator==(const charT* lhs, const basic_string<charT, traits, Allocator>& rhs) noexcept; // removed in C++20
434
+
435
+ template<class charT, class traits, class Allocator>
436
+ bool operator==(const basic_string<charT,traits,Allocator>& lhs, const charT* rhs) noexcept; // constexpr since C++20
437
+
438
+ template<class charT, class traits, class Allocator>
439
+ bool operator!=(const basic_string<charT,traits,Allocator>& lhs,
440
+ const basic_string<charT, traits, Allocator>& rhs) noexcept; // removed in C++20
441
+
442
+ template<class charT, class traits, class Allocator>
443
+ bool operator!=(const charT* lhs, const basic_string<charT, traits, Allocator>& rhs) noexcept; // removed in C++20
444
+
445
+ template<class charT, class traits, class Allocator>
446
+ bool operator!=(const basic_string<charT, traits, Allocator>& lhs, const charT* rhs) noexcept; // removed in C++20
447
+
448
+ template<class charT, class traits, class Allocator>
449
+ bool operator< (const basic_string<charT, traits, Allocator>& lhs,
450
+ const basic_string<charT, traits, Allocator>& rhs) noexcept; // removed in C++20
451
+
452
+ template<class charT, class traits, class Allocator>
453
+ bool operator< (const basic_string<charT, traits, Allocator>& lhs, const charT* rhs) noexcept; // removed in C++20
454
+
455
+ template<class charT, class traits, class Allocator>
456
+ bool operator< (const charT* lhs, const basic_string<charT, traits, Allocator>& rhs) noexcept; // removed in C++20
457
+
458
+ template<class charT, class traits, class Allocator>
459
+ bool operator> (const basic_string<charT, traits, Allocator>& lhs,
460
+ const basic_string<charT, traits, Allocator>& rhs) noexcept; // removed in C++20
461
+
462
+ template<class charT, class traits, class Allocator>
463
+ bool operator> (const basic_string<charT, traits, Allocator>& lhs, const charT* rhs) noexcept; // removed in C++20
464
+
465
+ template<class charT, class traits, class Allocator>
466
+ bool operator> (const charT* lhs, const basic_string<charT, traits, Allocator>& rhs) noexcept; // removed in C++20
467
+
468
+ template<class charT, class traits, class Allocator>
469
+ bool operator<=(const basic_string<charT, traits, Allocator>& lhs,
470
+ const basic_string<charT, traits, Allocator>& rhs) noexcept; // removed in C++20
471
+
472
+ template<class charT, class traits, class Allocator>
473
+ bool operator<=(const basic_string<charT, traits, Allocator>& lhs, const charT* rhs) noexcept; // removed in C++20
474
+
475
+ template<class charT, class traits, class Allocator>
476
+ bool operator<=(const charT* lhs, const basic_string<charT, traits, Allocator>& rhs) noexcept; // removed in C++20
477
+
478
+ template<class charT, class traits, class Allocator>
479
+ bool operator>=(const basic_string<charT, traits, Allocator>& lhs,
480
+ const basic_string<charT, traits, Allocator>& rhs) noexcept; // removed in C++20
481
+
482
+ template<class charT, class traits, class Allocator>
483
+ bool operator>=(const basic_string<charT, traits, Allocator>& lhs, const charT* rhs) noexcept; // removed in C++20
484
+
485
+ template<class charT, class traits, class Allocator>
486
+ bool operator>=(const charT* lhs, const basic_string<charT, traits, Allocator>& rhs) noexcept; // removed in C++20
487
+
488
+ template<class charT, class traits, class Allocator> // since C++20
489
+ constexpr see below operator<=>(const basic_string<charT, traits, Allocator>& lhs,
490
+ const basic_string<charT, traits, Allocator>& rhs) noexcept;
491
+
492
+ template<class charT, class traits, class Allocator> // since C++20
493
+ constexpr see below operator<=>(const basic_string<charT, traits, Allocator>& lhs,
494
+ const charT* rhs) noexcept;
495
+
496
+ template<class charT, class traits, class Allocator>
497
+ void swap(basic_string<charT, traits, Allocator>& lhs,
498
+ basic_string<charT, traits, Allocator>& rhs)
499
+ noexcept(noexcept(lhs.swap(rhs))); // constexpr since C++20
500
+
501
+ template<class charT, class traits, class Allocator>
502
+ basic_istream<charT, traits>&
503
+ operator>>(basic_istream<charT, traits>& is, basic_string<charT, traits, Allocator>& str);
504
+
505
+ template<class charT, class traits, class Allocator>
506
+ basic_ostream<charT, traits>&
507
+ operator<<(basic_ostream<charT, traits>& os, const basic_string<charT, traits, Allocator>& str);
508
+
509
+ template<class charT, class traits, class Allocator>
510
+ basic_istream<charT, traits>&
511
+ getline(basic_istream<charT, traits>& is, basic_string<charT, traits, Allocator>& str,
512
+ charT delim);
513
+
514
+ template<class charT, class traits, class Allocator>
515
+ basic_istream<charT, traits>&
516
+ getline(basic_istream<charT, traits>& is, basic_string<charT, traits, Allocator>& str);
517
+
518
+ template<class charT, class traits, class Allocator, class U>
519
+ typename basic_string<charT, traits, Allocator>::size_type
520
+ erase(basic_string<charT, traits, Allocator>& c, const U& value); // C++20
521
+ template<class charT, class traits, class Allocator, class Predicate>
522
+ typename basic_string<charT, traits, Allocator>::size_type
523
+ erase_if(basic_string<charT, traits, Allocator>& c, Predicate pred); // C++20
524
+
525
+ typedef basic_string<char> string;
526
+ typedef basic_string<wchar_t> wstring;
527
+ typedef basic_string<char8_t> u8string; // C++20
528
+ typedef basic_string<char16_t> u16string;
529
+ typedef basic_string<char32_t> u32string;
530
+
531
+ int stoi (const string& str, size_t* idx = nullptr, int base = 10);
532
+ long stol (const string& str, size_t* idx = nullptr, int base = 10);
533
+ unsigned long stoul (const string& str, size_t* idx = nullptr, int base = 10);
534
+ long long stoll (const string& str, size_t* idx = nullptr, int base = 10);
535
+ unsigned long long stoull(const string& str, size_t* idx = nullptr, int base = 10);
536
+
537
+ float stof (const string& str, size_t* idx = nullptr);
538
+ double stod (const string& str, size_t* idx = nullptr);
539
+ long double stold(const string& str, size_t* idx = nullptr);
540
+
541
+ string to_string(int val);
542
+ string to_string(unsigned val);
543
+ string to_string(long val);
544
+ string to_string(unsigned long val);
545
+ string to_string(long long val);
546
+ string to_string(unsigned long long val);
547
+ string to_string(float val);
548
+ string to_string(double val);
549
+ string to_string(long double val);
550
+
551
+ int stoi (const wstring& str, size_t* idx = nullptr, int base = 10);
552
+ long stol (const wstring& str, size_t* idx = nullptr, int base = 10);
553
+ unsigned long stoul (const wstring& str, size_t* idx = nullptr, int base = 10);
554
+ long long stoll (const wstring& str, size_t* idx = nullptr, int base = 10);
555
+ unsigned long long stoull(const wstring& str, size_t* idx = nullptr, int base = 10);
556
+
557
+ float stof (const wstring& str, size_t* idx = nullptr);
558
+ double stod (const wstring& str, size_t* idx = nullptr);
559
+ long double stold(const wstring& str, size_t* idx = nullptr);
560
+
561
+ wstring to_wstring(int val);
562
+ wstring to_wstring(unsigned val);
563
+ wstring to_wstring(long val);
564
+ wstring to_wstring(unsigned long val);
565
+ wstring to_wstring(long long val);
566
+ wstring to_wstring(unsigned long long val);
567
+ wstring to_wstring(float val);
568
+ wstring to_wstring(double val);
569
+ wstring to_wstring(long double val);
570
+
571
+ template <> struct hash<string>;
572
+ template <> struct hash<u8string>; // C++20
573
+ template <> struct hash<u16string>;
574
+ template <> struct hash<u32string>;
575
+ template <> struct hash<wstring>;
576
+
577
+ basic_string<char> operator""s( const char *str, size_t len ); // C++14, constexpr since C++20
578
+ basic_string<wchar_t> operator""s( const wchar_t *str, size_t len ); // C++14, constexpr since C++20
579
+ constexpr basic_string<char8_t> operator""s( const char8_t *str, size_t len ); // C++20
580
+ basic_string<char16_t> operator""s( const char16_t *str, size_t len ); // C++14, constexpr since C++20
581
+ basic_string<char32_t> operator""s( const char32_t *str, size_t len ); // C++14, constexpr since C++20
582
+
583
+ } // std
584
+
585
+ */
586
+
587
+ // clang-format on
588
+
589
+ #include <__cxx03/__algorithm/max.h>
590
+ #include <__cxx03/__algorithm/min.h>
591
+ #include <__cxx03/__algorithm/remove.h>
592
+ #include <__cxx03/__algorithm/remove_if.h>
593
+ #include <__cxx03/__assert>
594
+ #include <__cxx03/__config>
595
+ #include <__cxx03/__debug_utils/sanitizers.h>
596
+ #include <__cxx03/__functional/hash.h>
597
+ #include <__cxx03/__functional/unary_function.h>
598
+ #include <__cxx03/__fwd/string.h>
599
+ #include <__cxx03/__ios/fpos.h>
600
+ #include <__cxx03/__iterator/bounded_iter.h>
601
+ #include <__cxx03/__iterator/distance.h>
602
+ #include <__cxx03/__iterator/iterator_traits.h>
603
+ #include <__cxx03/__iterator/reverse_iterator.h>
604
+ #include <__cxx03/__iterator/wrap_iter.h>
605
+ #include <__cxx03/__memory/addressof.h>
606
+ #include <__cxx03/__memory/allocate_at_least.h>
607
+ #include <__cxx03/__memory/allocator.h>
608
+ #include <__cxx03/__memory/allocator_traits.h>
609
+ #include <__cxx03/__memory/compressed_pair.h>
610
+ #include <__cxx03/__memory/construct_at.h>
611
+ #include <__cxx03/__memory/pointer_traits.h>
612
+ #include <__cxx03/__memory/swap_allocator.h>
613
+ #include <__cxx03/__string/char_traits.h>
614
+ #include <__cxx03/__string/extern_template_lists.h>
615
+ #include <__cxx03/__type_traits/conditional.h>
616
+ #include <__cxx03/__type_traits/is_allocator.h>
617
+ #include <__cxx03/__type_traits/is_array.h>
618
+ #include <__cxx03/__type_traits/is_convertible.h>
619
+ #include <__cxx03/__type_traits/is_nothrow_assignable.h>
620
+ #include <__cxx03/__type_traits/is_nothrow_constructible.h>
621
+ #include <__cxx03/__type_traits/is_same.h>
622
+ #include <__cxx03/__type_traits/is_standard_layout.h>
623
+ #include <__cxx03/__type_traits/is_trivial.h>
624
+ #include <__cxx03/__type_traits/is_trivially_relocatable.h>
625
+ #include <__cxx03/__type_traits/noexcept_move_assign_container.h>
626
+ #include <__cxx03/__type_traits/remove_cvref.h>
627
+ #include <__cxx03/__type_traits/void_t.h>
628
+ #include <__cxx03/__utility/auto_cast.h>
629
+ #include <__cxx03/__utility/declval.h>
630
+ #include <__cxx03/__utility/forward.h>
631
+ #include <__cxx03/__utility/is_pointer_in_range.h>
632
+ #include <__cxx03/__utility/move.h>
633
+ #include <__cxx03/__utility/swap.h>
634
+ #include <__cxx03/__utility/unreachable.h>
635
+ #include <__cxx03/climits>
636
+ #include <__cxx03/cstdio> // EOF
637
+ #include <__cxx03/cstring>
638
+ #include <__cxx03/limits>
639
+ #include <__cxx03/stdexcept>
640
+ #include <__cxx03/string_view>
641
+ #include <__cxx03/version>
642
+
643
+ #ifndef _LIBCPP_HAS_NO_WIDE_CHARACTERS
644
+ # include <__cxx03/cwchar>
645
+ #endif
646
+
647
+ // standard-mandated includes
648
+
649
+ // [iterator.range]
650
+ #include <__cxx03/__iterator/access.h>
651
+
652
+ #if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)
653
+ # pragma GCC system_header
654
+ #endif
655
+
656
+ _LIBCPP_PUSH_MACROS
657
+ #include <__cxx03/__undef_macros>
658
+
659
+ #if !defined(_LIBCPP_HAS_NO_ASAN) && defined(_LIBCPP_INSTRUMENTED_WITH_ASAN)
660
+ # define _LIBCPP_STRING_INTERNAL_MEMORY_ACCESS __attribute__((__no_sanitize__("address")))
661
+ // This macro disables AddressSanitizer (ASan) instrumentation for a specific function,
662
+ // allowing memory accesses that would normally trigger ASan errors to proceed without crashing.
663
+ // This is useful for accessing parts of objects memory, which should not be accessed,
664
+ // such as unused bytes in short strings, that should never be accessed
665
+ // by other parts of the program.
666
+ #else
667
+ # define _LIBCPP_STRING_INTERNAL_MEMORY_ACCESS
668
+ #endif
669
+
670
+ _LIBCPP_BEGIN_NAMESPACE_STD
671
+
672
+ // basic_string
673
+
674
+ template <class _CharT, class _Traits, class _Allocator>
675
+ basic_string<_CharT, _Traits, _Allocator> _LIBCPP_HIDE_FROM_ABI
676
+ operator+(const basic_string<_CharT, _Traits, _Allocator>& __x, const basic_string<_CharT, _Traits, _Allocator>& __y);
677
+
678
+ template <class _CharT, class _Traits, class _Allocator>
679
+ _LIBCPP_HIDDEN basic_string<_CharT, _Traits, _Allocator>
680
+ operator+(const _CharT* __x, const basic_string<_CharT, _Traits, _Allocator>& __y);
681
+
682
+ template <class _CharT, class _Traits, class _Allocator>
683
+ _LIBCPP_HIDE_FROM_ABI basic_string<_CharT, _Traits, _Allocator>
684
+ operator+(_CharT __x, const basic_string<_CharT, _Traits, _Allocator>& __y);
685
+
686
+ template <class _CharT, class _Traits, class _Allocator>
687
+ inline _LIBCPP_HIDE_FROM_ABI basic_string<_CharT, _Traits, _Allocator>
688
+ operator+(const basic_string<_CharT, _Traits, _Allocator>& __x, const _CharT* __y);
689
+
690
+ template <class _CharT, class _Traits, class _Allocator>
691
+ _LIBCPP_HIDE_FROM_ABI basic_string<_CharT, _Traits, _Allocator>
692
+ operator+(const basic_string<_CharT, _Traits, _Allocator>& __x, _CharT __y);
693
+
694
+ extern template _LIBCPP_EXPORTED_FROM_ABI string operator+
695
+ <char, char_traits<char>, allocator<char> >(char const*, string const&);
696
+
697
+ template <class _Iter>
698
+ struct __string_is_trivial_iterator : public false_type {};
699
+
700
+ template <class _Tp>
701
+ struct __string_is_trivial_iterator<_Tp*> : public is_arithmetic<_Tp> {};
702
+
703
+ template <class _Iter>
704
+ struct __string_is_trivial_iterator<__wrap_iter<_Iter> > : public __string_is_trivial_iterator<_Iter> {};
705
+
706
+ template <class _CharT, class _Traits, class _Tp>
707
+ struct __can_be_converted_to_string_view
708
+ : public _BoolConstant< is_convertible<const _Tp&, basic_string_view<_CharT, _Traits> >::value &&
709
+ !is_convertible<const _Tp&, const _CharT*>::value > {};
710
+
711
+ struct __uninitialized_size_tag {};
712
+ struct __init_with_sentinel_tag {};
713
+
714
+ template <class _CharT, class _Traits, class _Allocator>
715
+ class basic_string {
716
+ private:
717
+ using __default_allocator_type = allocator<_CharT>;
718
+
719
+ public:
720
+ typedef basic_string __self;
721
+ typedef basic_string_view<_CharT, _Traits> __self_view;
722
+ typedef _Traits traits_type;
723
+ typedef _CharT value_type;
724
+ typedef _Allocator allocator_type;
725
+ typedef allocator_traits<allocator_type> __alloc_traits;
726
+ typedef typename __alloc_traits::size_type size_type;
727
+ typedef typename __alloc_traits::difference_type difference_type;
728
+ typedef value_type& reference;
729
+ typedef const value_type& const_reference;
730
+ typedef typename __alloc_traits::pointer pointer;
731
+ typedef typename __alloc_traits::const_pointer const_pointer;
732
+
733
+ // A basic_string contains the following members which may be trivially relocatable:
734
+ // - pointer: is currently assumed to be trivially relocatable, but is still checked in case that changes
735
+ // - size_type: is always trivially relocatable, since it has to be an integral type
736
+ // - value_type: is always trivially relocatable, since it has to be trivial
737
+ // - unsigned char: is a fundamental type, so it's trivially relocatable
738
+ // - allocator_type: may or may not be trivially relocatable, so it's checked
739
+ //
740
+ // This string implementation doesn't contain any references into itself. It only contains a bit that says whether
741
+ // it is in small or large string mode, so the entire structure is trivially relocatable if its members are.
742
+ #if !defined(_LIBCPP_HAS_NO_ASAN) && defined(_LIBCPP_INSTRUMENTED_WITH_ASAN)
743
+ // When compiling with AddressSanitizer (ASan), basic_string cannot be trivially
744
+ // relocatable. Because the object's memory might be poisoned when its content
745
+ // is kept inside objects memory (short string optimization), instead of in allocated
746
+ // external memory. In such cases, the destructor is responsible for unpoisoning
747
+ // the memory to avoid triggering false positives.
748
+ // Therefore it's crucial to ensure the destructor is called.
749
+ using __trivially_relocatable = void;
750
+ #else
751
+ using __trivially_relocatable = __conditional_t<
752
+ __libcpp_is_trivially_relocatable<allocator_type>::value && __libcpp_is_trivially_relocatable<pointer>::value,
753
+ basic_string,
754
+ void>;
755
+ #endif
756
+ #if !defined(_LIBCPP_HAS_NO_ASAN) && defined(_LIBCPP_INSTRUMENTED_WITH_ASAN)
757
+ _LIBCPP_HIDE_FROM_ABI pointer __asan_volatile_wrapper(pointer const& __ptr) const {
758
+ if (__libcpp_is_constant_evaluated())
759
+ return __ptr;
760
+
761
+ pointer volatile __copy_ptr = __ptr;
762
+
763
+ return const_cast<pointer&>(__copy_ptr);
764
+ }
765
+
766
+ _LIBCPP_HIDE_FROM_ABI const_pointer __asan_volatile_wrapper(const_pointer const& __ptr) const {
767
+ if (__libcpp_is_constant_evaluated())
768
+ return __ptr;
769
+
770
+ const_pointer volatile __copy_ptr = __ptr;
771
+
772
+ return const_cast<const_pointer&>(__copy_ptr);
773
+ }
774
+ # define _LIBCPP_ASAN_VOLATILE_WRAPPER(PTR) __asan_volatile_wrapper(PTR)
775
+ #else
776
+ # define _LIBCPP_ASAN_VOLATILE_WRAPPER(PTR) PTR
777
+ #endif
778
+
779
+ static_assert(!is_array<value_type>::value, "Character type of basic_string must not be an array");
780
+ static_assert(is_standard_layout<value_type>::value, "Character type of basic_string must be standard-layout");
781
+ static_assert(is_trivial<value_type>::value, "Character type of basic_string must be trivial");
782
+ static_assert(is_same<_CharT, typename traits_type::char_type>::value,
783
+ "traits_type::char_type must be the same type as CharT");
784
+ static_assert(is_same<typename allocator_type::value_type, value_type>::value,
785
+ "Allocator::value_type must be same type as value_type");
786
+ static_assert(__check_valid_allocator<allocator_type>::value, "");
787
+
788
+ #ifdef _LIBCPP_ABI_BOUNDED_ITERATORS_IN_STRING
789
+ // Users might provide custom allocators, and prior to C++20 we have no existing way to detect whether the allocator's
790
+ // pointer type is contiguous (though it has to be by the Standard). Using the wrapper type ensures the iterator is
791
+ // considered contiguous.
792
+ typedef __bounded_iter<__wrap_iter<pointer>> iterator;
793
+ typedef __bounded_iter<__wrap_iter<const_pointer>> const_iterator;
794
+ #else
795
+ typedef __wrap_iter<pointer> iterator;
796
+ typedef __wrap_iter<const_pointer> const_iterator;
797
+ #endif
798
+ typedef std::reverse_iterator<iterator> reverse_iterator;
799
+ typedef std::reverse_iterator<const_iterator> const_reverse_iterator;
800
+
801
+ private:
802
+ static_assert(CHAR_BIT == 8, "This implementation assumes that one byte contains 8 bits");
803
+
804
+ #ifdef _LIBCPP_ABI_ALTERNATE_STRING_LAYOUT
805
+
806
+ struct __long {
807
+ pointer __data_;
808
+ size_type __size_;
809
+ size_type __cap_ : sizeof(size_type) * CHAR_BIT - 1;
810
+ size_type __is_long_ : 1;
811
+ };
812
+
813
+ enum { __min_cap = (sizeof(__long) - 1) / sizeof(value_type) > 2 ? (sizeof(__long) - 1) / sizeof(value_type) : 2 };
814
+
815
+ struct __short {
816
+ value_type __data_[__min_cap];
817
+ unsigned char __padding_[sizeof(value_type) - 1];
818
+ unsigned char __size_ : 7;
819
+ unsigned char __is_long_ : 1;
820
+ };
821
+
822
+ // The __endian_factor is required because the field we use to store the size
823
+ // has one fewer bit than it would if it were not a bitfield.
824
+ //
825
+ // If the LSB is used to store the short-flag in the short string representation,
826
+ // we have to multiply the size by two when it is stored and divide it by two when
827
+ // it is loaded to make sure that we always store an even number. In the long string
828
+ // representation, we can ignore this because we can assume that we always allocate
829
+ // an even amount of value_types.
830
+ //
831
+ // If the MSB is used for the short-flag, the max_size() is numeric_limits<size_type>::max() / 2.
832
+ // This does not impact the short string representation, since we never need the MSB
833
+ // for representing the size of a short string anyway.
834
+
835
+ # ifdef _LIBCPP_BIG_ENDIAN
836
+ static const size_type __endian_factor = 2;
837
+ # else
838
+ static const size_type __endian_factor = 1;
839
+ # endif
840
+
841
+ #else // _LIBCPP_ABI_ALTERNATE_STRING_LAYOUT
842
+
843
+ # ifdef _LIBCPP_BIG_ENDIAN
844
+ static const size_type __endian_factor = 1;
845
+ # else
846
+ static const size_type __endian_factor = 2;
847
+ # endif
848
+
849
+ // Attribute 'packed' is used to keep the layout compatible with the
850
+ // previous definition that did not use bit fields. This is because on
851
+ // some platforms bit fields have a default size rather than the actual
852
+ // size used, e.g., it is 4 bytes on AIX. See D128285 for details.
853
+ struct __long {
854
+ struct _LIBCPP_PACKED {
855
+ size_type __is_long_ : 1;
856
+ size_type __cap_ : sizeof(size_type) * CHAR_BIT - 1;
857
+ };
858
+ size_type __size_;
859
+ pointer __data_;
860
+ };
861
+
862
+ enum { __min_cap = (sizeof(__long) - 1) / sizeof(value_type) > 2 ? (sizeof(__long) - 1) / sizeof(value_type) : 2 };
863
+
864
+ struct __short {
865
+ struct _LIBCPP_PACKED {
866
+ unsigned char __is_long_ : 1;
867
+ unsigned char __size_ : 7;
868
+ };
869
+ char __padding_[sizeof(value_type) - 1];
870
+ value_type __data_[__min_cap];
871
+ };
872
+
873
+ #endif // _LIBCPP_ABI_ALTERNATE_STRING_LAYOUT
874
+
875
+ static_assert(sizeof(__short) == (sizeof(value_type) * (__min_cap + 1)), "__short has an unexpected size.");
876
+
877
+ union __rep {
878
+ __short __s;
879
+ __long __l;
880
+ };
881
+
882
+ __compressed_pair<__rep, allocator_type> __r_;
883
+
884
+ // Construct a string with the given allocator and enough storage to hold `__size` characters, but
885
+ // don't initialize the characters. The contents of the string, including the null terminator, must be
886
+ // initialized separately.
887
+ _LIBCPP_HIDE_FROM_ABI explicit basic_string(__uninitialized_size_tag, size_type __size, const allocator_type& __a)
888
+ : __r_(__default_init_tag(), __a) {
889
+ if (__size > max_size())
890
+ __throw_length_error();
891
+ if (__fits_in_sso(__size)) {
892
+ __r_.first() = __rep();
893
+ __set_short_size(__size);
894
+ } else {
895
+ auto __capacity = __recommend(__size) + 1;
896
+ auto __allocation = __alloc_traits::allocate(__alloc(), __capacity);
897
+ __begin_lifetime(__allocation, __capacity);
898
+ __set_long_cap(__capacity);
899
+ __set_long_pointer(__allocation);
900
+ __set_long_size(__size);
901
+ }
902
+ __annotate_new(__size);
903
+ }
904
+
905
+ template <class _Iter, class _Sent>
906
+ _LIBCPP_HIDE_FROM_ABI basic_string(__init_with_sentinel_tag, _Iter __first, _Sent __last, const allocator_type& __a)
907
+ : __r_(__default_init_tag(), __a) {
908
+ __init_with_sentinel(std::move(__first), std::move(__last));
909
+ }
910
+
911
+ _LIBCPP_HIDE_FROM_ABI iterator __make_iterator(pointer __p) {
912
+ #ifdef _LIBCPP_ABI_BOUNDED_ITERATORS_IN_STRING
913
+ // Bound the iterator according to the size (and not the capacity, unlike vector).
914
+ //
915
+ // By the Standard, string iterators are generally not guaranteed to stay valid when the container is modified,
916
+ // regardless of whether reallocation occurs. This allows us to check for out-of-bounds accesses using logical size,
917
+ // a stricter check, since correct code can never rely on being able to access newly-added elements via an existing
918
+ // iterator.
919
+ return std::__make_bounded_iter(
920
+ std::__wrap_iter<pointer>(__p),
921
+ std::__wrap_iter<pointer>(__get_pointer()),
922
+ std::__wrap_iter<pointer>(__get_pointer() + size()));
923
+ #else
924
+ return iterator(__p);
925
+ #endif // _LIBCPP_ABI_BOUNDED_ITERATORS_IN_STRING
926
+ }
927
+
928
+ _LIBCPP_HIDE_FROM_ABI const_iterator __make_const_iterator(const_pointer __p) const {
929
+ #ifdef _LIBCPP_ABI_BOUNDED_ITERATORS_IN_STRING
930
+ // Bound the iterator according to the size (and not the capacity, unlike vector).
931
+ return std::__make_bounded_iter(
932
+ std::__wrap_iter<const_pointer>(__p),
933
+ std::__wrap_iter<const_pointer>(__get_pointer()),
934
+ std::__wrap_iter<const_pointer>(__get_pointer() + size()));
935
+ #else
936
+ return const_iterator(__p);
937
+ #endif // _LIBCPP_ABI_BOUNDED_ITERATORS_IN_STRING
938
+ }
939
+
940
+ public:
941
+ _LIBCPP_TEMPLATE_DATA_VIS static const size_type npos = -1;
942
+
943
+ _LIBCPP_HIDE_FROM_ABI basic_string() : __r_(__value_init_tag(), __default_init_tag()) { __annotate_new(0); }
944
+
945
+ _LIBCPP_HIDE_FROM_ABI explicit basic_string(const allocator_type& __a) : __r_(__value_init_tag(), __a) {
946
+ __annotate_new(0);
947
+ }
948
+
949
+ _LIBCPP_STRING_INTERNAL_MEMORY_ACCESS basic_string(const basic_string& __str)
950
+ : __r_(__default_init_tag(), __alloc_traits::select_on_container_copy_construction(__str.__alloc())) {
951
+ if (!__str.__is_long()) {
952
+ __r_.first() = __str.__r_.first();
953
+ __annotate_new(__get_short_size());
954
+ } else
955
+ __init_copy_ctor_external(std::__to_address(__str.__get_long_pointer()), __str.__get_long_size());
956
+ }
957
+
958
+ _LIBCPP_STRING_INTERNAL_MEMORY_ACCESS
959
+ basic_string(const basic_string& __str, const allocator_type& __a) : __r_(__default_init_tag(), __a) {
960
+ if (!__str.__is_long()) {
961
+ __r_.first() = __str.__r_.first();
962
+ __annotate_new(__get_short_size());
963
+ } else
964
+ __init_copy_ctor_external(std::__to_address(__str.__get_long_pointer()), __str.__get_long_size());
965
+ }
966
+
967
+ template <__enable_if_t<__is_allocator<_Allocator>::value, int> = 0>
968
+ _LIBCPP_HIDE_FROM_ABI basic_string(const _CharT* __s) : __r_(__default_init_tag(), __default_init_tag()) {
969
+ _LIBCPP_ASSERT_NON_NULL(__s != nullptr, "basic_string(const char*) detected nullptr");
970
+ __init(__s, traits_type::length(__s));
971
+ }
972
+
973
+ template <__enable_if_t<__is_allocator<_Allocator>::value, int> = 0>
974
+ _LIBCPP_HIDE_FROM_ABI basic_string(const _CharT* __s, const _Allocator& __a) : __r_(__default_init_tag(), __a) {
975
+ _LIBCPP_ASSERT_NON_NULL(__s != nullptr, "basic_string(const char*, allocator) detected nullptr");
976
+ __init(__s, traits_type::length(__s));
977
+ }
978
+
979
+ _LIBCPP_HIDE_FROM_ABI basic_string(const _CharT* __s, size_type __n)
980
+ : __r_(__default_init_tag(), __default_init_tag()) {
981
+ _LIBCPP_ASSERT_NON_NULL(__n == 0 || __s != nullptr, "basic_string(const char*, n) detected nullptr");
982
+ __init(__s, __n);
983
+ }
984
+
985
+ _LIBCPP_HIDE_FROM_ABI basic_string(const _CharT* __s, size_type __n, const _Allocator& __a)
986
+ : __r_(__default_init_tag(), __a) {
987
+ _LIBCPP_ASSERT_NON_NULL(__n == 0 || __s != nullptr, "basic_string(const char*, n, allocator) detected nullptr");
988
+ __init(__s, __n);
989
+ }
990
+
991
+ _LIBCPP_HIDE_FROM_ABI basic_string(size_type __n, _CharT __c) : __r_(__default_init_tag(), __default_init_tag()) {
992
+ __init(__n, __c);
993
+ }
994
+
995
+ template <__enable_if_t<__is_allocator<_Allocator>::value, int> = 0>
996
+ _LIBCPP_HIDE_FROM_ABI basic_string(size_type __n, _CharT __c, const _Allocator& __a)
997
+ : __r_(__default_init_tag(), __a) {
998
+ __init(__n, __c);
999
+ }
1000
+
1001
+ basic_string(const basic_string& __str, size_type __pos, size_type __n, const _Allocator& __a = _Allocator())
1002
+ : __r_(__default_init_tag(), __a) {
1003
+ size_type __str_sz = __str.size();
1004
+ if (__pos > __str_sz)
1005
+ __throw_out_of_range();
1006
+ __init(__str.data() + __pos, std::min(__n, __str_sz - __pos));
1007
+ }
1008
+
1009
+ _LIBCPP_HIDE_FROM_ABI basic_string(const basic_string& __str, size_type __pos, const _Allocator& __a = _Allocator())
1010
+ : __r_(__default_init_tag(), __a) {
1011
+ size_type __str_sz = __str.size();
1012
+ if (__pos > __str_sz)
1013
+ __throw_out_of_range();
1014
+ __init(__str.data() + __pos, __str_sz - __pos);
1015
+ }
1016
+
1017
+ template <class _Tp,
1018
+ __enable_if_t<__can_be_converted_to_string_view<_CharT, _Traits, _Tp>::value &&
1019
+ !__is_same_uncvref<_Tp, basic_string>::value,
1020
+ int> = 0>
1021
+ _LIBCPP_METHOD_TEMPLATE_IMPLICIT_INSTANTIATION_VIS
1022
+ basic_string(const _Tp& __t, size_type __pos, size_type __n, const allocator_type& __a = allocator_type())
1023
+ : __r_(__default_init_tag(), __a) {
1024
+ __self_view __sv0 = __t;
1025
+ __self_view __sv = __sv0.substr(__pos, __n);
1026
+ __init(__sv.data(), __sv.size());
1027
+ }
1028
+
1029
+ template <class _Tp,
1030
+ __enable_if_t<__can_be_converted_to_string_view<_CharT, _Traits, _Tp>::value &&
1031
+ !__is_same_uncvref<_Tp, basic_string>::value,
1032
+ int> = 0>
1033
+ _LIBCPP_METHOD_TEMPLATE_IMPLICIT_INSTANTIATION_VIS explicit basic_string(const _Tp& __t)
1034
+ : __r_(__default_init_tag(), __default_init_tag()) {
1035
+ __self_view __sv = __t;
1036
+ __init(__sv.data(), __sv.size());
1037
+ }
1038
+
1039
+ template <class _Tp,
1040
+ __enable_if_t<__can_be_converted_to_string_view<_CharT, _Traits, _Tp>::value &&
1041
+ !__is_same_uncvref<_Tp, basic_string>::value,
1042
+ int> = 0>
1043
+ _LIBCPP_METHOD_TEMPLATE_IMPLICIT_INSTANTIATION_VIS explicit basic_string(const _Tp& __t, const allocator_type& __a)
1044
+ : __r_(__default_init_tag(), __a) {
1045
+ __self_view __sv = __t;
1046
+ __init(__sv.data(), __sv.size());
1047
+ }
1048
+
1049
+ template <class _InputIterator, __enable_if_t<__has_input_iterator_category<_InputIterator>::value, int> = 0>
1050
+ _LIBCPP_HIDE_FROM_ABI basic_string(_InputIterator __first, _InputIterator __last)
1051
+ : __r_(__default_init_tag(), __default_init_tag()) {
1052
+ __init(__first, __last);
1053
+ }
1054
+
1055
+ template <class _InputIterator, __enable_if_t<__has_input_iterator_category<_InputIterator>::value, int> = 0>
1056
+ _LIBCPP_HIDE_FROM_ABI basic_string(_InputIterator __first, _InputIterator __last, const allocator_type& __a)
1057
+ : __r_(__default_init_tag(), __a) {
1058
+ __init(__first, __last);
1059
+ }
1060
+
1061
+ inline ~basic_string() {
1062
+ __annotate_delete();
1063
+ if (__is_long())
1064
+ __alloc_traits::deallocate(__alloc(), __get_long_pointer(), __get_long_cap());
1065
+ }
1066
+
1067
+ _LIBCPP_HIDE_FROM_ABI operator __self_view() const _NOEXCEPT { return __self_view(data(), size()); }
1068
+
1069
+ _LIBCPP_STRING_INTERNAL_MEMORY_ACCESS basic_string& operator=(const basic_string& __str);
1070
+
1071
+ template <class _Tp,
1072
+ __enable_if_t<__can_be_converted_to_string_view<_CharT, _Traits, _Tp>::value &&
1073
+ !__is_same_uncvref<_Tp, basic_string>::value,
1074
+ int> = 0>
1075
+ basic_string& operator=(const _Tp& __t) {
1076
+ __self_view __sv = __t;
1077
+ return assign(__sv);
1078
+ }
1079
+
1080
+ _LIBCPP_HIDE_FROM_ABI basic_string& operator=(const value_type* __s) { return assign(__s); }
1081
+ basic_string& operator=(value_type __c);
1082
+
1083
+ _LIBCPP_HIDE_FROM_ABI iterator begin() _NOEXCEPT { return __make_iterator(__get_pointer()); }
1084
+ _LIBCPP_HIDE_FROM_ABI const_iterator begin() const _NOEXCEPT { return __make_const_iterator(__get_pointer()); }
1085
+ _LIBCPP_HIDE_FROM_ABI iterator end() _NOEXCEPT { return __make_iterator(__get_pointer() + size()); }
1086
+ _LIBCPP_HIDE_FROM_ABI const_iterator end() const _NOEXCEPT { return __make_const_iterator(__get_pointer() + size()); }
1087
+
1088
+ _LIBCPP_HIDE_FROM_ABI reverse_iterator rbegin() _NOEXCEPT { return reverse_iterator(end()); }
1089
+ _LIBCPP_HIDE_FROM_ABI const_reverse_iterator rbegin() const _NOEXCEPT { return const_reverse_iterator(end()); }
1090
+ _LIBCPP_HIDE_FROM_ABI reverse_iterator rend() _NOEXCEPT { return reverse_iterator(begin()); }
1091
+ _LIBCPP_HIDE_FROM_ABI const_reverse_iterator rend() const _NOEXCEPT { return const_reverse_iterator(begin()); }
1092
+
1093
+ _LIBCPP_HIDE_FROM_ABI const_iterator cbegin() const _NOEXCEPT { return begin(); }
1094
+ _LIBCPP_HIDE_FROM_ABI const_iterator cend() const _NOEXCEPT { return end(); }
1095
+ _LIBCPP_HIDE_FROM_ABI const_reverse_iterator crbegin() const _NOEXCEPT { return rbegin(); }
1096
+ _LIBCPP_HIDE_FROM_ABI const_reverse_iterator crend() const _NOEXCEPT { return rend(); }
1097
+
1098
+ _LIBCPP_HIDE_FROM_ABI size_type size() const _NOEXCEPT {
1099
+ return __is_long() ? __get_long_size() : __get_short_size();
1100
+ }
1101
+ _LIBCPP_HIDE_FROM_ABI size_type length() const _NOEXCEPT { return size(); }
1102
+
1103
+ _LIBCPP_HIDE_FROM_ABI size_type max_size() const _NOEXCEPT {
1104
+ size_type __m = __alloc_traits::max_size(__alloc());
1105
+ if (__m <= std::numeric_limits<size_type>::max() / 2) {
1106
+ return __m - __alignment;
1107
+ } else {
1108
+ bool __uses_lsb = __endian_factor == 2;
1109
+ return __uses_lsb ? __m - __alignment : (__m / 2) - __alignment;
1110
+ }
1111
+ }
1112
+
1113
+ _LIBCPP_HIDE_FROM_ABI size_type capacity() const _NOEXCEPT {
1114
+ return (__is_long() ? __get_long_cap() : static_cast<size_type>(__min_cap)) - 1;
1115
+ }
1116
+
1117
+ void resize(size_type __n, value_type __c);
1118
+ _LIBCPP_HIDE_FROM_ABI void resize(size_type __n) { resize(__n, value_type()); }
1119
+
1120
+ void reserve(size_type __requested_capacity);
1121
+
1122
+ _LIBCPP_HIDE_FROM_ABI void __resize_default_init(size_type __n);
1123
+
1124
+ _LIBCPP_HIDE_FROM_ABI void reserve() _NOEXCEPT { shrink_to_fit(); }
1125
+ _LIBCPP_HIDE_FROM_ABI void shrink_to_fit() _NOEXCEPT;
1126
+ _LIBCPP_HIDE_FROM_ABI void clear() _NOEXCEPT;
1127
+
1128
+ _LIBCPP_NODISCARD _LIBCPP_HIDE_FROM_ABI bool empty() const _NOEXCEPT { return size() == 0; }
1129
+
1130
+ _LIBCPP_HIDE_FROM_ABI const_reference operator[](size_type __pos) const _NOEXCEPT {
1131
+ _LIBCPP_ASSERT_VALID_ELEMENT_ACCESS(__pos <= size(), "string index out of bounds");
1132
+ if (__builtin_constant_p(__pos) && !__fits_in_sso(__pos)) {
1133
+ return *(__get_long_pointer() + __pos);
1134
+ }
1135
+ return *(data() + __pos);
1136
+ }
1137
+
1138
+ _LIBCPP_HIDE_FROM_ABI reference operator[](size_type __pos) _NOEXCEPT {
1139
+ _LIBCPP_ASSERT_VALID_ELEMENT_ACCESS(__pos <= size(), "string index out of bounds");
1140
+ if (__builtin_constant_p(__pos) && !__fits_in_sso(__pos)) {
1141
+ return *(__get_long_pointer() + __pos);
1142
+ }
1143
+ return *(__get_pointer() + __pos);
1144
+ }
1145
+
1146
+ const_reference at(size_type __n) const;
1147
+ reference at(size_type __n);
1148
+
1149
+ _LIBCPP_HIDE_FROM_ABI basic_string& operator+=(const basic_string& __str) { return append(__str); }
1150
+
1151
+ template <class _Tp,
1152
+ __enable_if_t<__can_be_converted_to_string_view<_CharT, _Traits, _Tp>::value &&
1153
+ !__is_same_uncvref<_Tp, basic_string >::value,
1154
+ int> = 0>
1155
+ _LIBCPP_METHOD_TEMPLATE_IMPLICIT_INSTANTIATION_VIS basic_string& operator+=(const _Tp& __t) {
1156
+ __self_view __sv = __t;
1157
+ return append(__sv);
1158
+ }
1159
+
1160
+ _LIBCPP_HIDE_FROM_ABI basic_string& operator+=(const value_type* __s) { return append(__s); }
1161
+
1162
+ _LIBCPP_HIDE_FROM_ABI basic_string& operator+=(value_type __c) {
1163
+ push_back(__c);
1164
+ return *this;
1165
+ }
1166
+
1167
+ _LIBCPP_HIDE_FROM_ABI basic_string& append(const basic_string& __str) { return append(__str.data(), __str.size()); }
1168
+
1169
+ template <class _Tp,
1170
+ __enable_if_t<__can_be_converted_to_string_view<_CharT, _Traits, _Tp>::value &&
1171
+ !__is_same_uncvref<_Tp, basic_string>::value,
1172
+ int> = 0>
1173
+ _LIBCPP_METHOD_TEMPLATE_IMPLICIT_INSTANTIATION_VIS basic_string& append(const _Tp& __t) {
1174
+ __self_view __sv = __t;
1175
+ return append(__sv.data(), __sv.size());
1176
+ }
1177
+
1178
+ basic_string& append(const basic_string& __str, size_type __pos, size_type __n = npos);
1179
+
1180
+ template <class _Tp,
1181
+ __enable_if_t<__can_be_converted_to_string_view<_CharT, _Traits, _Tp>::value &&
1182
+ !__is_same_uncvref<_Tp, basic_string>::value,
1183
+ int> = 0>
1184
+ _LIBCPP_METHOD_TEMPLATE_IMPLICIT_INSTANTIATION_VIS basic_string&
1185
+ append(const _Tp& __t, size_type __pos, size_type __n = npos);
1186
+
1187
+ basic_string& append(const value_type* __s, size_type __n);
1188
+ basic_string& append(const value_type* __s);
1189
+ basic_string& append(size_type __n, value_type __c);
1190
+
1191
+ _LIBCPP_HIDE_FROM_ABI void __append_default_init(size_type __n);
1192
+
1193
+ template <class _InputIterator, __enable_if_t<__has_exactly_input_iterator_category<_InputIterator>::value, int> = 0>
1194
+ _LIBCPP_METHOD_TEMPLATE_IMPLICIT_INSTANTIATION_VIS _LIBCPP_HIDE_FROM_ABI basic_string&
1195
+ append(_InputIterator __first, _InputIterator __last) {
1196
+ const basic_string __temp(__first, __last, __alloc());
1197
+ append(__temp.data(), __temp.size());
1198
+ return *this;
1199
+ }
1200
+
1201
+ template <class _ForwardIterator, __enable_if_t<__has_forward_iterator_category<_ForwardIterator>::value, int> = 0>
1202
+ _LIBCPP_METHOD_TEMPLATE_IMPLICIT_INSTANTIATION_VIS _LIBCPP_HIDE_FROM_ABI basic_string&
1203
+ append(_ForwardIterator __first, _ForwardIterator __last);
1204
+
1205
+ void push_back(value_type __c);
1206
+ _LIBCPP_HIDE_FROM_ABI void pop_back();
1207
+
1208
+ _LIBCPP_HIDE_FROM_ABI reference front() _NOEXCEPT {
1209
+ _LIBCPP_ASSERT_VALID_ELEMENT_ACCESS(!empty(), "string::front(): string is empty");
1210
+ return *__get_pointer();
1211
+ }
1212
+
1213
+ _LIBCPP_HIDE_FROM_ABI const_reference front() const _NOEXCEPT {
1214
+ _LIBCPP_ASSERT_VALID_ELEMENT_ACCESS(!empty(), "string::front(): string is empty");
1215
+ return *data();
1216
+ }
1217
+
1218
+ _LIBCPP_HIDE_FROM_ABI reference back() _NOEXCEPT {
1219
+ _LIBCPP_ASSERT_VALID_ELEMENT_ACCESS(!empty(), "string::back(): string is empty");
1220
+ return *(__get_pointer() + size() - 1);
1221
+ }
1222
+
1223
+ _LIBCPP_HIDE_FROM_ABI const_reference back() const _NOEXCEPT {
1224
+ _LIBCPP_ASSERT_VALID_ELEMENT_ACCESS(!empty(), "string::back(): string is empty");
1225
+ return *(data() + size() - 1);
1226
+ }
1227
+
1228
+ template <class _Tp, __enable_if_t<__can_be_converted_to_string_view<_CharT, _Traits, _Tp>::value, int> = 0>
1229
+ _LIBCPP_METHOD_TEMPLATE_IMPLICIT_INSTANTIATION_VIS basic_string& assign(const _Tp& __t) {
1230
+ __self_view __sv = __t;
1231
+ return assign(__sv.data(), __sv.size());
1232
+ }
1233
+
1234
+ _LIBCPP_HIDE_FROM_ABI basic_string& assign(const basic_string& __str) { return *this = __str; }
1235
+
1236
+ basic_string& assign(const basic_string& __str, size_type __pos, size_type __n = npos);
1237
+
1238
+ template <class _Tp,
1239
+ __enable_if_t<__can_be_converted_to_string_view<_CharT, _Traits, _Tp>::value &&
1240
+ !__is_same_uncvref<_Tp, basic_string>::value,
1241
+ int> = 0>
1242
+ _LIBCPP_METHOD_TEMPLATE_IMPLICIT_INSTANTIATION_VIS basic_string&
1243
+ assign(const _Tp& __t, size_type __pos, size_type __n = npos);
1244
+
1245
+ basic_string& assign(const value_type* __s, size_type __n);
1246
+ basic_string& assign(const value_type* __s);
1247
+ basic_string& assign(size_type __n, value_type __c);
1248
+ template <class _InputIterator, __enable_if_t<__has_exactly_input_iterator_category<_InputIterator>::value, int> = 0>
1249
+ _LIBCPP_METHOD_TEMPLATE_IMPLICIT_INSTANTIATION_VIS basic_string&
1250
+ assign(_InputIterator __first, _InputIterator __last);
1251
+
1252
+ template <class _ForwardIterator, __enable_if_t<__has_forward_iterator_category<_ForwardIterator>::value, int> = 0>
1253
+ _LIBCPP_METHOD_TEMPLATE_IMPLICIT_INSTANTIATION_VIS basic_string&
1254
+ assign(_ForwardIterator __first, _ForwardIterator __last);
1255
+
1256
+ _LIBCPP_HIDE_FROM_ABI basic_string& insert(size_type __pos1, const basic_string& __str) {
1257
+ return insert(__pos1, __str.data(), __str.size());
1258
+ }
1259
+
1260
+ template <class _Tp, __enable_if_t<__can_be_converted_to_string_view<_CharT, _Traits, _Tp>::value, int> = 0>
1261
+ _LIBCPP_METHOD_TEMPLATE_IMPLICIT_INSTANTIATION_VIS basic_string& insert(size_type __pos1, const _Tp& __t) {
1262
+ __self_view __sv = __t;
1263
+ return insert(__pos1, __sv.data(), __sv.size());
1264
+ }
1265
+
1266
+ template <class _Tp,
1267
+ __enable_if_t<__can_be_converted_to_string_view<_CharT, _Traits, _Tp>::value &&
1268
+ !__is_same_uncvref<_Tp, basic_string>::value,
1269
+ int> = 0>
1270
+ _LIBCPP_METHOD_TEMPLATE_IMPLICIT_INSTANTIATION_VIS basic_string&
1271
+ insert(size_type __pos1, const _Tp& __t, size_type __pos2, size_type __n = npos);
1272
+
1273
+ basic_string& insert(size_type __pos1, const basic_string& __str, size_type __pos2, size_type __n = npos);
1274
+ basic_string& insert(size_type __pos, const value_type* __s, size_type __n);
1275
+ basic_string& insert(size_type __pos, const value_type* __s);
1276
+ basic_string& insert(size_type __pos, size_type __n, value_type __c);
1277
+ iterator insert(const_iterator __pos, value_type __c);
1278
+
1279
+ _LIBCPP_HIDE_FROM_ABI iterator insert(const_iterator __pos, size_type __n, value_type __c) {
1280
+ difference_type __p = __pos - begin();
1281
+ insert(static_cast<size_type>(__p), __n, __c);
1282
+ return begin() + __p;
1283
+ }
1284
+
1285
+ template <class _InputIterator, __enable_if_t<__has_exactly_input_iterator_category<_InputIterator>::value, int> = 0>
1286
+ _LIBCPP_METHOD_TEMPLATE_IMPLICIT_INSTANTIATION_VIS iterator
1287
+ insert(const_iterator __pos, _InputIterator __first, _InputIterator __last);
1288
+
1289
+ template <class _ForwardIterator, __enable_if_t<__has_forward_iterator_category<_ForwardIterator>::value, int> = 0>
1290
+ _LIBCPP_METHOD_TEMPLATE_IMPLICIT_INSTANTIATION_VIS iterator
1291
+ insert(const_iterator __pos, _ForwardIterator __first, _ForwardIterator __last);
1292
+
1293
+ basic_string& erase(size_type __pos = 0, size_type __n = npos);
1294
+ _LIBCPP_HIDE_FROM_ABI iterator erase(const_iterator __pos);
1295
+ _LIBCPP_HIDE_FROM_ABI iterator erase(const_iterator __first, const_iterator __last);
1296
+
1297
+ _LIBCPP_HIDE_FROM_ABI basic_string& replace(size_type __pos1, size_type __n1, const basic_string& __str) {
1298
+ return replace(__pos1, __n1, __str.data(), __str.size());
1299
+ }
1300
+
1301
+ template <class _Tp, __enable_if_t<__can_be_converted_to_string_view<_CharT, _Traits, _Tp>::value, int> = 0>
1302
+ _LIBCPP_METHOD_TEMPLATE_IMPLICIT_INSTANTIATION_VIS basic_string&
1303
+ replace(size_type __pos1, size_type __n1, const _Tp& __t) {
1304
+ __self_view __sv = __t;
1305
+ return replace(__pos1, __n1, __sv.data(), __sv.size());
1306
+ }
1307
+
1308
+ basic_string&
1309
+ replace(size_type __pos1, size_type __n1, const basic_string& __str, size_type __pos2, size_type __n2 = npos);
1310
+
1311
+ template <class _Tp,
1312
+ __enable_if_t<__can_be_converted_to_string_view<_CharT, _Traits, _Tp>::value &&
1313
+ !__is_same_uncvref<_Tp, basic_string>::value,
1314
+ int> = 0>
1315
+ _LIBCPP_METHOD_TEMPLATE_IMPLICIT_INSTANTIATION_VIS basic_string&
1316
+ replace(size_type __pos1, size_type __n1, const _Tp& __t, size_type __pos2, size_type __n2 = npos);
1317
+
1318
+ basic_string& replace(size_type __pos, size_type __n1, const value_type* __s, size_type __n2);
1319
+ basic_string& replace(size_type __pos, size_type __n1, const value_type* __s);
1320
+ basic_string& replace(size_type __pos, size_type __n1, size_type __n2, value_type __c);
1321
+
1322
+ _LIBCPP_HIDE_FROM_ABI basic_string& replace(const_iterator __i1, const_iterator __i2, const basic_string& __str) {
1323
+ return replace(
1324
+ static_cast<size_type>(__i1 - begin()), static_cast<size_type>(__i2 - __i1), __str.data(), __str.size());
1325
+ }
1326
+
1327
+ template <class _Tp, __enable_if_t<__can_be_converted_to_string_view<_CharT, _Traits, _Tp>::value, int> = 0>
1328
+ _LIBCPP_METHOD_TEMPLATE_IMPLICIT_INSTANTIATION_VIS basic_string&
1329
+ replace(const_iterator __i1, const_iterator __i2, const _Tp& __t) {
1330
+ __self_view __sv = __t;
1331
+ return replace(__i1 - begin(), __i2 - __i1, __sv);
1332
+ }
1333
+
1334
+ _LIBCPP_HIDE_FROM_ABI basic_string&
1335
+ replace(const_iterator __i1, const_iterator __i2, const value_type* __s, size_type __n) {
1336
+ return replace(static_cast<size_type>(__i1 - begin()), static_cast<size_type>(__i2 - __i1), __s, __n);
1337
+ }
1338
+
1339
+ _LIBCPP_HIDE_FROM_ABI basic_string& replace(const_iterator __i1, const_iterator __i2, const value_type* __s) {
1340
+ return replace(static_cast<size_type>(__i1 - begin()), static_cast<size_type>(__i2 - __i1), __s);
1341
+ }
1342
+
1343
+ _LIBCPP_HIDE_FROM_ABI basic_string& replace(const_iterator __i1, const_iterator __i2, size_type __n, value_type __c) {
1344
+ return replace(static_cast<size_type>(__i1 - begin()), static_cast<size_type>(__i2 - __i1), __n, __c);
1345
+ }
1346
+
1347
+ template <class _InputIterator, __enable_if_t<__has_input_iterator_category<_InputIterator>::value, int> = 0>
1348
+ _LIBCPP_METHOD_TEMPLATE_IMPLICIT_INSTANTIATION_VIS basic_string&
1349
+ replace(const_iterator __i1, const_iterator __i2, _InputIterator __j1, _InputIterator __j2);
1350
+
1351
+ size_type copy(value_type* __s, size_type __n, size_type __pos = 0) const;
1352
+
1353
+ _LIBCPP_HIDE_FROM_ABI basic_string substr(size_type __pos = 0, size_type __n = npos) const {
1354
+ return basic_string(*this, __pos, __n);
1355
+ }
1356
+
1357
+ _LIBCPP_HIDE_FROM_ABI void swap(basic_string& __str);
1358
+
1359
+ _LIBCPP_HIDE_FROM_ABI const value_type* c_str() const _NOEXCEPT { return data(); }
1360
+ _LIBCPP_HIDE_FROM_ABI const value_type* data() const _NOEXCEPT { return std::__to_address(__get_pointer()); }
1361
+
1362
+ _LIBCPP_HIDE_FROM_ABI allocator_type get_allocator() const _NOEXCEPT { return __alloc(); }
1363
+
1364
+ _LIBCPP_HIDE_FROM_ABI size_type find(const basic_string& __str, size_type __pos = 0) const _NOEXCEPT;
1365
+
1366
+ template <class _Tp, __enable_if_t<__can_be_converted_to_string_view<_CharT, _Traits, _Tp>::value, int> = 0>
1367
+ _LIBCPP_METHOD_TEMPLATE_IMPLICIT_INSTANTIATION_VIS size_type
1368
+ find(const _Tp& __t, size_type __pos = 0) const _NOEXCEPT;
1369
+
1370
+ size_type find(const value_type* __s, size_type __pos, size_type __n) const _NOEXCEPT;
1371
+ _LIBCPP_HIDE_FROM_ABI size_type find(const value_type* __s, size_type __pos = 0) const _NOEXCEPT;
1372
+ size_type find(value_type __c, size_type __pos = 0) const _NOEXCEPT;
1373
+
1374
+ _LIBCPP_HIDE_FROM_ABI size_type rfind(const basic_string& __str, size_type __pos = npos) const _NOEXCEPT;
1375
+
1376
+ template <class _Tp, __enable_if_t<__can_be_converted_to_string_view<_CharT, _Traits, _Tp>::value, int> = 0>
1377
+ _LIBCPP_METHOD_TEMPLATE_IMPLICIT_INSTANTIATION_VIS size_type
1378
+ rfind(const _Tp& __t, size_type __pos = npos) const _NOEXCEPT;
1379
+
1380
+ size_type rfind(const value_type* __s, size_type __pos, size_type __n) const _NOEXCEPT;
1381
+ _LIBCPP_HIDE_FROM_ABI size_type rfind(const value_type* __s, size_type __pos = npos) const _NOEXCEPT;
1382
+ size_type rfind(value_type __c, size_type __pos = npos) const _NOEXCEPT;
1383
+
1384
+ _LIBCPP_HIDE_FROM_ABI size_type find_first_of(const basic_string& __str, size_type __pos = 0) const _NOEXCEPT;
1385
+
1386
+ template <class _Tp, __enable_if_t<__can_be_converted_to_string_view<_CharT, _Traits, _Tp>::value, int> = 0>
1387
+ _LIBCPP_METHOD_TEMPLATE_IMPLICIT_INSTANTIATION_VIS size_type
1388
+ find_first_of(const _Tp& __t, size_type __pos = 0) const _NOEXCEPT;
1389
+
1390
+ size_type find_first_of(const value_type* __s, size_type __pos, size_type __n) const _NOEXCEPT;
1391
+ _LIBCPP_HIDE_FROM_ABI size_type find_first_of(const value_type* __s, size_type __pos = 0) const _NOEXCEPT;
1392
+ _LIBCPP_HIDE_FROM_ABI size_type find_first_of(value_type __c, size_type __pos = 0) const _NOEXCEPT;
1393
+
1394
+ _LIBCPP_HIDE_FROM_ABI size_type find_last_of(const basic_string& __str, size_type __pos = npos) const _NOEXCEPT;
1395
+
1396
+ template <class _Tp, __enable_if_t<__can_be_converted_to_string_view<_CharT, _Traits, _Tp>::value, int> = 0>
1397
+ _LIBCPP_METHOD_TEMPLATE_IMPLICIT_INSTANTIATION_VIS size_type
1398
+ find_last_of(const _Tp& __t, size_type __pos = npos) const _NOEXCEPT;
1399
+
1400
+ size_type find_last_of(const value_type* __s, size_type __pos, size_type __n) const _NOEXCEPT;
1401
+ _LIBCPP_HIDE_FROM_ABI size_type find_last_of(const value_type* __s, size_type __pos = npos) const _NOEXCEPT;
1402
+ _LIBCPP_HIDE_FROM_ABI size_type find_last_of(value_type __c, size_type __pos = npos) const _NOEXCEPT;
1403
+
1404
+ _LIBCPP_HIDE_FROM_ABI size_type find_first_not_of(const basic_string& __str, size_type __pos = 0) const _NOEXCEPT;
1405
+
1406
+ template <class _Tp, __enable_if_t<__can_be_converted_to_string_view<_CharT, _Traits, _Tp>::value, int> = 0>
1407
+ _LIBCPP_METHOD_TEMPLATE_IMPLICIT_INSTANTIATION_VIS size_type
1408
+ find_first_not_of(const _Tp& __t, size_type __pos = 0) const _NOEXCEPT;
1409
+
1410
+ size_type find_first_not_of(const value_type* __s, size_type __pos, size_type __n) const _NOEXCEPT;
1411
+ _LIBCPP_HIDE_FROM_ABI size_type find_first_not_of(const value_type* __s, size_type __pos = 0) const _NOEXCEPT;
1412
+ _LIBCPP_HIDE_FROM_ABI size_type find_first_not_of(value_type __c, size_type __pos = 0) const _NOEXCEPT;
1413
+
1414
+ _LIBCPP_HIDE_FROM_ABI size_type find_last_not_of(const basic_string& __str, size_type __pos = npos) const _NOEXCEPT;
1415
+
1416
+ template <class _Tp, __enable_if_t<__can_be_converted_to_string_view<_CharT, _Traits, _Tp>::value, int> = 0>
1417
+ _LIBCPP_METHOD_TEMPLATE_IMPLICIT_INSTANTIATION_VIS size_type
1418
+ find_last_not_of(const _Tp& __t, size_type __pos = npos) const _NOEXCEPT;
1419
+
1420
+ size_type find_last_not_of(const value_type* __s, size_type __pos, size_type __n) const _NOEXCEPT;
1421
+ _LIBCPP_HIDE_FROM_ABI size_type find_last_not_of(const value_type* __s, size_type __pos = npos) const _NOEXCEPT;
1422
+ _LIBCPP_HIDE_FROM_ABI size_type find_last_not_of(value_type __c, size_type __pos = npos) const _NOEXCEPT;
1423
+
1424
+ _LIBCPP_HIDE_FROM_ABI int compare(const basic_string& __str) const _NOEXCEPT;
1425
+
1426
+ template <class _Tp, __enable_if_t<__can_be_converted_to_string_view<_CharT, _Traits, _Tp>::value, int> = 0>
1427
+ _LIBCPP_METHOD_TEMPLATE_IMPLICIT_INSTANTIATION_VIS int compare(const _Tp& __t) const _NOEXCEPT;
1428
+
1429
+ template <class _Tp, __enable_if_t<__can_be_converted_to_string_view<_CharT, _Traits, _Tp>::value, int> = 0>
1430
+ _LIBCPP_METHOD_TEMPLATE_IMPLICIT_INSTANTIATION_VIS int
1431
+ compare(size_type __pos1, size_type __n1, const _Tp& __t) const;
1432
+
1433
+ _LIBCPP_HIDE_FROM_ABI int compare(size_type __pos1, size_type __n1, const basic_string& __str) const;
1434
+ int compare(
1435
+ size_type __pos1, size_type __n1, const basic_string& __str, size_type __pos2, size_type __n2 = npos) const;
1436
+
1437
+ template <class _Tp,
1438
+ __enable_if_t<__can_be_converted_to_string_view<_CharT, _Traits, _Tp>::value &&
1439
+ !__is_same_uncvref<_Tp, basic_string>::value,
1440
+ int> = 0>
1441
+ inline _LIBCPP_HIDE_FROM_ABI int
1442
+ compare(size_type __pos1, size_type __n1, const _Tp& __t, size_type __pos2, size_type __n2 = npos) const;
1443
+
1444
+ int compare(const value_type* __s) const _NOEXCEPT;
1445
+ int compare(size_type __pos1, size_type __n1, const value_type* __s) const;
1446
+ int compare(size_type __pos1, size_type __n1, const value_type* __s, size_type __n2) const;
1447
+
1448
+ _LIBCPP_HIDE_FROM_ABI bool __invariants() const;
1449
+
1450
+ _LIBCPP_HIDE_FROM_ABI void __clear_and_shrink() _NOEXCEPT;
1451
+
1452
+ private:
1453
+ template <class _Alloc>
1454
+ inline _LIBCPP_HIDE_FROM_ABI bool friend
1455
+ operator==(const basic_string<char, char_traits<char>, _Alloc>& __lhs,
1456
+ const basic_string<char, char_traits<char>, _Alloc>& __rhs) _NOEXCEPT;
1457
+
1458
+ _LIBCPP_HIDE_FROM_ABI void __shrink_or_extend(size_type __target_capacity);
1459
+
1460
+ _LIBCPP_HIDE_FROM_ABI _LIBCPP_STRING_INTERNAL_MEMORY_ACCESS bool __is_long() const _NOEXCEPT {
1461
+ if (__libcpp_is_constant_evaluated() && __builtin_constant_p(__r_.first().__l.__is_long_)) {
1462
+ return __r_.first().__l.__is_long_;
1463
+ }
1464
+ return __r_.first().__s.__is_long_;
1465
+ }
1466
+
1467
+ static _LIBCPP_HIDE_FROM_ABI void __begin_lifetime(pointer __begin, size_type __n) {
1468
+ (void)__begin;
1469
+ (void)__n;
1470
+ }
1471
+
1472
+ _LIBCPP_HIDE_FROM_ABI static bool __fits_in_sso(size_type __sz) { return __sz < __min_cap; }
1473
+
1474
+ template <class _Iterator, class _Sentinel>
1475
+ _LIBCPP_HIDE_FROM_ABI void __assign_trivial(_Iterator __first, _Sentinel __last, size_type __n);
1476
+
1477
+ template <class _Iterator, class _Sentinel>
1478
+ _LIBCPP_HIDE_FROM_ABI void __assign_with_sentinel(_Iterator __first, _Sentinel __last);
1479
+
1480
+ // Copy [__first, __last) into [__dest, __dest + (__last - __first)). Assumes that the ranges don't overlap.
1481
+ template <class _ForwardIter, class _Sent>
1482
+ _LIBCPP_HIDE_FROM_ABI static value_type*
1483
+ __copy_non_overlapping_range(_ForwardIter __first, _Sent __last, value_type* __dest) {
1484
+ for (; __first != __last; ++__first)
1485
+ traits_type::assign(*__dest++, *__first);
1486
+ return __dest;
1487
+ }
1488
+
1489
+ template <class _ForwardIterator, class _Sentinel>
1490
+ _LIBCPP_HIDE_FROM_ABI iterator
1491
+ __insert_from_safe_copy(size_type __n, size_type __ip, _ForwardIterator __first, _Sentinel __last) {
1492
+ size_type __sz = size();
1493
+ size_type __cap = capacity();
1494
+ value_type* __p;
1495
+ if (__cap - __sz >= __n) {
1496
+ __annotate_increase(__n);
1497
+ __p = std::__to_address(__get_pointer());
1498
+ size_type __n_move = __sz - __ip;
1499
+ if (__n_move != 0)
1500
+ traits_type::move(__p + __ip + __n, __p + __ip, __n_move);
1501
+ } else {
1502
+ __grow_by_without_replace(__cap, __sz + __n - __cap, __sz, __ip, 0, __n);
1503
+ __p = std::__to_address(__get_long_pointer());
1504
+ }
1505
+ __sz += __n;
1506
+ __set_size(__sz);
1507
+ traits_type::assign(__p[__sz], value_type());
1508
+ __copy_non_overlapping_range(__first, __last, __p + __ip);
1509
+
1510
+ return begin() + __ip;
1511
+ }
1512
+
1513
+ template <class _Iterator, class _Sentinel>
1514
+ iterator __insert_with_size(const_iterator __pos, _Iterator __first, _Sentinel __last, size_type __n);
1515
+
1516
+ _LIBCPP_HIDE_FROM_ABI allocator_type& __alloc() _NOEXCEPT { return __r_.second(); }
1517
+ _LIBCPP_HIDE_FROM_ABI const allocator_type& __alloc() const _NOEXCEPT { return __r_.second(); }
1518
+
1519
+ _LIBCPP_HIDE_FROM_ABI _LIBCPP_STRING_INTERNAL_MEMORY_ACCESS void __set_short_size(size_type __s) _NOEXCEPT {
1520
+ _LIBCPP_ASSERT_INTERNAL(__s < __min_cap, "__s should never be greater than or equal to the short string capacity");
1521
+ __r_.first().__s.__size_ = __s;
1522
+ __r_.first().__s.__is_long_ = false;
1523
+ }
1524
+
1525
+ _LIBCPP_HIDE_FROM_ABI _LIBCPP_STRING_INTERNAL_MEMORY_ACCESS size_type __get_short_size() const _NOEXCEPT {
1526
+ _LIBCPP_ASSERT_INTERNAL(!__r_.first().__s.__is_long_, "String has to be short when trying to get the short size");
1527
+ return __r_.first().__s.__size_;
1528
+ }
1529
+
1530
+ _LIBCPP_HIDE_FROM_ABI void __set_long_size(size_type __s) _NOEXCEPT { __r_.first().__l.__size_ = __s; }
1531
+ _LIBCPP_HIDE_FROM_ABI size_type __get_long_size() const _NOEXCEPT { return __r_.first().__l.__size_; }
1532
+ _LIBCPP_HIDE_FROM_ABI void __set_size(size_type __s) _NOEXCEPT {
1533
+ if (__is_long())
1534
+ __set_long_size(__s);
1535
+ else
1536
+ __set_short_size(__s);
1537
+ }
1538
+
1539
+ _LIBCPP_HIDE_FROM_ABI void __set_long_cap(size_type __s) _NOEXCEPT {
1540
+ __r_.first().__l.__cap_ = __s / __endian_factor;
1541
+ __r_.first().__l.__is_long_ = true;
1542
+ }
1543
+
1544
+ _LIBCPP_HIDE_FROM_ABI size_type __get_long_cap() const _NOEXCEPT { return __r_.first().__l.__cap_ * __endian_factor; }
1545
+
1546
+ _LIBCPP_HIDE_FROM_ABI void __set_long_pointer(pointer __p) _NOEXCEPT { __r_.first().__l.__data_ = __p; }
1547
+ _LIBCPP_HIDE_FROM_ABI pointer __get_long_pointer() _NOEXCEPT {
1548
+ return _LIBCPP_ASAN_VOLATILE_WRAPPER(__r_.first().__l.__data_);
1549
+ }
1550
+ _LIBCPP_HIDE_FROM_ABI const_pointer __get_long_pointer() const _NOEXCEPT {
1551
+ return _LIBCPP_ASAN_VOLATILE_WRAPPER(__r_.first().__l.__data_);
1552
+ }
1553
+ _LIBCPP_HIDE_FROM_ABI _LIBCPP_STRING_INTERNAL_MEMORY_ACCESS pointer __get_short_pointer() _NOEXCEPT {
1554
+ return _LIBCPP_ASAN_VOLATILE_WRAPPER(pointer_traits<pointer>::pointer_to(__r_.first().__s.__data_[0]));
1555
+ }
1556
+ _LIBCPP_HIDE_FROM_ABI _LIBCPP_STRING_INTERNAL_MEMORY_ACCESS const_pointer __get_short_pointer() const _NOEXCEPT {
1557
+ return _LIBCPP_ASAN_VOLATILE_WRAPPER(pointer_traits<const_pointer>::pointer_to(__r_.first().__s.__data_[0]));
1558
+ }
1559
+ _LIBCPP_HIDE_FROM_ABI pointer __get_pointer() _NOEXCEPT {
1560
+ return __is_long() ? __get_long_pointer() : __get_short_pointer();
1561
+ }
1562
+ _LIBCPP_HIDE_FROM_ABI const_pointer __get_pointer() const _NOEXCEPT {
1563
+ return __is_long() ? __get_long_pointer() : __get_short_pointer();
1564
+ }
1565
+
1566
+ // The following functions are no-ops outside of AddressSanitizer mode.
1567
+ _LIBCPP_HIDE_FROM_ABI void __annotate_contiguous_container(const void* __old_mid, const void* __new_mid) const {
1568
+ (void)__old_mid;
1569
+ (void)__new_mid;
1570
+ #if !defined(_LIBCPP_HAS_NO_ASAN) && defined(_LIBCPP_INSTRUMENTED_WITH_ASAN)
1571
+ # if defined(__APPLE__)
1572
+ // TODO: remove after addressing issue #96099 (https://github.com/llvm/llvm-project/issues/96099)
1573
+ if (!__is_long())
1574
+ return;
1575
+ # endif
1576
+ std::__annotate_contiguous_container<_Allocator>(data(), data() + capacity() + 1, __old_mid, __new_mid);
1577
+ #endif
1578
+ }
1579
+
1580
+ _LIBCPP_HIDE_FROM_ABI void __annotate_new(size_type __current_size) const _NOEXCEPT {
1581
+ (void)__current_size;
1582
+ #if !defined(_LIBCPP_HAS_NO_ASAN) && defined(_LIBCPP_INSTRUMENTED_WITH_ASAN)
1583
+ if (!__libcpp_is_constant_evaluated())
1584
+ __annotate_contiguous_container(data() + capacity() + 1, data() + __current_size + 1);
1585
+ #endif
1586
+ }
1587
+
1588
+ _LIBCPP_HIDE_FROM_ABI void __annotate_delete() const _NOEXCEPT {
1589
+ #if !defined(_LIBCPP_HAS_NO_ASAN) && defined(_LIBCPP_INSTRUMENTED_WITH_ASAN)
1590
+ if (!__libcpp_is_constant_evaluated())
1591
+ __annotate_contiguous_container(data() + size() + 1, data() + capacity() + 1);
1592
+ #endif
1593
+ }
1594
+
1595
+ _LIBCPP_HIDE_FROM_ABI void __annotate_increase(size_type __n) const _NOEXCEPT {
1596
+ (void)__n;
1597
+ #if !defined(_LIBCPP_HAS_NO_ASAN) && defined(_LIBCPP_INSTRUMENTED_WITH_ASAN)
1598
+ if (!__libcpp_is_constant_evaluated())
1599
+ __annotate_contiguous_container(data() + size() + 1, data() + size() + 1 + __n);
1600
+ #endif
1601
+ }
1602
+
1603
+ _LIBCPP_HIDE_FROM_ABI void __annotate_shrink(size_type __old_size) const _NOEXCEPT {
1604
+ (void)__old_size;
1605
+ #if !defined(_LIBCPP_HAS_NO_ASAN) && defined(_LIBCPP_INSTRUMENTED_WITH_ASAN)
1606
+ if (!__libcpp_is_constant_evaluated())
1607
+ __annotate_contiguous_container(data() + __old_size + 1, data() + size() + 1);
1608
+ #endif
1609
+ }
1610
+
1611
+ template <size_type __a>
1612
+ static _LIBCPP_HIDE_FROM_ABI size_type __align_it(size_type __s) _NOEXCEPT {
1613
+ return (__s + (__a - 1)) & ~(__a - 1);
1614
+ }
1615
+ enum { __alignment = 8 };
1616
+ static _LIBCPP_HIDE_FROM_ABI size_type __recommend(size_type __s) _NOEXCEPT {
1617
+ if (__s < __min_cap) {
1618
+ return static_cast<size_type>(__min_cap) - 1;
1619
+ }
1620
+ const size_type __boundary = sizeof(value_type) < __alignment ? __alignment / sizeof(value_type) : __endian_factor;
1621
+ size_type __guess = __align_it<__boundary>(__s + 1) - 1;
1622
+ if (__guess == __min_cap)
1623
+ __guess += __endian_factor;
1624
+ return __guess;
1625
+ }
1626
+
1627
+ inline void __init(const value_type* __s, size_type __sz, size_type __reserve);
1628
+ inline void __init(const value_type* __s, size_type __sz);
1629
+ inline void __init(size_type __n, value_type __c);
1630
+
1631
+ // Slow path for the (inlined) copy constructor for 'long' strings.
1632
+ // Always externally instantiated and not inlined.
1633
+ // Requires that __s is zero terminated.
1634
+ // The main reason for this function to exist is because for unstable, we
1635
+ // want to allow inlining of the copy constructor. However, we don't want
1636
+ // to call the __init() functions as those are marked as inline which may
1637
+ // result in over-aggressive inlining by the compiler, where our aim is
1638
+ // to only inline the fast path code directly in the ctor.
1639
+ _LIBCPP_NOINLINE void __init_copy_ctor_external(const value_type* __s, size_type __sz);
1640
+
1641
+ template <class _InputIterator, __enable_if_t<__has_exactly_input_iterator_category<_InputIterator>::value, int> = 0>
1642
+ inline void __init(_InputIterator __first, _InputIterator __last);
1643
+
1644
+ template <class _ForwardIterator, __enable_if_t<__has_forward_iterator_category<_ForwardIterator>::value, int> = 0>
1645
+ inline void __init(_ForwardIterator __first, _ForwardIterator __last);
1646
+
1647
+ template <class _InputIterator, class _Sentinel>
1648
+ _LIBCPP_HIDE_FROM_ABI void __init_with_sentinel(_InputIterator __first, _Sentinel __last);
1649
+ template <class _InputIterator, class _Sentinel>
1650
+ _LIBCPP_HIDE_FROM_ABI void __init_with_size(_InputIterator __first, _Sentinel __last, size_type __sz);
1651
+
1652
+ #if _LIBCPP_ABI_VERSION >= 2 // We want to use the function in the dylib in ABIv1
1653
+ _LIBCPP_HIDE_FROM_ABI
1654
+ #endif
1655
+ _LIBCPP_DEPRECATED_("use __grow_by_without_replace") void __grow_by(
1656
+ size_type __old_cap,
1657
+ size_type __delta_cap,
1658
+ size_type __old_sz,
1659
+ size_type __n_copy,
1660
+ size_type __n_del,
1661
+ size_type __n_add = 0);
1662
+ _LIBCPP_HIDE_FROM_ABI void __grow_by_without_replace(
1663
+ size_type __old_cap,
1664
+ size_type __delta_cap,
1665
+ size_type __old_sz,
1666
+ size_type __n_copy,
1667
+ size_type __n_del,
1668
+ size_type __n_add = 0);
1669
+ void __grow_by_and_replace(
1670
+ size_type __old_cap,
1671
+ size_type __delta_cap,
1672
+ size_type __old_sz,
1673
+ size_type __n_copy,
1674
+ size_type __n_del,
1675
+ size_type __n_add,
1676
+ const value_type* __p_new_stuff);
1677
+
1678
+ // __assign_no_alias is invoked for assignment operations where we
1679
+ // have proof that the input does not alias the current instance.
1680
+ // For example, operator=(basic_string) performs a 'self' check.
1681
+ template <bool __is_short>
1682
+ _LIBCPP_NOINLINE basic_string& __assign_no_alias(const value_type* __s, size_type __n);
1683
+
1684
+ _LIBCPP_HIDE_FROM_ABI void __erase_to_end(size_type __pos) {
1685
+ __null_terminate_at(std::__to_address(__get_pointer()), __pos);
1686
+ }
1687
+
1688
+ // __erase_external_with_move is invoked for erase() invocations where
1689
+ // `n ~= npos`, likely requiring memory moves on the string data.
1690
+ _LIBCPP_NOINLINE void __erase_external_with_move(size_type __pos, size_type __n);
1691
+
1692
+ _LIBCPP_HIDE_FROM_ABI void __copy_assign_alloc(const basic_string& __str) {
1693
+ __copy_assign_alloc(
1694
+ __str, integral_constant<bool, __alloc_traits::propagate_on_container_copy_assignment::value>());
1695
+ }
1696
+
1697
+ _LIBCPP_HIDE_FROM_ABI void __copy_assign_alloc(const basic_string& __str, true_type) {
1698
+ if (__alloc() == __str.__alloc())
1699
+ __alloc() = __str.__alloc();
1700
+ else {
1701
+ if (!__str.__is_long()) {
1702
+ __clear_and_shrink();
1703
+ __alloc() = __str.__alloc();
1704
+ } else {
1705
+ __annotate_delete();
1706
+ allocator_type __a = __str.__alloc();
1707
+ auto __allocation = std::__allocate_at_least(__a, __str.__get_long_cap());
1708
+ __begin_lifetime(__allocation.ptr, __allocation.count);
1709
+ if (__is_long())
1710
+ __alloc_traits::deallocate(__alloc(), __get_long_pointer(), __get_long_cap());
1711
+ __alloc() = std::move(__a);
1712
+ __set_long_pointer(__allocation.ptr);
1713
+ __set_long_cap(__allocation.count);
1714
+ __set_long_size(__str.size());
1715
+ __annotate_new(__get_long_size());
1716
+ }
1717
+ }
1718
+ }
1719
+
1720
+ _LIBCPP_HIDE_FROM_ABI void __copy_assign_alloc(const basic_string&, false_type) _NOEXCEPT {}
1721
+
1722
+ _LIBCPP_HIDE_FROM_ABI void __move_assign_alloc(basic_string& __str) {
1723
+ __move_assign_alloc(
1724
+ __str, integral_constant<bool, __alloc_traits::propagate_on_container_move_assignment::value>());
1725
+ }
1726
+
1727
+ _LIBCPP_HIDE_FROM_ABI void __move_assign_alloc(basic_string& __c, true_type) { __alloc() = std::move(__c.__alloc()); }
1728
+
1729
+ _LIBCPP_HIDE_FROM_ABI void __move_assign_alloc(basic_string&, false_type) _NOEXCEPT {}
1730
+
1731
+ _LIBCPP_NOINLINE basic_string& __assign_external(const value_type* __s);
1732
+ _LIBCPP_NOINLINE basic_string& __assign_external(const value_type* __s, size_type __n);
1733
+
1734
+ // Assigns the value in __s, guaranteed to be __n < __min_cap in length.
1735
+ inline basic_string& __assign_short(const value_type* __s, size_type __n) {
1736
+ size_type __old_size = size();
1737
+ if (__n > __old_size)
1738
+ __annotate_increase(__n - __old_size);
1739
+ pointer __p =
1740
+ __is_long() ? (__set_long_size(__n), __get_long_pointer()) : (__set_short_size(__n), __get_short_pointer());
1741
+ traits_type::move(std::__to_address(__p), __s, __n);
1742
+ traits_type::assign(__p[__n], value_type());
1743
+ if (__old_size > __n)
1744
+ __annotate_shrink(__old_size);
1745
+ return *this;
1746
+ }
1747
+
1748
+ _LIBCPP_HIDE_FROM_ABI basic_string& __null_terminate_at(value_type* __p, size_type __newsz) {
1749
+ size_type __old_size = size();
1750
+ if (__newsz > __old_size)
1751
+ __annotate_increase(__newsz - __old_size);
1752
+ __set_size(__newsz);
1753
+ traits_type::assign(__p[__newsz], value_type());
1754
+ if (__old_size > __newsz)
1755
+ __annotate_shrink(__old_size);
1756
+ return *this;
1757
+ }
1758
+
1759
+ template <class _Tp>
1760
+ _LIBCPP_HIDE_FROM_ABI bool __addr_in_range(const _Tp& __v) const {
1761
+ return std::__is_pointer_in_range(data(), data() + size() + 1, std::addressof(__v));
1762
+ }
1763
+
1764
+ _LIBCPP_NORETURN _LIBCPP_HIDE_FROM_ABI void __throw_length_error() const {
1765
+ std::__throw_length_error("basic_string");
1766
+ }
1767
+
1768
+ _LIBCPP_NORETURN _LIBCPP_HIDE_FROM_ABI void __throw_out_of_range() const {
1769
+ std::__throw_out_of_range("basic_string");
1770
+ }
1771
+
1772
+ friend basic_string operator+ <>(const basic_string&, const basic_string&);
1773
+ friend basic_string operator+ <>(const value_type*, const basic_string&);
1774
+ friend basic_string operator+ <>(value_type, const basic_string&);
1775
+ friend basic_string operator+ <>(const basic_string&, const value_type*);
1776
+ friend basic_string operator+ <>(const basic_string&, value_type);
1777
+ };
1778
+
1779
+ // These declarations must appear before any functions are implicitly used
1780
+ // so that they have the correct visibility specifier.
1781
+ #define _LIBCPP_DECLARE(...) extern template __VA_ARGS__;
1782
+ #ifdef _LIBCPP_ABI_STRING_OPTIMIZED_EXTERNAL_INSTANTIATION
1783
+ _LIBCPP_STRING_UNSTABLE_EXTERN_TEMPLATE_LIST(_LIBCPP_DECLARE, char)
1784
+ # ifndef _LIBCPP_HAS_NO_WIDE_CHARACTERS
1785
+ _LIBCPP_STRING_UNSTABLE_EXTERN_TEMPLATE_LIST(_LIBCPP_DECLARE, wchar_t)
1786
+ # endif
1787
+ #else
1788
+ _LIBCPP_STRING_V1_EXTERN_TEMPLATE_LIST(_LIBCPP_DECLARE, char)
1789
+ # ifndef _LIBCPP_HAS_NO_WIDE_CHARACTERS
1790
+ _LIBCPP_STRING_V1_EXTERN_TEMPLATE_LIST(_LIBCPP_DECLARE, wchar_t)
1791
+ # endif
1792
+ #endif
1793
+ #undef _LIBCPP_DECLARE
1794
+
1795
+ template <class _CharT, class _Traits, class _Allocator>
1796
+ void basic_string<_CharT, _Traits, _Allocator>::__init(const value_type* __s, size_type __sz, size_type __reserve) {
1797
+ if (__libcpp_is_constant_evaluated())
1798
+ __r_.first() = __rep();
1799
+ if (__reserve > max_size())
1800
+ __throw_length_error();
1801
+ pointer __p;
1802
+ if (__fits_in_sso(__reserve)) {
1803
+ __set_short_size(__sz);
1804
+ __p = __get_short_pointer();
1805
+ } else {
1806
+ auto __allocation = std::__allocate_at_least(__alloc(), __recommend(__reserve) + 1);
1807
+ __p = __allocation.ptr;
1808
+ __begin_lifetime(__p, __allocation.count);
1809
+ __set_long_pointer(__p);
1810
+ __set_long_cap(__allocation.count);
1811
+ __set_long_size(__sz);
1812
+ }
1813
+ traits_type::copy(std::__to_address(__p), __s, __sz);
1814
+ traits_type::assign(__p[__sz], value_type());
1815
+ __annotate_new(__sz);
1816
+ }
1817
+
1818
+ template <class _CharT, class _Traits, class _Allocator>
1819
+ void basic_string<_CharT, _Traits, _Allocator>::__init(const value_type* __s, size_type __sz) {
1820
+ if (__libcpp_is_constant_evaluated())
1821
+ __r_.first() = __rep();
1822
+ if (__sz > max_size())
1823
+ __throw_length_error();
1824
+ pointer __p;
1825
+ if (__fits_in_sso(__sz)) {
1826
+ __set_short_size(__sz);
1827
+ __p = __get_short_pointer();
1828
+ } else {
1829
+ auto __allocation = std::__allocate_at_least(__alloc(), __recommend(__sz) + 1);
1830
+ __p = __allocation.ptr;
1831
+ __begin_lifetime(__p, __allocation.count);
1832
+ __set_long_pointer(__p);
1833
+ __set_long_cap(__allocation.count);
1834
+ __set_long_size(__sz);
1835
+ }
1836
+ traits_type::copy(std::__to_address(__p), __s, __sz);
1837
+ traits_type::assign(__p[__sz], value_type());
1838
+ __annotate_new(__sz);
1839
+ }
1840
+
1841
+ template <class _CharT, class _Traits, class _Allocator>
1842
+ _LIBCPP_NOINLINE void
1843
+ basic_string<_CharT, _Traits, _Allocator>::__init_copy_ctor_external(const value_type* __s, size_type __sz) {
1844
+ if (__libcpp_is_constant_evaluated())
1845
+ __r_.first() = __rep();
1846
+
1847
+ pointer __p;
1848
+ if (__fits_in_sso(__sz)) {
1849
+ __p = __get_short_pointer();
1850
+ __set_short_size(__sz);
1851
+ } else {
1852
+ if (__sz > max_size())
1853
+ __throw_length_error();
1854
+ auto __allocation = std::__allocate_at_least(__alloc(), __recommend(__sz) + 1);
1855
+ __p = __allocation.ptr;
1856
+ __begin_lifetime(__p, __allocation.count);
1857
+ __set_long_pointer(__p);
1858
+ __set_long_cap(__allocation.count);
1859
+ __set_long_size(__sz);
1860
+ }
1861
+ traits_type::copy(std::__to_address(__p), __s, __sz + 1);
1862
+ __annotate_new(__sz);
1863
+ }
1864
+
1865
+ template <class _CharT, class _Traits, class _Allocator>
1866
+ void basic_string<_CharT, _Traits, _Allocator>::__init(size_type __n, value_type __c) {
1867
+ if (__libcpp_is_constant_evaluated())
1868
+ __r_.first() = __rep();
1869
+
1870
+ if (__n > max_size())
1871
+ __throw_length_error();
1872
+ pointer __p;
1873
+ if (__fits_in_sso(__n)) {
1874
+ __set_short_size(__n);
1875
+ __p = __get_short_pointer();
1876
+ } else {
1877
+ auto __allocation = std::__allocate_at_least(__alloc(), __recommend(__n) + 1);
1878
+ __p = __allocation.ptr;
1879
+ __begin_lifetime(__p, __allocation.count);
1880
+ __set_long_pointer(__p);
1881
+ __set_long_cap(__allocation.count);
1882
+ __set_long_size(__n);
1883
+ }
1884
+ traits_type::assign(std::__to_address(__p), __n, __c);
1885
+ traits_type::assign(__p[__n], value_type());
1886
+ __annotate_new(__n);
1887
+ }
1888
+
1889
+ template <class _CharT, class _Traits, class _Allocator>
1890
+ template <class _InputIterator, __enable_if_t<__has_exactly_input_iterator_category<_InputIterator>::value, int> >
1891
+ void basic_string<_CharT, _Traits, _Allocator>::__init(_InputIterator __first, _InputIterator __last) {
1892
+ __init_with_sentinel(std::move(__first), std::move(__last));
1893
+ }
1894
+
1895
+ template <class _CharT, class _Traits, class _Allocator>
1896
+ template <class _InputIterator, class _Sentinel>
1897
+ _LIBCPP_HIDE_FROM_ABI void
1898
+ basic_string<_CharT, _Traits, _Allocator>::__init_with_sentinel(_InputIterator __first, _Sentinel __last) {
1899
+ __r_.first() = __rep();
1900
+ __annotate_new(0);
1901
+
1902
+ #ifndef _LIBCPP_HAS_NO_EXCEPTIONS
1903
+ try {
1904
+ #endif // _LIBCPP_HAS_NO_EXCEPTIONS
1905
+ for (; __first != __last; ++__first)
1906
+ push_back(*__first);
1907
+ #ifndef _LIBCPP_HAS_NO_EXCEPTIONS
1908
+ } catch (...) {
1909
+ __annotate_delete();
1910
+ if (__is_long())
1911
+ __alloc_traits::deallocate(__alloc(), __get_long_pointer(), __get_long_cap());
1912
+ throw;
1913
+ }
1914
+ #endif // _LIBCPP_HAS_NO_EXCEPTIONS
1915
+ }
1916
+
1917
+ template <class _CharT, class _Traits, class _Allocator>
1918
+ template <class _ForwardIterator, __enable_if_t<__has_forward_iterator_category<_ForwardIterator>::value, int> >
1919
+ void basic_string<_CharT, _Traits, _Allocator>::__init(_ForwardIterator __first, _ForwardIterator __last) {
1920
+ size_type __sz = static_cast<size_type>(std::distance(__first, __last));
1921
+ __init_with_size(__first, __last, __sz);
1922
+ }
1923
+
1924
+ template <class _CharT, class _Traits, class _Allocator>
1925
+ template <class _InputIterator, class _Sentinel>
1926
+ _LIBCPP_HIDE_FROM_ABI void
1927
+ basic_string<_CharT, _Traits, _Allocator>::__init_with_size(_InputIterator __first, _Sentinel __last, size_type __sz) {
1928
+ if (__libcpp_is_constant_evaluated())
1929
+ __r_.first() = __rep();
1930
+
1931
+ if (__sz > max_size())
1932
+ __throw_length_error();
1933
+
1934
+ pointer __p;
1935
+ if (__fits_in_sso(__sz)) {
1936
+ __set_short_size(__sz);
1937
+ __p = __get_short_pointer();
1938
+
1939
+ } else {
1940
+ auto __allocation = std::__allocate_at_least(__alloc(), __recommend(__sz) + 1);
1941
+ __p = __allocation.ptr;
1942
+ __begin_lifetime(__p, __allocation.count);
1943
+ __set_long_pointer(__p);
1944
+ __set_long_cap(__allocation.count);
1945
+ __set_long_size(__sz);
1946
+ }
1947
+
1948
+ #ifndef _LIBCPP_HAS_NO_EXCEPTIONS
1949
+ try {
1950
+ #endif // _LIBCPP_HAS_NO_EXCEPTIONS
1951
+ auto __end = __copy_non_overlapping_range(__first, __last, std::__to_address(__p));
1952
+ traits_type::assign(*__end, value_type());
1953
+ #ifndef _LIBCPP_HAS_NO_EXCEPTIONS
1954
+ } catch (...) {
1955
+ if (__is_long())
1956
+ __alloc_traits::deallocate(__alloc(), __get_long_pointer(), __get_long_cap());
1957
+ throw;
1958
+ }
1959
+ #endif // _LIBCPP_HAS_NO_EXCEPTIONS
1960
+ __annotate_new(__sz);
1961
+ }
1962
+
1963
+ template <class _CharT, class _Traits, class _Allocator>
1964
+ void basic_string<_CharT, _Traits, _Allocator>::__grow_by_and_replace(
1965
+ size_type __old_cap,
1966
+ size_type __delta_cap,
1967
+ size_type __old_sz,
1968
+ size_type __n_copy,
1969
+ size_type __n_del,
1970
+ size_type __n_add,
1971
+ const value_type* __p_new_stuff) {
1972
+ size_type __ms = max_size();
1973
+ if (__delta_cap > __ms - __old_cap - 1)
1974
+ __throw_length_error();
1975
+ pointer __old_p = __get_pointer();
1976
+ size_type __cap =
1977
+ __old_cap < __ms / 2 - __alignment ? __recommend(std::max(__old_cap + __delta_cap, 2 * __old_cap)) : __ms - 1;
1978
+ __annotate_delete();
1979
+ auto __allocation = std::__allocate_at_least(__alloc(), __cap + 1);
1980
+ pointer __p = __allocation.ptr;
1981
+ __begin_lifetime(__p, __allocation.count);
1982
+ if (__n_copy != 0)
1983
+ traits_type::copy(std::__to_address(__p), std::__to_address(__old_p), __n_copy);
1984
+ if (__n_add != 0)
1985
+ traits_type::copy(std::__to_address(__p) + __n_copy, __p_new_stuff, __n_add);
1986
+ size_type __sec_cp_sz = __old_sz - __n_del - __n_copy;
1987
+ if (__sec_cp_sz != 0)
1988
+ traits_type::copy(
1989
+ std::__to_address(__p) + __n_copy + __n_add, std::__to_address(__old_p) + __n_copy + __n_del, __sec_cp_sz);
1990
+ if (__old_cap + 1 != __min_cap)
1991
+ __alloc_traits::deallocate(__alloc(), __old_p, __old_cap + 1);
1992
+ __set_long_pointer(__p);
1993
+ __set_long_cap(__allocation.count);
1994
+ __old_sz = __n_copy + __n_add + __sec_cp_sz;
1995
+ __set_long_size(__old_sz);
1996
+ traits_type::assign(__p[__old_sz], value_type());
1997
+ __annotate_new(__old_sz);
1998
+ }
1999
+
2000
+ // __grow_by is deprecated because it does not set the size. It may not update the size when the size is changed, and it
2001
+ // may also not set the size at all when the string was short initially. This leads to unpredictable size value. It is
2002
+ // not removed or changed to avoid breaking the ABI.
2003
+ template <class _CharT, class _Traits, class _Allocator>
2004
+ void
2005
+ #if _LIBCPP_ABI_VERSION >= 2 // We want to use the function in the dylib in ABIv1
2006
+ _LIBCPP_HIDE_FROM_ABI
2007
+ #endif
2008
+ _LIBCPP_DEPRECATED_("use __grow_by_without_replace") basic_string<_CharT, _Traits, _Allocator>::__grow_by(
2009
+ size_type __old_cap,
2010
+ size_type __delta_cap,
2011
+ size_type __old_sz,
2012
+ size_type __n_copy,
2013
+ size_type __n_del,
2014
+ size_type __n_add) {
2015
+ size_type __ms = max_size();
2016
+ if (__delta_cap > __ms - __old_cap)
2017
+ __throw_length_error();
2018
+ pointer __old_p = __get_pointer();
2019
+ size_type __cap =
2020
+ __old_cap < __ms / 2 - __alignment ? __recommend(std::max(__old_cap + __delta_cap, 2 * __old_cap)) : __ms - 1;
2021
+ __annotate_delete();
2022
+ auto __allocation = std::__allocate_at_least(__alloc(), __cap + 1);
2023
+ pointer __p = __allocation.ptr;
2024
+ __begin_lifetime(__p, __allocation.count);
2025
+ if (__n_copy != 0)
2026
+ traits_type::copy(std::__to_address(__p), std::__to_address(__old_p), __n_copy);
2027
+ size_type __sec_cp_sz = __old_sz - __n_del - __n_copy;
2028
+ if (__sec_cp_sz != 0)
2029
+ traits_type::copy(
2030
+ std::__to_address(__p) + __n_copy + __n_add, std::__to_address(__old_p) + __n_copy + __n_del, __sec_cp_sz);
2031
+ if (__old_cap + 1 != __min_cap)
2032
+ __alloc_traits::deallocate(__alloc(), __old_p, __old_cap + 1);
2033
+ __set_long_pointer(__p);
2034
+ __set_long_cap(__allocation.count);
2035
+ }
2036
+
2037
+ template <class _CharT, class _Traits, class _Allocator>
2038
+ void _LIBCPP_HIDE_FROM_ABI basic_string<_CharT, _Traits, _Allocator>::__grow_by_without_replace(
2039
+ size_type __old_cap,
2040
+ size_type __delta_cap,
2041
+ size_type __old_sz,
2042
+ size_type __n_copy,
2043
+ size_type __n_del,
2044
+ size_type __n_add) {
2045
+ _LIBCPP_SUPPRESS_DEPRECATED_PUSH
2046
+ __grow_by(__old_cap, __delta_cap, __old_sz, __n_copy, __n_del, __n_add);
2047
+ _LIBCPP_SUPPRESS_DEPRECATED_POP
2048
+ __set_long_size(__old_sz - __n_del + __n_add);
2049
+ __annotate_new(__old_sz - __n_del + __n_add);
2050
+ }
2051
+
2052
+ // assign
2053
+
2054
+ template <class _CharT, class _Traits, class _Allocator>
2055
+ template <bool __is_short>
2056
+ _LIBCPP_NOINLINE basic_string<_CharT, _Traits, _Allocator>&
2057
+ basic_string<_CharT, _Traits, _Allocator>::__assign_no_alias(const value_type* __s, size_type __n) {
2058
+ size_type __cap = __is_short ? static_cast<size_type>(__min_cap) : __get_long_cap();
2059
+ if (__n < __cap) {
2060
+ size_type __old_size = __is_short ? __get_short_size() : __get_long_size();
2061
+ if (__n > __old_size)
2062
+ __annotate_increase(__n - __old_size);
2063
+ pointer __p = __is_short ? __get_short_pointer() : __get_long_pointer();
2064
+ __is_short ? __set_short_size(__n) : __set_long_size(__n);
2065
+ traits_type::copy(std::__to_address(__p), __s, __n);
2066
+ traits_type::assign(__p[__n], value_type());
2067
+ if (__old_size > __n)
2068
+ __annotate_shrink(__old_size);
2069
+ } else {
2070
+ size_type __sz = __is_short ? __get_short_size() : __get_long_size();
2071
+ __grow_by_and_replace(__cap - 1, __n - __cap + 1, __sz, 0, __sz, __n, __s);
2072
+ }
2073
+ return *this;
2074
+ }
2075
+
2076
+ template <class _CharT, class _Traits, class _Allocator>
2077
+ _LIBCPP_NOINLINE basic_string<_CharT, _Traits, _Allocator>&
2078
+ basic_string<_CharT, _Traits, _Allocator>::__assign_external(const value_type* __s, size_type __n) {
2079
+ size_type __cap = capacity();
2080
+ if (__cap >= __n) {
2081
+ size_type __old_size = size();
2082
+ if (__n > __old_size)
2083
+ __annotate_increase(__n - __old_size);
2084
+ value_type* __p = std::__to_address(__get_pointer());
2085
+ traits_type::move(__p, __s, __n);
2086
+ return __null_terminate_at(__p, __n);
2087
+ } else {
2088
+ size_type __sz = size();
2089
+ __grow_by_and_replace(__cap, __n - __cap, __sz, 0, __sz, __n, __s);
2090
+ return *this;
2091
+ }
2092
+ }
2093
+
2094
+ template <class _CharT, class _Traits, class _Allocator>
2095
+ basic_string<_CharT, _Traits, _Allocator>&
2096
+ basic_string<_CharT, _Traits, _Allocator>::assign(const value_type* __s, size_type __n) {
2097
+ _LIBCPP_ASSERT_NON_NULL(__n == 0 || __s != nullptr, "string::assign received nullptr");
2098
+ return (__builtin_constant_p(__n) && __fits_in_sso(__n)) ? __assign_short(__s, __n) : __assign_external(__s, __n);
2099
+ }
2100
+
2101
+ template <class _CharT, class _Traits, class _Allocator>
2102
+ basic_string<_CharT, _Traits, _Allocator>&
2103
+ basic_string<_CharT, _Traits, _Allocator>::assign(size_type __n, value_type __c) {
2104
+ size_type __cap = capacity();
2105
+ size_type __old_size = size();
2106
+ if (__cap < __n) {
2107
+ size_type __sz = size();
2108
+ __grow_by_without_replace(__cap, __n - __cap, __sz, 0, __sz);
2109
+ __annotate_increase(__n);
2110
+ } else if (__n > __old_size)
2111
+ __annotate_increase(__n - __old_size);
2112
+ value_type* __p = std::__to_address(__get_pointer());
2113
+ traits_type::assign(__p, __n, __c);
2114
+ return __null_terminate_at(__p, __n);
2115
+ }
2116
+
2117
+ template <class _CharT, class _Traits, class _Allocator>
2118
+ basic_string<_CharT, _Traits, _Allocator>& basic_string<_CharT, _Traits, _Allocator>::operator=(value_type __c) {
2119
+ pointer __p;
2120
+ size_type __old_size = size();
2121
+ if (__old_size == 0)
2122
+ __annotate_increase(1);
2123
+ if (__is_long()) {
2124
+ __p = __get_long_pointer();
2125
+ __set_long_size(1);
2126
+ } else {
2127
+ __p = __get_short_pointer();
2128
+ __set_short_size(1);
2129
+ }
2130
+ traits_type::assign(*__p, __c);
2131
+ traits_type::assign(*++__p, value_type());
2132
+ if (__old_size > 1)
2133
+ __annotate_shrink(__old_size);
2134
+ return *this;
2135
+ }
2136
+
2137
+ template <class _CharT, class _Traits, class _Allocator>
2138
+ _LIBCPP_STRING_INTERNAL_MEMORY_ACCESS basic_string<_CharT, _Traits, _Allocator>&
2139
+ basic_string<_CharT, _Traits, _Allocator>::operator=(const basic_string& __str) {
2140
+ if (this != std::addressof(__str)) {
2141
+ __copy_assign_alloc(__str);
2142
+ if (!__is_long()) {
2143
+ if (!__str.__is_long()) {
2144
+ size_type __old_size = __get_short_size();
2145
+ if (__get_short_size() < __str.__get_short_size())
2146
+ __annotate_increase(__str.__get_short_size() - __get_short_size());
2147
+ __r_.first() = __str.__r_.first();
2148
+ if (__old_size > __get_short_size())
2149
+ __annotate_shrink(__old_size);
2150
+ } else {
2151
+ return __assign_no_alias<true>(__str.data(), __str.size());
2152
+ }
2153
+ } else {
2154
+ return __assign_no_alias<false>(__str.data(), __str.size());
2155
+ }
2156
+ }
2157
+ return *this;
2158
+ }
2159
+
2160
+ template <class _CharT, class _Traits, class _Allocator>
2161
+ template <class _InputIterator, __enable_if_t<__has_exactly_input_iterator_category<_InputIterator>::value, int> >
2162
+ basic_string<_CharT, _Traits, _Allocator>&
2163
+ basic_string<_CharT, _Traits, _Allocator>::assign(_InputIterator __first, _InputIterator __last) {
2164
+ __assign_with_sentinel(__first, __last);
2165
+ return *this;
2166
+ }
2167
+
2168
+ template <class _CharT, class _Traits, class _Allocator>
2169
+ template <class _InputIterator, class _Sentinel>
2170
+ _LIBCPP_HIDE_FROM_ABI void
2171
+ basic_string<_CharT, _Traits, _Allocator>::__assign_with_sentinel(_InputIterator __first, _Sentinel __last) {
2172
+ const basic_string __temp(__init_with_sentinel_tag(), std::move(__first), std::move(__last), __alloc());
2173
+ assign(__temp.data(), __temp.size());
2174
+ }
2175
+
2176
+ template <class _CharT, class _Traits, class _Allocator>
2177
+ template <class _ForwardIterator, __enable_if_t<__has_forward_iterator_category<_ForwardIterator>::value, int> >
2178
+ basic_string<_CharT, _Traits, _Allocator>&
2179
+ basic_string<_CharT, _Traits, _Allocator>::assign(_ForwardIterator __first, _ForwardIterator __last) {
2180
+ if (__string_is_trivial_iterator<_ForwardIterator>::value) {
2181
+ size_type __n = static_cast<size_type>(std::distance(__first, __last));
2182
+ __assign_trivial(__first, __last, __n);
2183
+ } else {
2184
+ __assign_with_sentinel(__first, __last);
2185
+ }
2186
+
2187
+ return *this;
2188
+ }
2189
+
2190
+ template <class _CharT, class _Traits, class _Allocator>
2191
+ template <class _Iterator, class _Sentinel>
2192
+ _LIBCPP_HIDE_FROM_ABI void
2193
+ basic_string<_CharT, _Traits, _Allocator>::__assign_trivial(_Iterator __first, _Sentinel __last, size_type __n) {
2194
+ _LIBCPP_ASSERT_INTERNAL(
2195
+ __string_is_trivial_iterator<_Iterator>::value, "The iterator type given to `__assign_trivial` must be trivial");
2196
+
2197
+ size_type __old_size = size();
2198
+ size_type __cap = capacity();
2199
+ if (__cap < __n) {
2200
+ // Unlike `append` functions, if the input range points into the string itself, there is no case that the input
2201
+ // range could get invalidated by reallocation:
2202
+ // 1. If the input range is a subset of the string itself, its size cannot exceed the capacity of the string,
2203
+ // thus no reallocation would happen.
2204
+ // 2. In the exotic case where the input range is the byte representation of the string itself, the string
2205
+ // object itself stays valid even if reallocation happens.
2206
+ size_type __sz = size();
2207
+ __grow_by_without_replace(__cap, __n - __cap, __sz, 0, __sz);
2208
+ __annotate_increase(__n);
2209
+ } else if (__n > __old_size)
2210
+ __annotate_increase(__n - __old_size);
2211
+ pointer __p = __get_pointer();
2212
+ for (; __first != __last; ++__p, (void)++__first)
2213
+ traits_type::assign(*__p, *__first);
2214
+ traits_type::assign(*__p, value_type());
2215
+ __set_size(__n);
2216
+ if (__n < __old_size)
2217
+ __annotate_shrink(__old_size);
2218
+ }
2219
+
2220
+ template <class _CharT, class _Traits, class _Allocator>
2221
+ basic_string<_CharT, _Traits, _Allocator>&
2222
+ basic_string<_CharT, _Traits, _Allocator>::assign(const basic_string& __str, size_type __pos, size_type __n) {
2223
+ size_type __sz = __str.size();
2224
+ if (__pos > __sz)
2225
+ __throw_out_of_range();
2226
+ return assign(__str.data() + __pos, std::min(__n, __sz - __pos));
2227
+ }
2228
+
2229
+ template <class _CharT, class _Traits, class _Allocator>
2230
+ template <class _Tp,
2231
+ __enable_if_t<__can_be_converted_to_string_view<_CharT, _Traits, _Tp>::value &&
2232
+ !__is_same_uncvref<_Tp, basic_string<_CharT, _Traits, _Allocator> >::value,
2233
+ int> >
2234
+ basic_string<_CharT, _Traits, _Allocator>&
2235
+ basic_string<_CharT, _Traits, _Allocator>::assign(const _Tp& __t, size_type __pos, size_type __n) {
2236
+ __self_view __sv = __t;
2237
+ size_type __sz = __sv.size();
2238
+ if (__pos > __sz)
2239
+ __throw_out_of_range();
2240
+ return assign(__sv.data() + __pos, std::min(__n, __sz - __pos));
2241
+ }
2242
+
2243
+ template <class _CharT, class _Traits, class _Allocator>
2244
+ _LIBCPP_NOINLINE basic_string<_CharT, _Traits, _Allocator>&
2245
+ basic_string<_CharT, _Traits, _Allocator>::__assign_external(const value_type* __s) {
2246
+ return __assign_external(__s, traits_type::length(__s));
2247
+ }
2248
+
2249
+ template <class _CharT, class _Traits, class _Allocator>
2250
+ basic_string<_CharT, _Traits, _Allocator>& basic_string<_CharT, _Traits, _Allocator>::assign(const value_type* __s) {
2251
+ _LIBCPP_ASSERT_NON_NULL(__s != nullptr, "string::assign received nullptr");
2252
+ return __builtin_constant_p(*__s)
2253
+ ? (__fits_in_sso(traits_type::length(__s)) ? __assign_short(__s, traits_type::length(__s))
2254
+ : __assign_external(__s, traits_type::length(__s)))
2255
+ : __assign_external(__s);
2256
+ }
2257
+ // append
2258
+
2259
+ template <class _CharT, class _Traits, class _Allocator>
2260
+ basic_string<_CharT, _Traits, _Allocator>&
2261
+ basic_string<_CharT, _Traits, _Allocator>::append(const value_type* __s, size_type __n) {
2262
+ _LIBCPP_ASSERT_NON_NULL(__n == 0 || __s != nullptr, "string::append received nullptr");
2263
+ size_type __cap = capacity();
2264
+ size_type __sz = size();
2265
+ if (__cap - __sz >= __n) {
2266
+ if (__n) {
2267
+ __annotate_increase(__n);
2268
+ value_type* __p = std::__to_address(__get_pointer());
2269
+ traits_type::copy(__p + __sz, __s, __n);
2270
+ __sz += __n;
2271
+ __set_size(__sz);
2272
+ traits_type::assign(__p[__sz], value_type());
2273
+ }
2274
+ } else
2275
+ __grow_by_and_replace(__cap, __sz + __n - __cap, __sz, __sz, 0, __n, __s);
2276
+ return *this;
2277
+ }
2278
+
2279
+ template <class _CharT, class _Traits, class _Allocator>
2280
+ basic_string<_CharT, _Traits, _Allocator>&
2281
+ basic_string<_CharT, _Traits, _Allocator>::append(size_type __n, value_type __c) {
2282
+ if (__n) {
2283
+ size_type __cap = capacity();
2284
+ size_type __sz = size();
2285
+ if (__cap - __sz < __n)
2286
+ __grow_by_without_replace(__cap, __sz + __n - __cap, __sz, __sz, 0);
2287
+ __annotate_increase(__n);
2288
+ pointer __p = __get_pointer();
2289
+ traits_type::assign(std::__to_address(__p) + __sz, __n, __c);
2290
+ __sz += __n;
2291
+ __set_size(__sz);
2292
+ traits_type::assign(__p[__sz], value_type());
2293
+ }
2294
+ return *this;
2295
+ }
2296
+
2297
+ template <class _CharT, class _Traits, class _Allocator>
2298
+ inline void basic_string<_CharT, _Traits, _Allocator>::__append_default_init(size_type __n) {
2299
+ if (__n) {
2300
+ size_type __cap = capacity();
2301
+ size_type __sz = size();
2302
+ if (__cap - __sz < __n)
2303
+ __grow_by_without_replace(__cap, __sz + __n - __cap, __sz, __sz, 0);
2304
+ __annotate_increase(__n);
2305
+ pointer __p = __get_pointer();
2306
+ __sz += __n;
2307
+ __set_size(__sz);
2308
+ traits_type::assign(__p[__sz], value_type());
2309
+ }
2310
+ }
2311
+
2312
+ template <class _CharT, class _Traits, class _Allocator>
2313
+ void basic_string<_CharT, _Traits, _Allocator>::push_back(value_type __c) {
2314
+ bool __is_short = !__is_long();
2315
+ size_type __cap;
2316
+ size_type __sz;
2317
+ if (__is_short) {
2318
+ __cap = __min_cap - 1;
2319
+ __sz = __get_short_size();
2320
+ } else {
2321
+ __cap = __get_long_cap() - 1;
2322
+ __sz = __get_long_size();
2323
+ }
2324
+ if (__sz == __cap) {
2325
+ __grow_by_without_replace(__cap, 1, __sz, __sz, 0);
2326
+ __annotate_increase(1);
2327
+ __is_short = false; // the string is always long after __grow_by
2328
+ } else
2329
+ __annotate_increase(1);
2330
+ pointer __p = __get_pointer();
2331
+ if (__is_short) {
2332
+ __p = __get_short_pointer() + __sz;
2333
+ __set_short_size(__sz + 1);
2334
+ } else {
2335
+ __p = __get_long_pointer() + __sz;
2336
+ __set_long_size(__sz + 1);
2337
+ }
2338
+ traits_type::assign(*__p, __c);
2339
+ traits_type::assign(*++__p, value_type());
2340
+ }
2341
+
2342
+ template <class _CharT, class _Traits, class _Allocator>
2343
+ template <class _ForwardIterator, __enable_if_t<__has_forward_iterator_category<_ForwardIterator>::value, int> >
2344
+ basic_string<_CharT, _Traits, _Allocator>&
2345
+ basic_string<_CharT, _Traits, _Allocator>::append(_ForwardIterator __first, _ForwardIterator __last) {
2346
+ size_type __sz = size();
2347
+ size_type __cap = capacity();
2348
+ size_type __n = static_cast<size_type>(std::distance(__first, __last));
2349
+ if (__n) {
2350
+ if (__string_is_trivial_iterator<_ForwardIterator>::value && !__addr_in_range(*__first)) {
2351
+ if (__cap - __sz < __n)
2352
+ __grow_by_without_replace(__cap, __sz + __n - __cap, __sz, __sz, 0);
2353
+ __annotate_increase(__n);
2354
+ auto __end = __copy_non_overlapping_range(__first, __last, std::__to_address(__get_pointer() + __sz));
2355
+ traits_type::assign(*__end, value_type());
2356
+ __set_size(__sz + __n);
2357
+ } else {
2358
+ const basic_string __temp(__first, __last, __alloc());
2359
+ append(__temp.data(), __temp.size());
2360
+ }
2361
+ }
2362
+ return *this;
2363
+ }
2364
+
2365
+ template <class _CharT, class _Traits, class _Allocator>
2366
+ basic_string<_CharT, _Traits, _Allocator>&
2367
+ basic_string<_CharT, _Traits, _Allocator>::append(const basic_string& __str, size_type __pos, size_type __n) {
2368
+ size_type __sz = __str.size();
2369
+ if (__pos > __sz)
2370
+ __throw_out_of_range();
2371
+ return append(__str.data() + __pos, std::min(__n, __sz - __pos));
2372
+ }
2373
+
2374
+ template <class _CharT, class _Traits, class _Allocator>
2375
+ template <class _Tp,
2376
+ __enable_if_t<__can_be_converted_to_string_view<_CharT, _Traits, _Tp>::value &&
2377
+ !__is_same_uncvref<_Tp, basic_string<_CharT, _Traits, _Allocator> >::value,
2378
+ int> >
2379
+ basic_string<_CharT, _Traits, _Allocator>&
2380
+ basic_string<_CharT, _Traits, _Allocator>::append(const _Tp& __t, size_type __pos, size_type __n) {
2381
+ __self_view __sv = __t;
2382
+ size_type __sz = __sv.size();
2383
+ if (__pos > __sz)
2384
+ __throw_out_of_range();
2385
+ return append(__sv.data() + __pos, std::min(__n, __sz - __pos));
2386
+ }
2387
+
2388
+ template <class _CharT, class _Traits, class _Allocator>
2389
+ basic_string<_CharT, _Traits, _Allocator>& basic_string<_CharT, _Traits, _Allocator>::append(const value_type* __s) {
2390
+ _LIBCPP_ASSERT_NON_NULL(__s != nullptr, "string::append received nullptr");
2391
+ return append(__s, traits_type::length(__s));
2392
+ }
2393
+
2394
+ // insert
2395
+
2396
+ template <class _CharT, class _Traits, class _Allocator>
2397
+ basic_string<_CharT, _Traits, _Allocator>&
2398
+ basic_string<_CharT, _Traits, _Allocator>::insert(size_type __pos, const value_type* __s, size_type __n) {
2399
+ _LIBCPP_ASSERT_NON_NULL(__n == 0 || __s != nullptr, "string::insert received nullptr");
2400
+ size_type __sz = size();
2401
+ if (__pos > __sz)
2402
+ __throw_out_of_range();
2403
+ size_type __cap = capacity();
2404
+ if (__cap - __sz >= __n) {
2405
+ if (__n) {
2406
+ __annotate_increase(__n);
2407
+ value_type* __p = std::__to_address(__get_pointer());
2408
+ size_type __n_move = __sz - __pos;
2409
+ if (__n_move != 0) {
2410
+ if (std::__is_pointer_in_range(__p + __pos, __p + __sz, __s))
2411
+ __s += __n;
2412
+ traits_type::move(__p + __pos + __n, __p + __pos, __n_move);
2413
+ }
2414
+ traits_type::move(__p + __pos, __s, __n);
2415
+ __sz += __n;
2416
+ __set_size(__sz);
2417
+ traits_type::assign(__p[__sz], value_type());
2418
+ }
2419
+ } else
2420
+ __grow_by_and_replace(__cap, __sz + __n - __cap, __sz, __pos, 0, __n, __s);
2421
+ return *this;
2422
+ }
2423
+
2424
+ template <class _CharT, class _Traits, class _Allocator>
2425
+ basic_string<_CharT, _Traits, _Allocator>&
2426
+ basic_string<_CharT, _Traits, _Allocator>::insert(size_type __pos, size_type __n, value_type __c) {
2427
+ size_type __sz = size();
2428
+ if (__pos > __sz)
2429
+ __throw_out_of_range();
2430
+ if (__n) {
2431
+ size_type __cap = capacity();
2432
+ value_type* __p;
2433
+ if (__cap - __sz >= __n) {
2434
+ __annotate_increase(__n);
2435
+ __p = std::__to_address(__get_pointer());
2436
+ size_type __n_move = __sz - __pos;
2437
+ if (__n_move != 0)
2438
+ traits_type::move(__p + __pos + __n, __p + __pos, __n_move);
2439
+ } else {
2440
+ __grow_by_without_replace(__cap, __sz + __n - __cap, __sz, __pos, 0, __n);
2441
+ __p = std::__to_address(__get_long_pointer());
2442
+ }
2443
+ traits_type::assign(__p + __pos, __n, __c);
2444
+ __sz += __n;
2445
+ __set_size(__sz);
2446
+ traits_type::assign(__p[__sz], value_type());
2447
+ }
2448
+ return *this;
2449
+ }
2450
+
2451
+ template <class _CharT, class _Traits, class _Allocator>
2452
+ template <class _InputIterator, __enable_if_t<__has_exactly_input_iterator_category<_InputIterator>::value, int> >
2453
+ typename basic_string<_CharT, _Traits, _Allocator>::iterator
2454
+ basic_string<_CharT, _Traits, _Allocator>::insert(const_iterator __pos, _InputIterator __first, _InputIterator __last) {
2455
+ const basic_string __temp(__first, __last, __alloc());
2456
+ return insert(__pos, __temp.data(), __temp.data() + __temp.size());
2457
+ }
2458
+
2459
+ template <class _CharT, class _Traits, class _Allocator>
2460
+ template <class _ForwardIterator, __enable_if_t<__has_forward_iterator_category<_ForwardIterator>::value, int> >
2461
+ typename basic_string<_CharT, _Traits, _Allocator>::iterator basic_string<_CharT, _Traits, _Allocator>::insert(
2462
+ const_iterator __pos, _ForwardIterator __first, _ForwardIterator __last) {
2463
+ auto __n = static_cast<size_type>(std::distance(__first, __last));
2464
+ return __insert_with_size(__pos, __first, __last, __n);
2465
+ }
2466
+
2467
+ template <class _CharT, class _Traits, class _Allocator>
2468
+ template <class _Iterator, class _Sentinel>
2469
+ typename basic_string<_CharT, _Traits, _Allocator>::iterator
2470
+ basic_string<_CharT, _Traits, _Allocator>::__insert_with_size(
2471
+ const_iterator __pos, _Iterator __first, _Sentinel __last, size_type __n) {
2472
+ size_type __ip = static_cast<size_type>(__pos - begin());
2473
+ if (__n == 0)
2474
+ return begin() + __ip;
2475
+
2476
+ if (__string_is_trivial_iterator<_Iterator>::value && !__addr_in_range(*__first)) {
2477
+ return __insert_from_safe_copy(__n, __ip, __first, __last);
2478
+ } else {
2479
+ const basic_string __temp(__init_with_sentinel_tag(), __first, __last, __alloc());
2480
+ return __insert_from_safe_copy(__n, __ip, __temp.begin(), __temp.end());
2481
+ }
2482
+ }
2483
+
2484
+ template <class _CharT, class _Traits, class _Allocator>
2485
+ basic_string<_CharT, _Traits, _Allocator>& basic_string<_CharT, _Traits, _Allocator>::insert(
2486
+ size_type __pos1, const basic_string& __str, size_type __pos2, size_type __n) {
2487
+ size_type __str_sz = __str.size();
2488
+ if (__pos2 > __str_sz)
2489
+ __throw_out_of_range();
2490
+ return insert(__pos1, __str.data() + __pos2, std::min(__n, __str_sz - __pos2));
2491
+ }
2492
+
2493
+ template <class _CharT, class _Traits, class _Allocator>
2494
+ template <class _Tp,
2495
+ __enable_if_t<__can_be_converted_to_string_view<_CharT, _Traits, _Tp>::value &&
2496
+ !__is_same_uncvref<_Tp, basic_string<_CharT, _Traits, _Allocator> >::value,
2497
+ int> >
2498
+ basic_string<_CharT, _Traits, _Allocator>&
2499
+ basic_string<_CharT, _Traits, _Allocator>::insert(size_type __pos1, const _Tp& __t, size_type __pos2, size_type __n) {
2500
+ __self_view __sv = __t;
2501
+ size_type __str_sz = __sv.size();
2502
+ if (__pos2 > __str_sz)
2503
+ __throw_out_of_range();
2504
+ return insert(__pos1, __sv.data() + __pos2, std::min(__n, __str_sz - __pos2));
2505
+ }
2506
+
2507
+ template <class _CharT, class _Traits, class _Allocator>
2508
+ basic_string<_CharT, _Traits, _Allocator>&
2509
+ basic_string<_CharT, _Traits, _Allocator>::insert(size_type __pos, const value_type* __s) {
2510
+ _LIBCPP_ASSERT_NON_NULL(__s != nullptr, "string::insert received nullptr");
2511
+ return insert(__pos, __s, traits_type::length(__s));
2512
+ }
2513
+
2514
+ template <class _CharT, class _Traits, class _Allocator>
2515
+ typename basic_string<_CharT, _Traits, _Allocator>::iterator
2516
+ basic_string<_CharT, _Traits, _Allocator>::insert(const_iterator __pos, value_type __c) {
2517
+ size_type __ip = static_cast<size_type>(__pos - begin());
2518
+ size_type __sz = size();
2519
+ size_type __cap = capacity();
2520
+ value_type* __p;
2521
+ if (__cap == __sz) {
2522
+ __grow_by_without_replace(__cap, 1, __sz, __ip, 0, 1);
2523
+ __p = std::__to_address(__get_long_pointer());
2524
+ } else {
2525
+ __annotate_increase(1);
2526
+ __p = std::__to_address(__get_pointer());
2527
+ size_type __n_move = __sz - __ip;
2528
+ if (__n_move != 0)
2529
+ traits_type::move(__p + __ip + 1, __p + __ip, __n_move);
2530
+ }
2531
+ traits_type::assign(__p[__ip], __c);
2532
+ traits_type::assign(__p[++__sz], value_type());
2533
+ __set_size(__sz);
2534
+ return begin() + static_cast<difference_type>(__ip);
2535
+ }
2536
+
2537
+ // replace
2538
+
2539
+ template <class _CharT, class _Traits, class _Allocator>
2540
+ basic_string<_CharT, _Traits, _Allocator>& basic_string<_CharT, _Traits, _Allocator>::replace(
2541
+ size_type __pos, size_type __n1, const value_type* __s, size_type __n2)
2542
+ _LIBCPP_DISABLE_UBSAN_UNSIGNED_INTEGER_CHECK {
2543
+ _LIBCPP_ASSERT_NON_NULL(__n2 == 0 || __s != nullptr, "string::replace received nullptr");
2544
+ size_type __sz = size();
2545
+ if (__pos > __sz)
2546
+ __throw_out_of_range();
2547
+ __n1 = std::min(__n1, __sz - __pos);
2548
+ size_type __cap = capacity();
2549
+ if (__cap - __sz + __n1 >= __n2) {
2550
+ value_type* __p = std::__to_address(__get_pointer());
2551
+ if (__n1 != __n2) {
2552
+ if (__n2 > __n1)
2553
+ __annotate_increase(__n2 - __n1);
2554
+ size_type __n_move = __sz - __pos - __n1;
2555
+ if (__n_move != 0) {
2556
+ if (__n1 > __n2) {
2557
+ traits_type::move(__p + __pos, __s, __n2);
2558
+ traits_type::move(__p + __pos + __n2, __p + __pos + __n1, __n_move);
2559
+ return __null_terminate_at(__p, __sz + (__n2 - __n1));
2560
+ }
2561
+ if (std::__is_pointer_in_range(__p + __pos + 1, __p + __sz, __s)) {
2562
+ if (__p + __pos + __n1 <= __s)
2563
+ __s += __n2 - __n1;
2564
+ else // __p + __pos < __s < __p + __pos + __n1
2565
+ {
2566
+ traits_type::move(__p + __pos, __s, __n1);
2567
+ __pos += __n1;
2568
+ __s += __n2;
2569
+ __n2 -= __n1;
2570
+ __n1 = 0;
2571
+ }
2572
+ }
2573
+ traits_type::move(__p + __pos + __n2, __p + __pos + __n1, __n_move);
2574
+ }
2575
+ }
2576
+ traits_type::move(__p + __pos, __s, __n2);
2577
+ return __null_terminate_at(__p, __sz + (__n2 - __n1));
2578
+ } else
2579
+ __grow_by_and_replace(__cap, __sz - __n1 + __n2 - __cap, __sz, __pos, __n1, __n2, __s);
2580
+ return *this;
2581
+ }
2582
+
2583
+ template <class _CharT, class _Traits, class _Allocator>
2584
+ basic_string<_CharT, _Traits, _Allocator>&
2585
+ basic_string<_CharT, _Traits, _Allocator>::replace(size_type __pos, size_type __n1, size_type __n2, value_type __c) {
2586
+ size_type __sz = size();
2587
+ if (__pos > __sz)
2588
+ __throw_out_of_range();
2589
+ __n1 = std::min(__n1, __sz - __pos);
2590
+ size_type __cap = capacity();
2591
+ value_type* __p;
2592
+ if (__cap - __sz + __n1 >= __n2) {
2593
+ __p = std::__to_address(__get_pointer());
2594
+ if (__n1 != __n2) {
2595
+ if (__n2 > __n1)
2596
+ __annotate_increase(__n2 - __n1);
2597
+ size_type __n_move = __sz - __pos - __n1;
2598
+ if (__n_move != 0)
2599
+ traits_type::move(__p + __pos + __n2, __p + __pos + __n1, __n_move);
2600
+ }
2601
+ } else {
2602
+ __grow_by_without_replace(__cap, __sz - __n1 + __n2 - __cap, __sz, __pos, __n1, __n2);
2603
+ __p = std::__to_address(__get_long_pointer());
2604
+ }
2605
+ traits_type::assign(__p + __pos, __n2, __c);
2606
+ return __null_terminate_at(__p, __sz - (__n1 - __n2));
2607
+ }
2608
+
2609
+ template <class _CharT, class _Traits, class _Allocator>
2610
+ template <class _InputIterator, __enable_if_t<__has_input_iterator_category<_InputIterator>::value, int> >
2611
+ basic_string<_CharT, _Traits, _Allocator>& basic_string<_CharT, _Traits, _Allocator>::replace(
2612
+ const_iterator __i1, const_iterator __i2, _InputIterator __j1, _InputIterator __j2) {
2613
+ const basic_string __temp(__j1, __j2, __alloc());
2614
+ return replace(__i1, __i2, __temp);
2615
+ }
2616
+
2617
+ template <class _CharT, class _Traits, class _Allocator>
2618
+ basic_string<_CharT, _Traits, _Allocator>& basic_string<_CharT, _Traits, _Allocator>::replace(
2619
+ size_type __pos1, size_type __n1, const basic_string& __str, size_type __pos2, size_type __n2) {
2620
+ size_type __str_sz = __str.size();
2621
+ if (__pos2 > __str_sz)
2622
+ __throw_out_of_range();
2623
+ return replace(__pos1, __n1, __str.data() + __pos2, std::min(__n2, __str_sz - __pos2));
2624
+ }
2625
+
2626
+ template <class _CharT, class _Traits, class _Allocator>
2627
+ template <class _Tp,
2628
+ __enable_if_t<__can_be_converted_to_string_view<_CharT, _Traits, _Tp>::value &&
2629
+ !__is_same_uncvref<_Tp, basic_string<_CharT, _Traits, _Allocator> >::value,
2630
+ int> >
2631
+ basic_string<_CharT, _Traits, _Allocator>& basic_string<_CharT, _Traits, _Allocator>::replace(
2632
+ size_type __pos1, size_type __n1, const _Tp& __t, size_type __pos2, size_type __n2) {
2633
+ __self_view __sv = __t;
2634
+ size_type __str_sz = __sv.size();
2635
+ if (__pos2 > __str_sz)
2636
+ __throw_out_of_range();
2637
+ return replace(__pos1, __n1, __sv.data() + __pos2, std::min(__n2, __str_sz - __pos2));
2638
+ }
2639
+
2640
+ template <class _CharT, class _Traits, class _Allocator>
2641
+ basic_string<_CharT, _Traits, _Allocator>&
2642
+ basic_string<_CharT, _Traits, _Allocator>::replace(size_type __pos, size_type __n1, const value_type* __s) {
2643
+ _LIBCPP_ASSERT_NON_NULL(__s != nullptr, "string::replace received nullptr");
2644
+ return replace(__pos, __n1, __s, traits_type::length(__s));
2645
+ }
2646
+
2647
+ // erase
2648
+
2649
+ // 'externally instantiated' erase() implementation, called when __n != npos.
2650
+ // Does not check __pos against size()
2651
+ template <class _CharT, class _Traits, class _Allocator>
2652
+ _LIBCPP_NOINLINE void
2653
+ basic_string<_CharT, _Traits, _Allocator>::__erase_external_with_move(size_type __pos, size_type __n) {
2654
+ if (__n) {
2655
+ size_type __sz = size();
2656
+ value_type* __p = std::__to_address(__get_pointer());
2657
+ __n = std::min(__n, __sz - __pos);
2658
+ size_type __n_move = __sz - __pos - __n;
2659
+ if (__n_move != 0)
2660
+ traits_type::move(__p + __pos, __p + __pos + __n, __n_move);
2661
+ __null_terminate_at(__p, __sz - __n);
2662
+ }
2663
+ }
2664
+
2665
+ template <class _CharT, class _Traits, class _Allocator>
2666
+ basic_string<_CharT, _Traits, _Allocator>&
2667
+ basic_string<_CharT, _Traits, _Allocator>::erase(size_type __pos, size_type __n) {
2668
+ if (__pos > size())
2669
+ __throw_out_of_range();
2670
+ if (__n == npos) {
2671
+ __erase_to_end(__pos);
2672
+ } else {
2673
+ __erase_external_with_move(__pos, __n);
2674
+ }
2675
+ return *this;
2676
+ }
2677
+
2678
+ template <class _CharT, class _Traits, class _Allocator>
2679
+ inline typename basic_string<_CharT, _Traits, _Allocator>::iterator
2680
+ basic_string<_CharT, _Traits, _Allocator>::erase(const_iterator __pos) {
2681
+ _LIBCPP_ASSERT_VALID_ELEMENT_ACCESS(
2682
+ __pos != end(), "string::erase(iterator) called with a non-dereferenceable iterator");
2683
+ iterator __b = begin();
2684
+ size_type __r = static_cast<size_type>(__pos - __b);
2685
+ erase(__r, 1);
2686
+ return __b + static_cast<difference_type>(__r);
2687
+ }
2688
+
2689
+ template <class _CharT, class _Traits, class _Allocator>
2690
+ inline typename basic_string<_CharT, _Traits, _Allocator>::iterator
2691
+ basic_string<_CharT, _Traits, _Allocator>::erase(const_iterator __first, const_iterator __last) {
2692
+ _LIBCPP_ASSERT_VALID_INPUT_RANGE(__first <= __last, "string::erase(first, last) called with invalid range");
2693
+ iterator __b = begin();
2694
+ size_type __r = static_cast<size_type>(__first - __b);
2695
+ erase(__r, static_cast<size_type>(__last - __first));
2696
+ return __b + static_cast<difference_type>(__r);
2697
+ }
2698
+
2699
+ template <class _CharT, class _Traits, class _Allocator>
2700
+ inline void basic_string<_CharT, _Traits, _Allocator>::pop_back() {
2701
+ _LIBCPP_ASSERT_VALID_ELEMENT_ACCESS(!empty(), "string::pop_back(): string is already empty");
2702
+ __erase_to_end(size() - 1);
2703
+ }
2704
+
2705
+ template <class _CharT, class _Traits, class _Allocator>
2706
+ inline void basic_string<_CharT, _Traits, _Allocator>::clear() _NOEXCEPT {
2707
+ size_type __old_size = size();
2708
+ if (__is_long()) {
2709
+ traits_type::assign(*__get_long_pointer(), value_type());
2710
+ __set_long_size(0);
2711
+ } else {
2712
+ traits_type::assign(*__get_short_pointer(), value_type());
2713
+ __set_short_size(0);
2714
+ }
2715
+ __annotate_shrink(__old_size);
2716
+ }
2717
+
2718
+ template <class _CharT, class _Traits, class _Allocator>
2719
+ void basic_string<_CharT, _Traits, _Allocator>::resize(size_type __n, value_type __c) {
2720
+ size_type __sz = size();
2721
+ if (__n > __sz)
2722
+ append(__n - __sz, __c);
2723
+ else
2724
+ __erase_to_end(__n);
2725
+ }
2726
+
2727
+ template <class _CharT, class _Traits, class _Allocator>
2728
+ inline void basic_string<_CharT, _Traits, _Allocator>::__resize_default_init(size_type __n) {
2729
+ size_type __sz = size();
2730
+ if (__n > __sz) {
2731
+ __append_default_init(__n - __sz);
2732
+ } else
2733
+ __erase_to_end(__n);
2734
+ }
2735
+
2736
+ template <class _CharT, class _Traits, class _Allocator>
2737
+ void basic_string<_CharT, _Traits, _Allocator>::reserve(size_type __requested_capacity) {
2738
+ if (__requested_capacity > max_size())
2739
+ __throw_length_error();
2740
+
2741
+ // Make sure reserve(n) never shrinks. This is technically only required in C++20
2742
+ // and later (since P0966R1), however we provide consistent behavior in all Standard
2743
+ // modes because this function is instantiated in the shared library.
2744
+ if (__requested_capacity <= capacity())
2745
+ return;
2746
+
2747
+ size_type __target_capacity = std::max(__requested_capacity, size());
2748
+ __target_capacity = __recommend(__target_capacity);
2749
+ if (__target_capacity == capacity())
2750
+ return;
2751
+
2752
+ __shrink_or_extend(__target_capacity);
2753
+ }
2754
+
2755
+ template <class _CharT, class _Traits, class _Allocator>
2756
+ inline void basic_string<_CharT, _Traits, _Allocator>::shrink_to_fit() _NOEXCEPT {
2757
+ size_type __target_capacity = __recommend(size());
2758
+ if (__target_capacity == capacity())
2759
+ return;
2760
+
2761
+ __shrink_or_extend(__target_capacity);
2762
+ }
2763
+
2764
+ template <class _CharT, class _Traits, class _Allocator>
2765
+ inline void basic_string<_CharT, _Traits, _Allocator>::__shrink_or_extend(size_type __target_capacity) {
2766
+ __annotate_delete();
2767
+ size_type __cap = capacity();
2768
+ size_type __sz = size();
2769
+
2770
+ pointer __new_data, __p;
2771
+ bool __was_long, __now_long;
2772
+ if (__fits_in_sso(__target_capacity)) {
2773
+ __was_long = true;
2774
+ __now_long = false;
2775
+ __new_data = __get_short_pointer();
2776
+ __p = __get_long_pointer();
2777
+ } else {
2778
+ if (__target_capacity > __cap) {
2779
+ // Extend
2780
+ // - called from reserve should propagate the exception thrown.
2781
+ auto __allocation = std::__allocate_at_least(__alloc(), __target_capacity + 1);
2782
+ __new_data = __allocation.ptr;
2783
+ __target_capacity = __allocation.count - 1;
2784
+ } else {
2785
+ // Shrink
2786
+ // - called from shrink_to_fit should not throw.
2787
+ // - called from reserve may throw but is not required to.
2788
+ #ifndef _LIBCPP_HAS_NO_EXCEPTIONS
2789
+ try {
2790
+ #endif // _LIBCPP_HAS_NO_EXCEPTIONS
2791
+ auto __allocation = std::__allocate_at_least(__alloc(), __target_capacity + 1);
2792
+
2793
+ // The Standard mandates shrink_to_fit() does not increase the capacity.
2794
+ // With equal capacity keep the existing buffer. This avoids extra work
2795
+ // due to swapping the elements.
2796
+ if (__allocation.count - 1 > __target_capacity) {
2797
+ __alloc_traits::deallocate(__alloc(), __allocation.ptr, __allocation.count);
2798
+ __annotate_new(__sz); // Undoes the __annotate_delete()
2799
+ return;
2800
+ }
2801
+ __new_data = __allocation.ptr;
2802
+ __target_capacity = __allocation.count - 1;
2803
+ #ifndef _LIBCPP_HAS_NO_EXCEPTIONS
2804
+ } catch (...) {
2805
+ return;
2806
+ }
2807
+ #endif // _LIBCPP_HAS_NO_EXCEPTIONS
2808
+ }
2809
+ __begin_lifetime(__new_data, __target_capacity + 1);
2810
+ __now_long = true;
2811
+ __was_long = __is_long();
2812
+ __p = __get_pointer();
2813
+ }
2814
+ traits_type::copy(std::__to_address(__new_data), std::__to_address(__p), size() + 1);
2815
+ if (__was_long)
2816
+ __alloc_traits::deallocate(__alloc(), __p, __cap + 1);
2817
+ if (__now_long) {
2818
+ __set_long_cap(__target_capacity + 1);
2819
+ __set_long_size(__sz);
2820
+ __set_long_pointer(__new_data);
2821
+ } else
2822
+ __set_short_size(__sz);
2823
+ __annotate_new(__sz);
2824
+ }
2825
+
2826
+ template <class _CharT, class _Traits, class _Allocator>
2827
+ typename basic_string<_CharT, _Traits, _Allocator>::const_reference
2828
+ basic_string<_CharT, _Traits, _Allocator>::at(size_type __n) const {
2829
+ if (__n >= size())
2830
+ __throw_out_of_range();
2831
+ return (*this)[__n];
2832
+ }
2833
+
2834
+ template <class _CharT, class _Traits, class _Allocator>
2835
+ typename basic_string<_CharT, _Traits, _Allocator>::reference
2836
+ basic_string<_CharT, _Traits, _Allocator>::at(size_type __n) {
2837
+ if (__n >= size())
2838
+ __throw_out_of_range();
2839
+ return (*this)[__n];
2840
+ }
2841
+
2842
+ template <class _CharT, class _Traits, class _Allocator>
2843
+ typename basic_string<_CharT, _Traits, _Allocator>::size_type
2844
+ basic_string<_CharT, _Traits, _Allocator>::copy(value_type* __s, size_type __n, size_type __pos) const {
2845
+ size_type __sz = size();
2846
+ if (__pos > __sz)
2847
+ __throw_out_of_range();
2848
+ size_type __rlen = std::min(__n, __sz - __pos);
2849
+ traits_type::copy(__s, data() + __pos, __rlen);
2850
+ return __rlen;
2851
+ }
2852
+
2853
+ template <class _CharT, class _Traits, class _Allocator>
2854
+ inline void basic_string<_CharT, _Traits, _Allocator>::swap(basic_string& __str) {
2855
+ _LIBCPP_ASSERT_COMPATIBLE_ALLOCATOR(
2856
+ __alloc_traits::propagate_on_container_swap::value || __alloc_traits::is_always_equal::value ||
2857
+ __alloc() == __str.__alloc(),
2858
+ "swapping non-equal allocators");
2859
+ if (!__is_long())
2860
+ __annotate_delete();
2861
+ if (this != &__str && !__str.__is_long())
2862
+ __str.__annotate_delete();
2863
+ std::swap(__r_.first(), __str.__r_.first());
2864
+ std::__swap_allocator(__alloc(), __str.__alloc());
2865
+ if (!__is_long())
2866
+ __annotate_new(__get_short_size());
2867
+ if (this != &__str && !__str.__is_long())
2868
+ __str.__annotate_new(__str.__get_short_size());
2869
+ }
2870
+
2871
+ // find
2872
+
2873
+ template <class _Traits>
2874
+ struct _LIBCPP_HIDDEN __traits_eq {
2875
+ typedef typename _Traits::char_type char_type;
2876
+ _LIBCPP_HIDE_FROM_ABI bool operator()(const char_type& __x, const char_type& __y) _NOEXCEPT {
2877
+ return _Traits::eq(__x, __y);
2878
+ }
2879
+ };
2880
+
2881
+ template <class _CharT, class _Traits, class _Allocator>
2882
+ typename basic_string<_CharT, _Traits, _Allocator>::size_type
2883
+ basic_string<_CharT, _Traits, _Allocator>::find(const value_type* __s, size_type __pos, size_type __n) const _NOEXCEPT {
2884
+ _LIBCPP_ASSERT_NON_NULL(__n == 0 || __s != nullptr, "string::find(): received nullptr");
2885
+ return std::__str_find<value_type, size_type, traits_type, npos>(data(), size(), __s, __pos, __n);
2886
+ }
2887
+
2888
+ template <class _CharT, class _Traits, class _Allocator>
2889
+ inline typename basic_string<_CharT, _Traits, _Allocator>::size_type
2890
+ basic_string<_CharT, _Traits, _Allocator>::find(const basic_string& __str, size_type __pos) const _NOEXCEPT {
2891
+ return std::__str_find<value_type, size_type, traits_type, npos>(data(), size(), __str.data(), __pos, __str.size());
2892
+ }
2893
+
2894
+ template <class _CharT, class _Traits, class _Allocator>
2895
+ template <class _Tp, __enable_if_t<__can_be_converted_to_string_view<_CharT, _Traits, _Tp>::value, int> >
2896
+ typename basic_string<_CharT, _Traits, _Allocator>::size_type
2897
+ basic_string<_CharT, _Traits, _Allocator>::find(const _Tp& __t, size_type __pos) const _NOEXCEPT {
2898
+ __self_view __sv = __t;
2899
+ return std::__str_find<value_type, size_type, traits_type, npos>(data(), size(), __sv.data(), __pos, __sv.size());
2900
+ }
2901
+
2902
+ template <class _CharT, class _Traits, class _Allocator>
2903
+ inline typename basic_string<_CharT, _Traits, _Allocator>::size_type
2904
+ basic_string<_CharT, _Traits, _Allocator>::find(const value_type* __s, size_type __pos) const _NOEXCEPT {
2905
+ _LIBCPP_ASSERT_NON_NULL(__s != nullptr, "string::find(): received nullptr");
2906
+ return std::__str_find<value_type, size_type, traits_type, npos>(
2907
+ data(), size(), __s, __pos, traits_type::length(__s));
2908
+ }
2909
+
2910
+ template <class _CharT, class _Traits, class _Allocator>
2911
+ typename basic_string<_CharT, _Traits, _Allocator>::size_type
2912
+ basic_string<_CharT, _Traits, _Allocator>::find(value_type __c, size_type __pos) const _NOEXCEPT {
2913
+ return std::__str_find<value_type, size_type, traits_type, npos>(data(), size(), __c, __pos);
2914
+ }
2915
+
2916
+ // rfind
2917
+
2918
+ template <class _CharT, class _Traits, class _Allocator>
2919
+ typename basic_string<_CharT, _Traits, _Allocator>::size_type basic_string<_CharT, _Traits, _Allocator>::rfind(
2920
+ const value_type* __s, size_type __pos, size_type __n) const _NOEXCEPT {
2921
+ _LIBCPP_ASSERT_NON_NULL(__n == 0 || __s != nullptr, "string::rfind(): received nullptr");
2922
+ return std::__str_rfind<value_type, size_type, traits_type, npos>(data(), size(), __s, __pos, __n);
2923
+ }
2924
+
2925
+ template <class _CharT, class _Traits, class _Allocator>
2926
+ inline typename basic_string<_CharT, _Traits, _Allocator>::size_type
2927
+ basic_string<_CharT, _Traits, _Allocator>::rfind(const basic_string& __str, size_type __pos) const _NOEXCEPT {
2928
+ return std::__str_rfind<value_type, size_type, traits_type, npos>(data(), size(), __str.data(), __pos, __str.size());
2929
+ }
2930
+
2931
+ template <class _CharT, class _Traits, class _Allocator>
2932
+ template <class _Tp, __enable_if_t<__can_be_converted_to_string_view<_CharT, _Traits, _Tp>::value, int> >
2933
+ typename basic_string<_CharT, _Traits, _Allocator>::size_type
2934
+ basic_string<_CharT, _Traits, _Allocator>::rfind(const _Tp& __t, size_type __pos) const _NOEXCEPT {
2935
+ __self_view __sv = __t;
2936
+ return std::__str_rfind<value_type, size_type, traits_type, npos>(data(), size(), __sv.data(), __pos, __sv.size());
2937
+ }
2938
+
2939
+ template <class _CharT, class _Traits, class _Allocator>
2940
+ inline typename basic_string<_CharT, _Traits, _Allocator>::size_type
2941
+ basic_string<_CharT, _Traits, _Allocator>::rfind(const value_type* __s, size_type __pos) const _NOEXCEPT {
2942
+ _LIBCPP_ASSERT_NON_NULL(__s != nullptr, "string::rfind(): received nullptr");
2943
+ return std::__str_rfind<value_type, size_type, traits_type, npos>(
2944
+ data(), size(), __s, __pos, traits_type::length(__s));
2945
+ }
2946
+
2947
+ template <class _CharT, class _Traits, class _Allocator>
2948
+ typename basic_string<_CharT, _Traits, _Allocator>::size_type
2949
+ basic_string<_CharT, _Traits, _Allocator>::rfind(value_type __c, size_type __pos) const _NOEXCEPT {
2950
+ return std::__str_rfind<value_type, size_type, traits_type, npos>(data(), size(), __c, __pos);
2951
+ }
2952
+
2953
+ // find_first_of
2954
+
2955
+ template <class _CharT, class _Traits, class _Allocator>
2956
+ typename basic_string<_CharT, _Traits, _Allocator>::size_type basic_string<_CharT, _Traits, _Allocator>::find_first_of(
2957
+ const value_type* __s, size_type __pos, size_type __n) const _NOEXCEPT {
2958
+ _LIBCPP_ASSERT_NON_NULL(__n == 0 || __s != nullptr, "string::find_first_of(): received nullptr");
2959
+ return std::__str_find_first_of<value_type, size_type, traits_type, npos>(data(), size(), __s, __pos, __n);
2960
+ }
2961
+
2962
+ template <class _CharT, class _Traits, class _Allocator>
2963
+ inline typename basic_string<_CharT, _Traits, _Allocator>::size_type
2964
+ basic_string<_CharT, _Traits, _Allocator>::find_first_of(const basic_string& __str, size_type __pos) const _NOEXCEPT {
2965
+ return std::__str_find_first_of<value_type, size_type, traits_type, npos>(
2966
+ data(), size(), __str.data(), __pos, __str.size());
2967
+ }
2968
+
2969
+ template <class _CharT, class _Traits, class _Allocator>
2970
+ template <class _Tp, __enable_if_t<__can_be_converted_to_string_view<_CharT, _Traits, _Tp>::value, int> >
2971
+ typename basic_string<_CharT, _Traits, _Allocator>::size_type
2972
+ basic_string<_CharT, _Traits, _Allocator>::find_first_of(const _Tp& __t, size_type __pos) const _NOEXCEPT {
2973
+ __self_view __sv = __t;
2974
+ return std::__str_find_first_of<value_type, size_type, traits_type, npos>(
2975
+ data(), size(), __sv.data(), __pos, __sv.size());
2976
+ }
2977
+
2978
+ template <class _CharT, class _Traits, class _Allocator>
2979
+ inline typename basic_string<_CharT, _Traits, _Allocator>::size_type
2980
+ basic_string<_CharT, _Traits, _Allocator>::find_first_of(const value_type* __s, size_type __pos) const _NOEXCEPT {
2981
+ _LIBCPP_ASSERT_NON_NULL(__s != nullptr, "string::find_first_of(): received nullptr");
2982
+ return std::__str_find_first_of<value_type, size_type, traits_type, npos>(
2983
+ data(), size(), __s, __pos, traits_type::length(__s));
2984
+ }
2985
+
2986
+ template <class _CharT, class _Traits, class _Allocator>
2987
+ inline typename basic_string<_CharT, _Traits, _Allocator>::size_type
2988
+ basic_string<_CharT, _Traits, _Allocator>::find_first_of(value_type __c, size_type __pos) const _NOEXCEPT {
2989
+ return find(__c, __pos);
2990
+ }
2991
+
2992
+ // find_last_of
2993
+
2994
+ template <class _CharT, class _Traits, class _Allocator>
2995
+ inline typename basic_string<_CharT, _Traits, _Allocator>::size_type
2996
+ basic_string<_CharT, _Traits, _Allocator>::find_last_of(
2997
+ const value_type* __s, size_type __pos, size_type __n) const _NOEXCEPT {
2998
+ _LIBCPP_ASSERT_NON_NULL(__n == 0 || __s != nullptr, "string::find_last_of(): received nullptr");
2999
+ return std::__str_find_last_of<value_type, size_type, traits_type, npos>(data(), size(), __s, __pos, __n);
3000
+ }
3001
+
3002
+ template <class _CharT, class _Traits, class _Allocator>
3003
+ inline typename basic_string<_CharT, _Traits, _Allocator>::size_type
3004
+ basic_string<_CharT, _Traits, _Allocator>::find_last_of(const basic_string& __str, size_type __pos) const _NOEXCEPT {
3005
+ return std::__str_find_last_of<value_type, size_type, traits_type, npos>(
3006
+ data(), size(), __str.data(), __pos, __str.size());
3007
+ }
3008
+
3009
+ template <class _CharT, class _Traits, class _Allocator>
3010
+ template <class _Tp, __enable_if_t<__can_be_converted_to_string_view<_CharT, _Traits, _Tp>::value, int> >
3011
+ typename basic_string<_CharT, _Traits, _Allocator>::size_type
3012
+ basic_string<_CharT, _Traits, _Allocator>::find_last_of(const _Tp& __t, size_type __pos) const _NOEXCEPT {
3013
+ __self_view __sv = __t;
3014
+ return std::__str_find_last_of<value_type, size_type, traits_type, npos>(
3015
+ data(), size(), __sv.data(), __pos, __sv.size());
3016
+ }
3017
+
3018
+ template <class _CharT, class _Traits, class _Allocator>
3019
+ inline typename basic_string<_CharT, _Traits, _Allocator>::size_type
3020
+ basic_string<_CharT, _Traits, _Allocator>::find_last_of(const value_type* __s, size_type __pos) const _NOEXCEPT {
3021
+ _LIBCPP_ASSERT_NON_NULL(__s != nullptr, "string::find_last_of(): received nullptr");
3022
+ return std::__str_find_last_of<value_type, size_type, traits_type, npos>(
3023
+ data(), size(), __s, __pos, traits_type::length(__s));
3024
+ }
3025
+
3026
+ template <class _CharT, class _Traits, class _Allocator>
3027
+ inline typename basic_string<_CharT, _Traits, _Allocator>::size_type
3028
+ basic_string<_CharT, _Traits, _Allocator>::find_last_of(value_type __c, size_type __pos) const _NOEXCEPT {
3029
+ return rfind(__c, __pos);
3030
+ }
3031
+
3032
+ // find_first_not_of
3033
+
3034
+ template <class _CharT, class _Traits, class _Allocator>
3035
+ typename basic_string<_CharT, _Traits, _Allocator>::size_type
3036
+ basic_string<_CharT, _Traits, _Allocator>::find_first_not_of(
3037
+ const value_type* __s, size_type __pos, size_type __n) const _NOEXCEPT {
3038
+ _LIBCPP_ASSERT_NON_NULL(__n == 0 || __s != nullptr, "string::find_first_not_of(): received nullptr");
3039
+ return std::__str_find_first_not_of<value_type, size_type, traits_type, npos>(data(), size(), __s, __pos, __n);
3040
+ }
3041
+
3042
+ template <class _CharT, class _Traits, class _Allocator>
3043
+ inline typename basic_string<_CharT, _Traits, _Allocator>::size_type
3044
+ basic_string<_CharT, _Traits, _Allocator>::find_first_not_of(
3045
+ const basic_string& __str, size_type __pos) const _NOEXCEPT {
3046
+ return std::__str_find_first_not_of<value_type, size_type, traits_type, npos>(
3047
+ data(), size(), __str.data(), __pos, __str.size());
3048
+ }
3049
+
3050
+ template <class _CharT, class _Traits, class _Allocator>
3051
+ template <class _Tp, __enable_if_t<__can_be_converted_to_string_view<_CharT, _Traits, _Tp>::value, int> >
3052
+ typename basic_string<_CharT, _Traits, _Allocator>::size_type
3053
+ basic_string<_CharT, _Traits, _Allocator>::find_first_not_of(const _Tp& __t, size_type __pos) const _NOEXCEPT {
3054
+ __self_view __sv = __t;
3055
+ return std::__str_find_first_not_of<value_type, size_type, traits_type, npos>(
3056
+ data(), size(), __sv.data(), __pos, __sv.size());
3057
+ }
3058
+
3059
+ template <class _CharT, class _Traits, class _Allocator>
3060
+ inline typename basic_string<_CharT, _Traits, _Allocator>::size_type
3061
+ basic_string<_CharT, _Traits, _Allocator>::find_first_not_of(const value_type* __s, size_type __pos) const _NOEXCEPT {
3062
+ _LIBCPP_ASSERT_NON_NULL(__s != nullptr, "string::find_first_not_of(): received nullptr");
3063
+ return std::__str_find_first_not_of<value_type, size_type, traits_type, npos>(
3064
+ data(), size(), __s, __pos, traits_type::length(__s));
3065
+ }
3066
+
3067
+ template <class _CharT, class _Traits, class _Allocator>
3068
+ inline typename basic_string<_CharT, _Traits, _Allocator>::size_type
3069
+ basic_string<_CharT, _Traits, _Allocator>::find_first_not_of(value_type __c, size_type __pos) const _NOEXCEPT {
3070
+ return std::__str_find_first_not_of<value_type, size_type, traits_type, npos>(data(), size(), __c, __pos);
3071
+ }
3072
+
3073
+ // find_last_not_of
3074
+
3075
+ template <class _CharT, class _Traits, class _Allocator>
3076
+ typename basic_string<_CharT, _Traits, _Allocator>::size_type
3077
+ basic_string<_CharT, _Traits, _Allocator>::find_last_not_of(
3078
+ const value_type* __s, size_type __pos, size_type __n) const _NOEXCEPT {
3079
+ _LIBCPP_ASSERT_NON_NULL(__n == 0 || __s != nullptr, "string::find_last_not_of(): received nullptr");
3080
+ return std::__str_find_last_not_of<value_type, size_type, traits_type, npos>(data(), size(), __s, __pos, __n);
3081
+ }
3082
+
3083
+ template <class _CharT, class _Traits, class _Allocator>
3084
+ inline typename basic_string<_CharT, _Traits, _Allocator>::size_type
3085
+ basic_string<_CharT, _Traits, _Allocator>::find_last_not_of(
3086
+ const basic_string& __str, size_type __pos) const _NOEXCEPT {
3087
+ return std::__str_find_last_not_of<value_type, size_type, traits_type, npos>(
3088
+ data(), size(), __str.data(), __pos, __str.size());
3089
+ }
3090
+
3091
+ template <class _CharT, class _Traits, class _Allocator>
3092
+ template <class _Tp, __enable_if_t<__can_be_converted_to_string_view<_CharT, _Traits, _Tp>::value, int> >
3093
+ typename basic_string<_CharT, _Traits, _Allocator>::size_type
3094
+ basic_string<_CharT, _Traits, _Allocator>::find_last_not_of(const _Tp& __t, size_type __pos) const _NOEXCEPT {
3095
+ __self_view __sv = __t;
3096
+ return std::__str_find_last_not_of<value_type, size_type, traits_type, npos>(
3097
+ data(), size(), __sv.data(), __pos, __sv.size());
3098
+ }
3099
+
3100
+ template <class _CharT, class _Traits, class _Allocator>
3101
+ inline typename basic_string<_CharT, _Traits, _Allocator>::size_type
3102
+ basic_string<_CharT, _Traits, _Allocator>::find_last_not_of(const value_type* __s, size_type __pos) const _NOEXCEPT {
3103
+ _LIBCPP_ASSERT_NON_NULL(__s != nullptr, "string::find_last_not_of(): received nullptr");
3104
+ return std::__str_find_last_not_of<value_type, size_type, traits_type, npos>(
3105
+ data(), size(), __s, __pos, traits_type::length(__s));
3106
+ }
3107
+
3108
+ template <class _CharT, class _Traits, class _Allocator>
3109
+ inline typename basic_string<_CharT, _Traits, _Allocator>::size_type
3110
+ basic_string<_CharT, _Traits, _Allocator>::find_last_not_of(value_type __c, size_type __pos) const _NOEXCEPT {
3111
+ return std::__str_find_last_not_of<value_type, size_type, traits_type, npos>(data(), size(), __c, __pos);
3112
+ }
3113
+
3114
+ // compare
3115
+
3116
+ template <class _CharT, class _Traits, class _Allocator>
3117
+ template <class _Tp, __enable_if_t<__can_be_converted_to_string_view<_CharT, _Traits, _Tp>::value, int> >
3118
+ int basic_string<_CharT, _Traits, _Allocator>::compare(const _Tp& __t) const _NOEXCEPT {
3119
+ __self_view __sv = __t;
3120
+ size_t __lhs_sz = size();
3121
+ size_t __rhs_sz = __sv.size();
3122
+ int __result = traits_type::compare(data(), __sv.data(), std::min(__lhs_sz, __rhs_sz));
3123
+ if (__result != 0)
3124
+ return __result;
3125
+ if (__lhs_sz < __rhs_sz)
3126
+ return -1;
3127
+ if (__lhs_sz > __rhs_sz)
3128
+ return 1;
3129
+ return 0;
3130
+ }
3131
+
3132
+ template <class _CharT, class _Traits, class _Allocator>
3133
+ inline int basic_string<_CharT, _Traits, _Allocator>::compare(const basic_string& __str) const _NOEXCEPT {
3134
+ return compare(__self_view(__str));
3135
+ }
3136
+
3137
+ template <class _CharT, class _Traits, class _Allocator>
3138
+ inline int basic_string<_CharT, _Traits, _Allocator>::compare(
3139
+ size_type __pos1, size_type __n1, const value_type* __s, size_type __n2) const {
3140
+ _LIBCPP_ASSERT_NON_NULL(__n2 == 0 || __s != nullptr, "string::compare(): received nullptr");
3141
+ size_type __sz = size();
3142
+ if (__pos1 > __sz || __n2 == npos)
3143
+ __throw_out_of_range();
3144
+ size_type __rlen = std::min(__n1, __sz - __pos1);
3145
+ int __r = traits_type::compare(data() + __pos1, __s, std::min(__rlen, __n2));
3146
+ if (__r == 0) {
3147
+ if (__rlen < __n2)
3148
+ __r = -1;
3149
+ else if (__rlen > __n2)
3150
+ __r = 1;
3151
+ }
3152
+ return __r;
3153
+ }
3154
+
3155
+ template <class _CharT, class _Traits, class _Allocator>
3156
+ template <class _Tp, __enable_if_t<__can_be_converted_to_string_view<_CharT, _Traits, _Tp>::value, int> >
3157
+ int basic_string<_CharT, _Traits, _Allocator>::compare(size_type __pos1, size_type __n1, const _Tp& __t) const {
3158
+ __self_view __sv = __t;
3159
+ return compare(__pos1, __n1, __sv.data(), __sv.size());
3160
+ }
3161
+
3162
+ template <class _CharT, class _Traits, class _Allocator>
3163
+ inline int
3164
+ basic_string<_CharT, _Traits, _Allocator>::compare(size_type __pos1, size_type __n1, const basic_string& __str) const {
3165
+ return compare(__pos1, __n1, __str.data(), __str.size());
3166
+ }
3167
+
3168
+ template <class _CharT, class _Traits, class _Allocator>
3169
+ template <class _Tp,
3170
+ __enable_if_t<__can_be_converted_to_string_view<_CharT, _Traits, _Tp>::value &&
3171
+ !__is_same_uncvref<_Tp, basic_string<_CharT, _Traits, _Allocator> >::value,
3172
+ int> >
3173
+ int basic_string<_CharT, _Traits, _Allocator>::compare(
3174
+ size_type __pos1, size_type __n1, const _Tp& __t, size_type __pos2, size_type __n2) const {
3175
+ __self_view __sv = __t;
3176
+ return __self_view(*this).substr(__pos1, __n1).compare(__sv.substr(__pos2, __n2));
3177
+ }
3178
+
3179
+ template <class _CharT, class _Traits, class _Allocator>
3180
+ int basic_string<_CharT, _Traits, _Allocator>::compare(
3181
+ size_type __pos1, size_type __n1, const basic_string& __str, size_type __pos2, size_type __n2) const {
3182
+ return compare(__pos1, __n1, __self_view(__str), __pos2, __n2);
3183
+ }
3184
+
3185
+ template <class _CharT, class _Traits, class _Allocator>
3186
+ int basic_string<_CharT, _Traits, _Allocator>::compare(const value_type* __s) const _NOEXCEPT {
3187
+ _LIBCPP_ASSERT_NON_NULL(__s != nullptr, "string::compare(): received nullptr");
3188
+ return compare(0, npos, __s, traits_type::length(__s));
3189
+ }
3190
+
3191
+ template <class _CharT, class _Traits, class _Allocator>
3192
+ int basic_string<_CharT, _Traits, _Allocator>::compare(size_type __pos1, size_type __n1, const value_type* __s) const {
3193
+ _LIBCPP_ASSERT_NON_NULL(__s != nullptr, "string::compare(): received nullptr");
3194
+ return compare(__pos1, __n1, __s, traits_type::length(__s));
3195
+ }
3196
+
3197
+ // __invariants
3198
+
3199
+ template <class _CharT, class _Traits, class _Allocator>
3200
+ inline bool basic_string<_CharT, _Traits, _Allocator>::__invariants() const {
3201
+ if (size() > capacity())
3202
+ return false;
3203
+ if (capacity() < __min_cap - 1)
3204
+ return false;
3205
+ if (data() == nullptr)
3206
+ return false;
3207
+ if (!_Traits::eq(data()[size()], value_type()))
3208
+ return false;
3209
+ return true;
3210
+ }
3211
+
3212
+ // __clear_and_shrink
3213
+
3214
+ template <class _CharT, class _Traits, class _Allocator>
3215
+ inline void basic_string<_CharT, _Traits, _Allocator>::__clear_and_shrink() _NOEXCEPT {
3216
+ clear();
3217
+ if (__is_long()) {
3218
+ __annotate_delete();
3219
+ __alloc_traits::deallocate(__alloc(), __get_long_pointer(), capacity() + 1);
3220
+ __r_.first() = __rep();
3221
+ }
3222
+ }
3223
+
3224
+ // operator==
3225
+
3226
+ template <class _CharT, class _Traits, class _Allocator>
3227
+ inline _LIBCPP_HIDE_FROM_ABI bool operator==(const basic_string<_CharT, _Traits, _Allocator>& __lhs,
3228
+ const basic_string<_CharT, _Traits, _Allocator>& __rhs) _NOEXCEPT {
3229
+ size_t __lhs_sz = __lhs.size();
3230
+ return __lhs_sz == __rhs.size() && _Traits::compare(__lhs.data(), __rhs.data(), __lhs_sz) == 0;
3231
+ }
3232
+
3233
+ template <class _Allocator>
3234
+ inline _LIBCPP_HIDE_FROM_ABI bool operator==(const basic_string<char, char_traits<char>, _Allocator>& __lhs,
3235
+ const basic_string<char, char_traits<char>, _Allocator>& __rhs) _NOEXCEPT {
3236
+ size_t __sz = __lhs.size();
3237
+ if (__sz != __rhs.size())
3238
+ return false;
3239
+ return char_traits<char>::compare(__lhs.data(), __rhs.data(), __sz) == 0;
3240
+ }
3241
+
3242
+ template <class _CharT, class _Traits, class _Allocator>
3243
+ inline _LIBCPP_HIDE_FROM_ABI bool
3244
+ operator==(const _CharT* __lhs, const basic_string<_CharT, _Traits, _Allocator>& __rhs) _NOEXCEPT {
3245
+ typedef basic_string<_CharT, _Traits, _Allocator> _String;
3246
+ _LIBCPP_ASSERT_NON_NULL(__lhs != nullptr, "operator==(char*, basic_string): received nullptr");
3247
+ size_t __lhs_len = _Traits::length(__lhs);
3248
+ if (__lhs_len != __rhs.size())
3249
+ return false;
3250
+ return __rhs.compare(0, _String::npos, __lhs, __lhs_len) == 0;
3251
+ }
3252
+
3253
+ template <class _CharT, class _Traits, class _Allocator>
3254
+ inline _LIBCPP_HIDE_FROM_ABI bool
3255
+ operator==(const basic_string<_CharT, _Traits, _Allocator>& __lhs, const _CharT* __rhs) _NOEXCEPT {
3256
+ typedef basic_string<_CharT, _Traits, _Allocator> _String;
3257
+ _LIBCPP_ASSERT_NON_NULL(__rhs != nullptr, "operator==(basic_string, char*): received nullptr");
3258
+ size_t __rhs_len = _Traits::length(__rhs);
3259
+ if (__rhs_len != __lhs.size())
3260
+ return false;
3261
+ return __lhs.compare(0, _String::npos, __rhs, __rhs_len) == 0;
3262
+ }
3263
+
3264
+ template <class _CharT, class _Traits, class _Allocator>
3265
+ inline _LIBCPP_HIDE_FROM_ABI bool operator!=(const basic_string<_CharT, _Traits, _Allocator>& __lhs,
3266
+ const basic_string<_CharT, _Traits, _Allocator>& __rhs) _NOEXCEPT {
3267
+ return !(__lhs == __rhs);
3268
+ }
3269
+
3270
+ template <class _CharT, class _Traits, class _Allocator>
3271
+ inline _LIBCPP_HIDE_FROM_ABI bool
3272
+ operator!=(const _CharT* __lhs, const basic_string<_CharT, _Traits, _Allocator>& __rhs) _NOEXCEPT {
3273
+ return !(__lhs == __rhs);
3274
+ }
3275
+
3276
+ template <class _CharT, class _Traits, class _Allocator>
3277
+ inline _LIBCPP_HIDE_FROM_ABI bool
3278
+ operator!=(const basic_string<_CharT, _Traits, _Allocator>& __lhs, const _CharT* __rhs) _NOEXCEPT {
3279
+ return !(__lhs == __rhs);
3280
+ }
3281
+
3282
+ // operator<
3283
+
3284
+ template <class _CharT, class _Traits, class _Allocator>
3285
+ inline _LIBCPP_HIDE_FROM_ABI bool operator<(const basic_string<_CharT, _Traits, _Allocator>& __lhs,
3286
+ const basic_string<_CharT, _Traits, _Allocator>& __rhs) _NOEXCEPT {
3287
+ return __lhs.compare(__rhs) < 0;
3288
+ }
3289
+
3290
+ template <class _CharT, class _Traits, class _Allocator>
3291
+ inline _LIBCPP_HIDE_FROM_ABI bool
3292
+ operator<(const basic_string<_CharT, _Traits, _Allocator>& __lhs, const _CharT* __rhs) _NOEXCEPT {
3293
+ return __lhs.compare(__rhs) < 0;
3294
+ }
3295
+
3296
+ template <class _CharT, class _Traits, class _Allocator>
3297
+ inline _LIBCPP_HIDE_FROM_ABI bool
3298
+ operator<(const _CharT* __lhs, const basic_string<_CharT, _Traits, _Allocator>& __rhs) _NOEXCEPT {
3299
+ return __rhs.compare(__lhs) > 0;
3300
+ }
3301
+
3302
+ // operator>
3303
+
3304
+ template <class _CharT, class _Traits, class _Allocator>
3305
+ inline _LIBCPP_HIDE_FROM_ABI bool operator>(const basic_string<_CharT, _Traits, _Allocator>& __lhs,
3306
+ const basic_string<_CharT, _Traits, _Allocator>& __rhs) _NOEXCEPT {
3307
+ return __rhs < __lhs;
3308
+ }
3309
+
3310
+ template <class _CharT, class _Traits, class _Allocator>
3311
+ inline _LIBCPP_HIDE_FROM_ABI bool
3312
+ operator>(const basic_string<_CharT, _Traits, _Allocator>& __lhs, const _CharT* __rhs) _NOEXCEPT {
3313
+ return __rhs < __lhs;
3314
+ }
3315
+
3316
+ template <class _CharT, class _Traits, class _Allocator>
3317
+ inline _LIBCPP_HIDE_FROM_ABI bool
3318
+ operator>(const _CharT* __lhs, const basic_string<_CharT, _Traits, _Allocator>& __rhs) _NOEXCEPT {
3319
+ return __rhs < __lhs;
3320
+ }
3321
+
3322
+ // operator<=
3323
+
3324
+ template <class _CharT, class _Traits, class _Allocator>
3325
+ inline _LIBCPP_HIDE_FROM_ABI bool operator<=(const basic_string<_CharT, _Traits, _Allocator>& __lhs,
3326
+ const basic_string<_CharT, _Traits, _Allocator>& __rhs) _NOEXCEPT {
3327
+ return !(__rhs < __lhs);
3328
+ }
3329
+
3330
+ template <class _CharT, class _Traits, class _Allocator>
3331
+ inline _LIBCPP_HIDE_FROM_ABI bool
3332
+ operator<=(const basic_string<_CharT, _Traits, _Allocator>& __lhs, const _CharT* __rhs) _NOEXCEPT {
3333
+ return !(__rhs < __lhs);
3334
+ }
3335
+
3336
+ template <class _CharT, class _Traits, class _Allocator>
3337
+ inline _LIBCPP_HIDE_FROM_ABI bool
3338
+ operator<=(const _CharT* __lhs, const basic_string<_CharT, _Traits, _Allocator>& __rhs) _NOEXCEPT {
3339
+ return !(__rhs < __lhs);
3340
+ }
3341
+
3342
+ // operator>=
3343
+
3344
+ template <class _CharT, class _Traits, class _Allocator>
3345
+ inline _LIBCPP_HIDE_FROM_ABI bool operator>=(const basic_string<_CharT, _Traits, _Allocator>& __lhs,
3346
+ const basic_string<_CharT, _Traits, _Allocator>& __rhs) _NOEXCEPT {
3347
+ return !(__lhs < __rhs);
3348
+ }
3349
+
3350
+ template <class _CharT, class _Traits, class _Allocator>
3351
+ inline _LIBCPP_HIDE_FROM_ABI bool
3352
+ operator>=(const basic_string<_CharT, _Traits, _Allocator>& __lhs, const _CharT* __rhs) _NOEXCEPT {
3353
+ return !(__lhs < __rhs);
3354
+ }
3355
+
3356
+ template <class _CharT, class _Traits, class _Allocator>
3357
+ inline _LIBCPP_HIDE_FROM_ABI bool
3358
+ operator>=(const _CharT* __lhs, const basic_string<_CharT, _Traits, _Allocator>& __rhs) _NOEXCEPT {
3359
+ return !(__lhs < __rhs);
3360
+ }
3361
+
3362
+ // operator +
3363
+
3364
+ template <class _CharT, class _Traits, class _Allocator>
3365
+ _LIBCPP_HIDE_FROM_ABI basic_string<_CharT, _Traits, _Allocator>
3366
+ operator+(const basic_string<_CharT, _Traits, _Allocator>& __lhs,
3367
+ const basic_string<_CharT, _Traits, _Allocator>& __rhs) {
3368
+ using _String = basic_string<_CharT, _Traits, _Allocator>;
3369
+ auto __lhs_sz = __lhs.size();
3370
+ auto __rhs_sz = __rhs.size();
3371
+ _String __r(__uninitialized_size_tag(),
3372
+ __lhs_sz + __rhs_sz,
3373
+ _String::__alloc_traits::select_on_container_copy_construction(__lhs.get_allocator()));
3374
+ auto __ptr = std::__to_address(__r.__get_pointer());
3375
+ _Traits::copy(__ptr, __lhs.data(), __lhs_sz);
3376
+ _Traits::copy(__ptr + __lhs_sz, __rhs.data(), __rhs_sz);
3377
+ _Traits::assign(__ptr + __lhs_sz + __rhs_sz, 1, _CharT());
3378
+ return __r;
3379
+ }
3380
+
3381
+ template <class _CharT, class _Traits, class _Allocator>
3382
+ _LIBCPP_HIDDEN basic_string<_CharT, _Traits, _Allocator>
3383
+ operator+(const _CharT* __lhs, const basic_string<_CharT, _Traits, _Allocator>& __rhs) {
3384
+ using _String = basic_string<_CharT, _Traits, _Allocator>;
3385
+ auto __lhs_sz = _Traits::length(__lhs);
3386
+ auto __rhs_sz = __rhs.size();
3387
+ _String __r(__uninitialized_size_tag(),
3388
+ __lhs_sz + __rhs_sz,
3389
+ _String::__alloc_traits::select_on_container_copy_construction(__rhs.get_allocator()));
3390
+ auto __ptr = std::__to_address(__r.__get_pointer());
3391
+ _Traits::copy(__ptr, __lhs, __lhs_sz);
3392
+ _Traits::copy(__ptr + __lhs_sz, __rhs.data(), __rhs_sz);
3393
+ _Traits::assign(__ptr + __lhs_sz + __rhs_sz, 1, _CharT());
3394
+ return __r;
3395
+ }
3396
+
3397
+ template <class _CharT, class _Traits, class _Allocator>
3398
+ _LIBCPP_HIDE_FROM_ABI basic_string<_CharT, _Traits, _Allocator>
3399
+ operator+(_CharT __lhs, const basic_string<_CharT, _Traits, _Allocator>& __rhs) {
3400
+ using _String = basic_string<_CharT, _Traits, _Allocator>;
3401
+ typename _String::size_type __rhs_sz = __rhs.size();
3402
+ _String __r(__uninitialized_size_tag(),
3403
+ __rhs_sz + 1,
3404
+ _String::__alloc_traits::select_on_container_copy_construction(__rhs.get_allocator()));
3405
+ auto __ptr = std::__to_address(__r.__get_pointer());
3406
+ _Traits::assign(__ptr, 1, __lhs);
3407
+ _Traits::copy(__ptr + 1, __rhs.data(), __rhs_sz);
3408
+ _Traits::assign(__ptr + 1 + __rhs_sz, 1, _CharT());
3409
+ return __r;
3410
+ }
3411
+
3412
+ template <class _CharT, class _Traits, class _Allocator>
3413
+ inline basic_string<_CharT, _Traits, _Allocator>
3414
+ operator+(const basic_string<_CharT, _Traits, _Allocator>& __lhs, const _CharT* __rhs) {
3415
+ using _String = basic_string<_CharT, _Traits, _Allocator>;
3416
+ typename _String::size_type __lhs_sz = __lhs.size();
3417
+ typename _String::size_type __rhs_sz = _Traits::length(__rhs);
3418
+ _String __r(__uninitialized_size_tag(),
3419
+ __lhs_sz + __rhs_sz,
3420
+ _String::__alloc_traits::select_on_container_copy_construction(__lhs.get_allocator()));
3421
+ auto __ptr = std::__to_address(__r.__get_pointer());
3422
+ _Traits::copy(__ptr, __lhs.data(), __lhs_sz);
3423
+ _Traits::copy(__ptr + __lhs_sz, __rhs, __rhs_sz);
3424
+ _Traits::assign(__ptr + __lhs_sz + __rhs_sz, 1, _CharT());
3425
+ return __r;
3426
+ }
3427
+
3428
+ template <class _CharT, class _Traits, class _Allocator>
3429
+ _LIBCPP_HIDE_FROM_ABI basic_string<_CharT, _Traits, _Allocator>
3430
+ operator+(const basic_string<_CharT, _Traits, _Allocator>& __lhs, _CharT __rhs) {
3431
+ using _String = basic_string<_CharT, _Traits, _Allocator>;
3432
+ typename _String::size_type __lhs_sz = __lhs.size();
3433
+ _String __r(__uninitialized_size_tag(),
3434
+ __lhs_sz + 1,
3435
+ _String::__alloc_traits::select_on_container_copy_construction(__lhs.get_allocator()));
3436
+ auto __ptr = std::__to_address(__r.__get_pointer());
3437
+ _Traits::copy(__ptr, __lhs.data(), __lhs_sz);
3438
+ _Traits::assign(__ptr + __lhs_sz, 1, __rhs);
3439
+ _Traits::assign(__ptr + 1 + __lhs_sz, 1, _CharT());
3440
+ return __r;
3441
+ }
3442
+
3443
+ // swap
3444
+
3445
+ template <class _CharT, class _Traits, class _Allocator>
3446
+ inline _LIBCPP_HIDE_FROM_ABI void
3447
+ swap(basic_string<_CharT, _Traits, _Allocator>& __lhs, basic_string<_CharT, _Traits, _Allocator>& __rhs) {
3448
+ __lhs.swap(__rhs);
3449
+ }
3450
+
3451
+ _LIBCPP_EXPORTED_FROM_ABI int stoi(const string& __str, size_t* __idx = nullptr, int __base = 10);
3452
+ _LIBCPP_EXPORTED_FROM_ABI long stol(const string& __str, size_t* __idx = nullptr, int __base = 10);
3453
+ _LIBCPP_EXPORTED_FROM_ABI unsigned long stoul(const string& __str, size_t* __idx = nullptr, int __base = 10);
3454
+ _LIBCPP_EXPORTED_FROM_ABI long long stoll(const string& __str, size_t* __idx = nullptr, int __base = 10);
3455
+ _LIBCPP_EXPORTED_FROM_ABI unsigned long long stoull(const string& __str, size_t* __idx = nullptr, int __base = 10);
3456
+
3457
+ _LIBCPP_EXPORTED_FROM_ABI float stof(const string& __str, size_t* __idx = nullptr);
3458
+ _LIBCPP_EXPORTED_FROM_ABI double stod(const string& __str, size_t* __idx = nullptr);
3459
+ _LIBCPP_EXPORTED_FROM_ABI long double stold(const string& __str, size_t* __idx = nullptr);
3460
+
3461
+ _LIBCPP_EXPORTED_FROM_ABI string to_string(int __val);
3462
+ _LIBCPP_EXPORTED_FROM_ABI string to_string(unsigned __val);
3463
+ _LIBCPP_EXPORTED_FROM_ABI string to_string(long __val);
3464
+ _LIBCPP_EXPORTED_FROM_ABI string to_string(unsigned long __val);
3465
+ _LIBCPP_EXPORTED_FROM_ABI string to_string(long long __val);
3466
+ _LIBCPP_EXPORTED_FROM_ABI string to_string(unsigned long long __val);
3467
+ _LIBCPP_EXPORTED_FROM_ABI string to_string(float __val);
3468
+ _LIBCPP_EXPORTED_FROM_ABI string to_string(double __val);
3469
+ _LIBCPP_EXPORTED_FROM_ABI string to_string(long double __val);
3470
+
3471
+ #ifndef _LIBCPP_HAS_NO_WIDE_CHARACTERS
3472
+ _LIBCPP_EXPORTED_FROM_ABI int stoi(const wstring& __str, size_t* __idx = nullptr, int __base = 10);
3473
+ _LIBCPP_EXPORTED_FROM_ABI long stol(const wstring& __str, size_t* __idx = nullptr, int __base = 10);
3474
+ _LIBCPP_EXPORTED_FROM_ABI unsigned long stoul(const wstring& __str, size_t* __idx = nullptr, int __base = 10);
3475
+ _LIBCPP_EXPORTED_FROM_ABI long long stoll(const wstring& __str, size_t* __idx = nullptr, int __base = 10);
3476
+ _LIBCPP_EXPORTED_FROM_ABI unsigned long long stoull(const wstring& __str, size_t* __idx = nullptr, int __base = 10);
3477
+
3478
+ _LIBCPP_EXPORTED_FROM_ABI float stof(const wstring& __str, size_t* __idx = nullptr);
3479
+ _LIBCPP_EXPORTED_FROM_ABI double stod(const wstring& __str, size_t* __idx = nullptr);
3480
+ _LIBCPP_EXPORTED_FROM_ABI long double stold(const wstring& __str, size_t* __idx = nullptr);
3481
+
3482
+ _LIBCPP_EXPORTED_FROM_ABI wstring to_wstring(int __val);
3483
+ _LIBCPP_EXPORTED_FROM_ABI wstring to_wstring(unsigned __val);
3484
+ _LIBCPP_EXPORTED_FROM_ABI wstring to_wstring(long __val);
3485
+ _LIBCPP_EXPORTED_FROM_ABI wstring to_wstring(unsigned long __val);
3486
+ _LIBCPP_EXPORTED_FROM_ABI wstring to_wstring(long long __val);
3487
+ _LIBCPP_EXPORTED_FROM_ABI wstring to_wstring(unsigned long long __val);
3488
+ _LIBCPP_EXPORTED_FROM_ABI wstring to_wstring(float __val);
3489
+ _LIBCPP_EXPORTED_FROM_ABI wstring to_wstring(double __val);
3490
+ _LIBCPP_EXPORTED_FROM_ABI wstring to_wstring(long double __val);
3491
+ #endif // _LIBCPP_HAS_NO_WIDE_CHARACTERS
3492
+
3493
+ template <class _CharT, class _Traits, class _Allocator>
3494
+ _LIBCPP_TEMPLATE_DATA_VIS const typename basic_string<_CharT, _Traits, _Allocator>::size_type
3495
+ basic_string<_CharT, _Traits, _Allocator>::npos;
3496
+
3497
+ template <class _CharT, class _Allocator>
3498
+ struct __string_hash : public __unary_function<basic_string<_CharT, char_traits<_CharT>, _Allocator>, size_t> {
3499
+ _LIBCPP_HIDE_FROM_ABI size_t
3500
+ operator()(const basic_string<_CharT, char_traits<_CharT>, _Allocator>& __val) const _NOEXCEPT {
3501
+ return std::__do_string_hash(__val.data(), __val.data() + __val.size());
3502
+ }
3503
+ };
3504
+
3505
+ template <class _Allocator>
3506
+ struct hash<basic_string<char, char_traits<char>, _Allocator> > : __string_hash<char, _Allocator> {};
3507
+
3508
+ #ifndef _LIBCPP_HAS_NO_CHAR8_T
3509
+ template <class _Allocator>
3510
+ struct hash<basic_string<char8_t, char_traits<char8_t>, _Allocator> > : __string_hash<char8_t, _Allocator> {};
3511
+ #endif
3512
+
3513
+ template <class _Allocator>
3514
+ struct hash<basic_string<char16_t, char_traits<char16_t>, _Allocator> > : __string_hash<char16_t, _Allocator> {};
3515
+
3516
+ template <class _Allocator>
3517
+ struct hash<basic_string<char32_t, char_traits<char32_t>, _Allocator> > : __string_hash<char32_t, _Allocator> {};
3518
+
3519
+ #ifndef _LIBCPP_HAS_NO_WIDE_CHARACTERS
3520
+ template <class _Allocator>
3521
+ struct hash<basic_string<wchar_t, char_traits<wchar_t>, _Allocator> > : __string_hash<wchar_t, _Allocator> {};
3522
+ #endif
3523
+
3524
+ template <class _CharT, class _Traits, class _Allocator>
3525
+ _LIBCPP_HIDE_FROM_ABI basic_ostream<_CharT, _Traits>&
3526
+ operator<<(basic_ostream<_CharT, _Traits>& __os, const basic_string<_CharT, _Traits, _Allocator>& __str);
3527
+
3528
+ template <class _CharT, class _Traits, class _Allocator>
3529
+ _LIBCPP_HIDE_FROM_ABI basic_istream<_CharT, _Traits>&
3530
+ operator>>(basic_istream<_CharT, _Traits>& __is, basic_string<_CharT, _Traits, _Allocator>& __str);
3531
+
3532
+ template <class _CharT, class _Traits, class _Allocator>
3533
+ _LIBCPP_HIDE_FROM_ABI basic_istream<_CharT, _Traits>&
3534
+ getline(basic_istream<_CharT, _Traits>& __is, basic_string<_CharT, _Traits, _Allocator>& __str, _CharT __dlm);
3535
+
3536
+ template <class _CharT, class _Traits, class _Allocator>
3537
+ inline _LIBCPP_HIDE_FROM_ABI basic_istream<_CharT, _Traits>&
3538
+ getline(basic_istream<_CharT, _Traits>& __is, basic_string<_CharT, _Traits, _Allocator>& __str);
3539
+
3540
+ template <class _CharT, class _Traits, class _Allocator>
3541
+ inline _LIBCPP_HIDE_FROM_ABI basic_istream<_CharT, _Traits>&
3542
+ getline(basic_istream<_CharT, _Traits>&& __is, basic_string<_CharT, _Traits, _Allocator>& __str, _CharT __dlm);
3543
+
3544
+ template <class _CharT, class _Traits, class _Allocator>
3545
+ inline _LIBCPP_HIDE_FROM_ABI basic_istream<_CharT, _Traits>&
3546
+ getline(basic_istream<_CharT, _Traits>&& __is, basic_string<_CharT, _Traits, _Allocator>& __str);
3547
+
3548
+ _LIBCPP_END_NAMESPACE_STD
3549
+
3550
+ _LIBCPP_POP_MACROS
3551
+
3552
+ #if !defined(_LIBCPP_REMOVE_TRANSITIVE_INCLUDES)
3553
+ # include <__cxx03/algorithm>
3554
+ # include <__cxx03/cstdlib>
3555
+ # include <__cxx03/iterator>
3556
+ # include <__cxx03/new>
3557
+ # include <__cxx03/type_traits>
3558
+ # include <__cxx03/typeinfo>
3559
+ # include <__cxx03/utility>
3560
+ #endif
3561
+
3562
+ #endif // _LIBCPP___CXX03_STRING