From 48c2a6ca262029790c5558e03c23ddbb8ea7a163 Mon Sep 17 00:00:00 2001 From: sskvor Date: Tue, 4 Feb 2025 00:37:08 +0300 Subject: [PATCH] [perforator] Remove ytprof from pprofconvert commit_hash:868701f696fb5fe3c6ca98b91df36d58fe880234 --- .../include/__iterator/iterator_with_data.h | 105 - .../cxxsupp/libcxx/include/__ranges/all.h | 79 - .../libcxx/include/__ranges/as_rvalue_view.h | 142 - .../libcxx/include/__ranges/chunk_by_view.h | 235 - .../libcxx/include/__ranges/common_view.h | 144 - .../cxxsupp/libcxx/include/__ranges/counted.h | 90 - .../libcxx/include/__ranges/drop_view.h | 329 - .../libcxx/include/__ranges/drop_while_view.h | 136 - .../libcxx/include/__ranges/elements_view.h | 418 - .../libcxx/include/__ranges/empty_view.h | 54 - .../libcxx/include/__ranges/filter_view.h | 260 - .../libcxx/include/__ranges/iota_view.h | 403 - .../libcxx/include/__ranges/istream_view.h | 141 - .../libcxx/include/__ranges/join_view.h | 423 - .../libcxx/include/__ranges/lazy_split_view.h | 441 - .../include/__ranges/non_propagating_cache.h | 103 - .../libcxx/include/__ranges/owning_view.h | 116 - .../libcxx/include/__ranges/range_adaptor.h | 82 - .../cxxsupp/libcxx/include/__ranges/rbegin.h | 120 - .../cxxsupp/libcxx/include/__ranges/rend.h | 124 - .../libcxx/include/__ranges/repeat_view.h | 265 - .../libcxx/include/__ranges/reverse_view.h | 204 - .../libcxx/include/__ranges/single_view.h | 109 - .../libcxx/include/__ranges/split_view.h | 232 - .../libcxx/include/__ranges/take_view.h | 369 - .../libcxx/include/__ranges/take_while_view.h | 170 - .../libs/cxxsupp/libcxx/include/__ranges/to.h | 244 - .../libcxx/include/__ranges/transform_view.h | 424 - .../cxxsupp/libcxx/include/__ranges/views.h | 35 - .../libcxx/include/__ranges/zip_view.h | 516 - .../libcxx/include/__tuple/tuple_like.h | 42 - contrib/libs/cxxsupp/libcxx/include/latch | 130 - contrib/libs/cxxsupp/libcxx/include/ranges | 443 - contrib/libs/farmhash/COPYING | 19 - contrib/libs/farmhash/README | 163 - contrib/libs/farmhash/arch/sse41/ya.make | 24 - contrib/libs/farmhash/arch/sse42/ya.make | 22 - .../libs/farmhash/arch/sse42_aesni/ya.make | 27 - contrib/libs/farmhash/common.h | 412 - contrib/libs/farmhash/farmhash.h | 328 - contrib/libs/farmhash/farmhash_iface.cc | 106 - contrib/libs/farmhash/farmhash_iface.h | 28 - contrib/libs/farmhash/farmhashcc.cc | 314 - contrib/libs/farmhash/farmhashmk.cc | 120 - contrib/libs/farmhash/farmhashna.cc | 173 - contrib/libs/farmhash/farmhashnt.cc | 31 - contrib/libs/farmhash/farmhashsa.cc | 216 - contrib/libs/farmhash/farmhashsu.cc | 226 - contrib/libs/farmhash/farmhashte.cc | 238 - contrib/libs/farmhash/farmhashuo.cc | 121 - contrib/libs/farmhash/farmhashxo.cc | 71 - contrib/libs/farmhash/ya.make | 28 - contrib/libs/linux-headers/linux/filter.h | 90 - contrib/libs/musl/include/netinet/ip.h | 199 - contrib/libs/musl/include/sys/ttydefaults.h | 34 - contrib/libs/tcmalloc/CONTRIBUTING.md | 74 - contrib/libs/tcmalloc/LICENSE | 202 - contrib/libs/tcmalloc/README.md | 44 - contrib/libs/tcmalloc/ya.make | 35 - contrib/libs/yajl/api/yajl_common.h | 75 - contrib/libs/yajl/api/yajl_gen.h | 180 - contrib/libs/yajl/api/yajl_parse.h | 231 - contrib/libs/yajl/api/yajl_tree.h | 193 - contrib/libs/yajl/api/yajl_version.h | 23 - contrib/libs/yajl/ya.make | 24 - contrib/libs/yajl/yajl.c | 195 - contrib/libs/yajl/yajl_alloc.c | 52 - contrib/libs/yajl/yajl_alloc.h | 34 - contrib/libs/yajl/yajl_buf.c | 108 - contrib/libs/yajl/yajl_buf.h | 60 - contrib/libs/yajl/yajl_bytestack.h | 69 - contrib/libs/yajl/yajl_encode.c | 220 - contrib/libs/yajl/yajl_encode.h | 34 - contrib/libs/yajl/yajl_gen.c | 392 - contrib/libs/yajl/yajl_lex.c | 766 -- contrib/libs/yajl/yajl_lex.h | 123 - contrib/libs/yajl/yajl_parser.c | 498 - contrib/libs/yajl/yajl_parser.cpp | 29 - contrib/libs/yajl/yajl_parser.h | 89 - contrib/libs/yajl/yajl_tree.c | 510 - contrib/libs/yajl/yajl_version.c | 7 - contrib/libs/zstd/include/zdict.h | 1 - contrib/python/anyio/.dist-info/METADATA | 104 - .../python/anyio/.dist-info/entry_points.txt | 2 - contrib/python/anyio/.dist-info/top_level.txt | 1 - contrib/python/anyio/LICENSE | 20 - contrib/python/anyio/README.rst | 57 - contrib/python/anyio/anyio/__init__.py | 77 - .../python/anyio/anyio/_backends/__init__.py | 0 .../python/anyio/anyio/_backends/_asyncio.py | 2807 ------ contrib/python/anyio/anyio/_backends/_trio.py | 1334 --- contrib/python/anyio/anyio/_core/__init__.py | 0 .../anyio/_core/_asyncio_selector_thread.py | 167 - .../python/anyio/anyio/_core/_eventloop.py | 166 - .../python/anyio/anyio/_core/_exceptions.py | 126 - contrib/python/anyio/anyio/_core/_fileio.py | 729 -- .../python/anyio/anyio/_core/_resources.py | 18 - contrib/python/anyio/anyio/_core/_signals.py | 27 - contrib/python/anyio/anyio/_core/_sockets.py | 787 -- contrib/python/anyio/anyio/_core/_streams.py | 52 - .../python/anyio/anyio/_core/_subprocesses.py | 196 - .../anyio/anyio/_core/_synchronization.py | 732 -- contrib/python/anyio/anyio/_core/_tasks.py | 158 - contrib/python/anyio/anyio/_core/_testing.py | 78 - .../python/anyio/anyio/_core/_typedattr.py | 81 - contrib/python/anyio/anyio/abc/__init__.py | 55 - contrib/python/anyio/anyio/abc/_eventloop.py | 376 - contrib/python/anyio/anyio/abc/_resources.py | 33 - contrib/python/anyio/anyio/abc/_sockets.py | 194 - contrib/python/anyio/anyio/abc/_streams.py | 203 - .../python/anyio/anyio/abc/_subprocesses.py | 79 - contrib/python/anyio/anyio/abc/_tasks.py | 101 - contrib/python/anyio/anyio/abc/_testing.py | 65 - contrib/python/anyio/anyio/from_thread.py | 527 - contrib/python/anyio/anyio/lowlevel.py | 161 - contrib/python/anyio/anyio/py.typed | 0 contrib/python/anyio/anyio/pytest_plugin.py | 191 - .../python/anyio/anyio/streams/__init__.py | 0 .../python/anyio/anyio/streams/buffered.py | 119 - contrib/python/anyio/anyio/streams/file.py | 148 - contrib/python/anyio/anyio/streams/memory.py | 317 - contrib/python/anyio/anyio/streams/stapled.py | 141 - contrib/python/anyio/anyio/streams/text.py | 147 - contrib/python/anyio/anyio/streams/tls.py | 337 - contrib/python/anyio/anyio/to_interpreter.py | 218 - contrib/python/anyio/anyio/to_process.py | 258 - contrib/python/anyio/anyio/to_thread.py | 69 - contrib/python/anyio/ya.make | 73 - contrib/python/certifi/py3/ya.make | 11 - contrib/python/certifi/ya.make | 20 - .../charset-normalizer/.dist-info/METADATA | 668 -- .../.dist-info/entry_points.txt | 2 - .../.dist-info/top_level.txt | 1 - contrib/python/charset-normalizer/LICENSE | 21 - contrib/python/charset-normalizer/README.md | 257 - .../charset_normalizer/__init__.py | 46 - .../charset_normalizer/__main__.py | 4 - .../charset_normalizer/api.py | 626 -- .../charset_normalizer/cd.py | 395 - .../charset_normalizer/cli/__init__.py | 6 - .../charset_normalizer/cli/__main__.py | 296 - .../charset_normalizer/constant.py | 1995 ---- .../charset_normalizer/legacy.py | 54 - .../charset_normalizer/md.py | 581 -- .../charset_normalizer/models.py | 337 - .../charset_normalizer/py.typed | 0 .../charset_normalizer/utils.py | 399 - .../charset_normalizer/version.py | 6 - contrib/python/charset-normalizer/ya.make | 35 - contrib/python/h11/.dist-info/METADATA | 193 - contrib/python/h11/.dist-info/top_level.txt | 1 - contrib/python/h11/LICENSE.txt | 22 - contrib/python/h11/README.rst | 168 - contrib/python/h11/h11/__init__.py | 62 - contrib/python/h11/h11/_abnf.py | 132 - contrib/python/h11/h11/_connection.py | 633 -- contrib/python/h11/h11/_events.py | 369 - contrib/python/h11/h11/_headers.py | 278 - contrib/python/h11/h11/_readers.py | 247 - contrib/python/h11/h11/_receivebuffer.py | 153 - contrib/python/h11/h11/_state.py | 367 - contrib/python/h11/h11/_util.py | 135 - contrib/python/h11/h11/_version.py | 16 - contrib/python/h11/h11/_writers.py | 145 - contrib/python/h11/h11/py.typed | 1 - contrib/python/h11/ya.make | 33 - contrib/python/httpcore/.dist-info/METADATA | 616 -- .../python/httpcore/.dist-info/top_level.txt | 4 - contrib/python/httpcore/LICENSE.md | 27 - contrib/python/httpcore/README.md | 111 - contrib/python/httpcore/httpcore/__init__.py | 140 - contrib/python/httpcore/httpcore/_api.py | 94 - .../httpcore/httpcore/_async/__init__.py | 39 - .../httpcore/httpcore/_async/connection.py | 222 - .../httpcore/_async/connection_pool.py | 420 - .../python/httpcore/httpcore/_async/http11.py | 379 - .../python/httpcore/httpcore/_async/http2.py | 583 -- .../httpcore/httpcore/_async/http_proxy.py | 367 - .../httpcore/httpcore/_async/interfaces.py | 137 - .../httpcore/httpcore/_async/socks_proxy.py | 341 - .../httpcore/httpcore/_backends/__init__.py | 0 .../httpcore/httpcore/_backends/anyio.py | 146 - .../httpcore/httpcore/_backends/auto.py | 52 - .../httpcore/httpcore/_backends/base.py | 101 - .../httpcore/httpcore/_backends/mock.py | 143 - .../httpcore/httpcore/_backends/sync.py | 241 - .../httpcore/httpcore/_backends/trio.py | 159 - .../python/httpcore/httpcore/_exceptions.py | 81 - contrib/python/httpcore/httpcore/_models.py | 516 - contrib/python/httpcore/httpcore/_ssl.py | 9 - .../httpcore/httpcore/_sync/__init__.py | 39 - .../httpcore/httpcore/_sync/connection.py | 222 - .../httpcore/_sync/connection_pool.py | 420 - .../python/httpcore/httpcore/_sync/http11.py | 379 - .../python/httpcore/httpcore/_sync/http2.py | 583 -- .../httpcore/httpcore/_sync/http_proxy.py | 367 - .../httpcore/httpcore/_sync/interfaces.py | 137 - .../httpcore/httpcore/_sync/socks_proxy.py | 341 - .../httpcore/httpcore/_synchronization.py | 318 - contrib/python/httpcore/httpcore/_trace.py | 107 - contrib/python/httpcore/httpcore/_utils.py | 37 - contrib/python/httpcore/httpcore/py.typed | 0 contrib/python/httpcore/ya.make | 66 - contrib/python/httpx/.dist-info/METADATA | 207 - .../python/httpx/.dist-info/entry_points.txt | 2 - contrib/python/httpx/.dist-info/top_level.txt | 2 - contrib/python/httpx/LICENSE.md | 12 - contrib/python/httpx/README.md | 149 - contrib/python/httpx/httpx/__init__.py | 105 - contrib/python/httpx/httpx/__version__.py | 3 - contrib/python/httpx/httpx/_api.py | 479 - contrib/python/httpx/httpx/_auth.py | 348 - contrib/python/httpx/httpx/_client.py | 2065 ---- contrib/python/httpx/httpx/_compat.py | 63 - contrib/python/httpx/httpx/_config.py | 379 - contrib/python/httpx/httpx/_content.py | 238 - contrib/python/httpx/httpx/_decoders.py | 371 - contrib/python/httpx/httpx/_exceptions.py | 379 - contrib/python/httpx/httpx/_main.py | 509 - contrib/python/httpx/httpx/_models.py | 1211 --- contrib/python/httpx/httpx/_multipart.py | 269 - contrib/python/httpx/httpx/_status_codes.py | 162 - .../httpx/httpx/_transports/__init__.py | 15 - .../python/httpx/httpx/_transports/asgi.py | 174 - .../python/httpx/httpx/_transports/base.py | 86 - .../python/httpx/httpx/_transports/default.py | 389 - .../python/httpx/httpx/_transports/mock.py | 43 - .../python/httpx/httpx/_transports/wsgi.py | 149 - contrib/python/httpx/httpx/_types.py | 136 - contrib/python/httpx/httpx/_urlparse.py | 505 - contrib/python/httpx/httpx/_urls.py | 648 -- contrib/python/httpx/httpx/_utils.py | 440 - contrib/python/httpx/httpx/py.typed | 0 contrib/python/httpx/ya.make | 59 - contrib/python/idna/py2/LICENSE.rst | 34 - contrib/python/idna/py2/README.rst | 211 - contrib/python/idna/py3/.dist-info/METADATA | 250 - .../python/idna/py3/.dist-info/top_level.txt | 1 - contrib/python/idna/py3/LICENSE.md | 31 - contrib/python/idna/py3/README.rst | 212 - contrib/python/idna/py3/idna/__init__.py | 45 - contrib/python/idna/py3/idna/codec.py | 122 - contrib/python/idna/py3/idna/compat.py | 15 - contrib/python/idna/py3/idna/core.py | 437 - contrib/python/idna/py3/idna/idnadata.py | 4243 -------- contrib/python/idna/py3/idna/intranges.py | 57 - contrib/python/idna/py3/idna/package_data.py | 1 - contrib/python/idna/py3/idna/py.typed | 0 contrib/python/idna/py3/idna/uts46data.py | 8681 ----------------- contrib/python/idna/py3/ya.make | 34 - contrib/python/idna/ya.make | 20 - contrib/python/requests/py2/LICENSE | 175 - contrib/python/requests/py2/NOTICE | 2 - contrib/python/requests/py2/README.md | 78 - .../python/requests/py3/.dist-info/METADATA | 122 - .../requests/py3/.dist-info/top_level.txt | 1 - contrib/python/requests/py3/LICENSE | 175 - contrib/python/requests/py3/NOTICE | 2 - contrib/python/requests/py3/README.md | 78 - .../python/requests/py3/requests/__init__.py | 180 - .../requests/py3/requests/__version__.py | 14 - .../requests/py3/requests/_internal_utils.py | 50 - .../python/requests/py3/requests/adapters.py | 538 - contrib/python/requests/py3/requests/api.py | 157 - contrib/python/requests/py3/requests/auth.py | 315 - contrib/python/requests/py3/requests/certs.py | 17 - .../python/requests/py3/requests/compat.py | 79 - .../python/requests/py3/requests/cookies.py | 561 -- .../requests/py3/requests/exceptions.py | 141 - contrib/python/requests/py3/requests/help.py | 134 - contrib/python/requests/py3/requests/hooks.py | 33 - .../python/requests/py3/requests/models.py | 1034 -- .../python/requests/py3/requests/packages.py | 28 - .../python/requests/py3/requests/sessions.py | 833 -- .../requests/py3/requests/status_codes.py | 128 - .../requests/py3/requests/structures.py | 99 - contrib/python/requests/py3/requests/utils.py | 1094 --- contrib/python/requests/py3/ya.make | 46 - contrib/python/requests/ya.make | 20 - contrib/python/sniffio/.dist-info/METADATA | 104 - .../python/sniffio/.dist-info/top_level.txt | 1 - contrib/python/sniffio/LICENSE | 3 - contrib/python/sniffio/LICENSE.APACHE2 | 202 - contrib/python/sniffio/LICENSE.MIT | 20 - contrib/python/sniffio/README.rst | 76 - contrib/python/sniffio/sniffio/__init__.py | 17 - contrib/python/sniffio/sniffio/_impl.py | 95 - contrib/python/sniffio/sniffio/_version.py | 3 - contrib/python/sniffio/sniffio/py.typed | 0 contrib/python/sniffio/ya.make | 25 - contrib/python/urllib3/py2/LICENSE.txt | 21 - contrib/python/urllib3/py2/README.rst | 120 - .../python/urllib3/py3/.dist-info/METADATA | 1472 --- .../urllib3/py3/.dist-info/top_level.txt | 1 - contrib/python/urllib3/py3/LICENSE.txt | 21 - contrib/python/urllib3/py3/README.rst | 120 - .../python/urllib3/py3/urllib3/__init__.py | 102 - .../urllib3/py3/urllib3/_collections.py | 337 - .../python/urllib3/py3/urllib3/_version.py | 2 - .../python/urllib3/py3/urllib3/connection.py | 573 -- .../urllib3/py3/urllib3/connectionpool.py | 1110 --- .../urllib3/py3/urllib3/contrib/__init__.py | 0 .../py3/urllib3/contrib/_appengine_environ.py | 36 - .../urllib3/py3/urllib3/contrib/appengine.py | 314 - .../urllib3/py3/urllib3/contrib/socks.py | 216 - .../python/urllib3/py3/urllib3/exceptions.py | 323 - contrib/python/urllib3/py3/urllib3/fields.py | 274 - .../python/urllib3/py3/urllib3/filepost.py | 98 - .../urllib3/py3/urllib3/packages/__init__.py | 0 .../urllib3/py3/urllib3/packages/six.py | 1076 -- .../python/urllib3/py3/urllib3/poolmanager.py | 537 - contrib/python/urllib3/py3/urllib3/request.py | 170 - .../python/urllib3/py3/urllib3/response.py | 885 -- .../urllib3/py3/urllib3/util/__init__.py | 49 - .../urllib3/py3/urllib3/util/connection.py | 149 - .../python/urllib3/py3/urllib3/util/proxy.py | 57 - .../python/urllib3/py3/urllib3/util/queue.py | 22 - .../urllib3/py3/urllib3/util/request.py | 146 - .../urllib3/py3/urllib3/util/response.py | 107 - .../python/urllib3/py3/urllib3/util/retry.py | 620 -- .../python/urllib3/py3/urllib3/util/ssl_.py | 495 - .../py3/urllib3/util/ssl_match_hostname.py | 159 - .../urllib3/py3/urllib3/util/ssltransport.py | 221 - .../urllib3/py3/urllib3/util/timeout.py | 271 - .../python/urllib3/py3/urllib3/util/url.py | 435 - .../python/urllib3/py3/urllib3/util/wait.py | 152 - contrib/python/urllib3/py3/ya.make | 56 - contrib/python/urllib3/ya.make | 20 - contrib/restricted/http-parser/AUTHORS | 68 - contrib/restricted/http-parser/LICENSE-MIT | 19 - contrib/restricted/http-parser/README.md | 246 - contrib/restricted/http-parser/http_parser.c | 2568 ----- contrib/restricted/http-parser/http_parser.h | 443 - contrib/restricted/http-parser/ya.make | 30 - library/cpp/cgiparam/cgiparam.cpp | 300 - library/cpp/cgiparam/cgiparam.h | 195 - library/cpp/cgiparam/ya.make | 19 - library/cpp/charset/README.md | 12 - library/cpp/charset/decodeunknownplane.cpp | 121 - library/cpp/charset/iconv.cpp | 96 - library/cpp/charset/iconv.h | 136 - library/cpp/charset/recyr.hh | 164 - library/cpp/charset/recyr_int.hh | 336 - library/cpp/charset/wide.cpp | 18 - library/cpp/charset/wide.h | 306 - library/cpp/charset/ya.make | 36 - .../concurrent_hash/concurrent_hash.h | 162 - library/cpp/http/io/chunk.cpp | 246 - library/cpp/http/io/chunk.h | 49 - library/cpp/http/io/compression.cpp | 66 - library/cpp/http/io/compression.h | 73 - library/cpp/http/io/headers.cpp | 116 - library/cpp/http/io/headers.h | 139 - library/cpp/http/io/stream.cpp | 1002 -- library/cpp/http/io/stream.h | 178 - library/cpp/http/io/ya.make | 27 - library/cpp/int128/README.md | 6 - library/cpp/int128/int128.cpp | 62 - library/cpp/int128/ya.make | 13 - .../encode/buffered/buffered_encoder_base.cpp | 170 - .../encode/buffered/buffered_encoder_base.h | 100 - .../monlib/encode/buffered/string_pool.cpp | 60 - .../cpp/monlib/encode/buffered/string_pool.h | 100 - library/cpp/monlib/encode/buffered/ya.make | 17 - library/cpp/monlib/encode/encoder.cpp | 6 - library/cpp/monlib/encode/encoder.h | 17 - library/cpp/monlib/encode/encoder_state.cpp | 1 - library/cpp/monlib/encode/encoder_state.h | 62 - .../cpp/monlib/encode/encoder_state_enum.h | 12 - library/cpp/monlib/encode/format.cpp | 211 - library/cpp/monlib/encode/format.h | 172 - library/cpp/monlib/encode/json/json.h | 29 - .../cpp/monlib/encode/json/json_decoder.cpp | 1161 --- .../cpp/monlib/encode/json/json_encoder.cpp | 556 -- library/cpp/monlib/encode/json/typed_point.h | 123 - library/cpp/monlib/encode/json/ya.make | 20 - .../cpp/monlib/encode/prometheus/prometheus.h | 27 - .../encode/prometheus/prometheus_decoder.cpp | 609 -- .../encode/prometheus/prometheus_encoder.cpp | 427 - .../encode/prometheus/prometheus_model.h | 70 - library/cpp/monlib/encode/prometheus/ya.make | 20 - .../cpp/monlib/encode/spack/compression.cpp | 383 - library/cpp/monlib/encode/spack/compression.h | 19 - library/cpp/monlib/encode/spack/spack_v1.h | 115 - .../monlib/encode/spack/spack_v1_decoder.cpp | 458 - .../monlib/encode/spack/spack_v1_encoder.cpp | 318 - library/cpp/monlib/encode/spack/varint.cpp | 79 - library/cpp/monlib/encode/spack/varint.h | 23 - library/cpp/monlib/encode/spack/ya.make | 25 - library/cpp/monlib/encode/ya.make | 20 - library/cpp/monlib/exception/exception.cpp | 1 - library/cpp/monlib/exception/exception.h | 13 - library/cpp/monlib/exception/ya.make | 10 - library/cpp/monlib/metrics/atomics_array.h | 52 - library/cpp/monlib/metrics/ewma.cpp | 150 - library/cpp/monlib/metrics/ewma.h | 47 - library/cpp/monlib/metrics/fake.cpp | 110 - library/cpp/monlib/metrics/fake.h | 173 - .../cpp/monlib/metrics/histogram_collector.h | 119 - .../metrics/histogram_collector_explicit.cpp | 55 - .../histogram_collector_exponential.cpp | 68 - .../metrics/histogram_collector_linear.cpp | 67 - .../cpp/monlib/metrics/histogram_snapshot.cpp | 86 - .../cpp/monlib/metrics/histogram_snapshot.h | 211 - library/cpp/monlib/metrics/labels.cpp | 82 - library/cpp/monlib/metrics/labels.h | 483 - .../monlib/metrics/log_histogram_snapshot.cpp | 35 - .../monlib/metrics/log_histogram_snapshot.h | 71 - library/cpp/monlib/metrics/metric.h | 394 - .../cpp/monlib/metrics/metric_consumer.cpp | 15 - library/cpp/monlib/metrics/metric_consumer.h | 40 - .../cpp/monlib/metrics/metric_registry.cpp | 263 - library/cpp/monlib/metrics/metric_registry.h | 161 - library/cpp/monlib/metrics/metric_type.cpp | 57 - library/cpp/monlib/metrics/metric_type.h | 25 - library/cpp/monlib/metrics/metric_value.cpp | 27 - library/cpp/monlib/metrics/metric_value.h | 542 - .../cpp/monlib/metrics/metric_value_type.h | 16 - .../cpp/monlib/metrics/summary_collector.cpp | 1 - .../cpp/monlib/metrics/summary_collector.h | 104 - .../cpp/monlib/metrics/summary_snapshot.cpp | 34 - library/cpp/monlib/metrics/summary_snapshot.h | 72 - library/cpp/monlib/metrics/ya.make | 26 - library/cpp/openssl/holders/bio.cpp | 29 - library/cpp/openssl/holders/bio.h | 25 - library/cpp/openssl/holders/evp.h | 13 - library/cpp/openssl/holders/hmac.h | 10 - library/cpp/openssl/holders/holder.h | 32 - library/cpp/openssl/holders/ut/evp_ut.cpp | 15 - library/cpp/openssl/holders/ut/hmac_ut.cpp | 10 - library/cpp/openssl/holders/ut/ya.make | 8 - library/cpp/openssl/holders/x509_vfy.cpp | 30 - library/cpp/openssl/holders/x509_vfy.h | 25 - library/cpp/openssl/holders/ya.make | 16 - library/cpp/openssl/init/init.cpp | 66 - library/cpp/openssl/init/init.h | 3 - library/cpp/openssl/init/ya.make | 11 - library/cpp/openssl/io/stream.cpp | 329 - library/cpp/openssl/io/stream.h | 50 - library/cpp/openssl/io/ut/builtin_ut.cpp | 9 - library/cpp/openssl/io/ut/ya.make | 7 - library/cpp/openssl/io/ya.make | 18 - library/cpp/openssl/method/io.cpp | 122 - library/cpp/openssl/method/io.h | 31 - library/cpp/openssl/method/ut/io_ut.cpp | 52 - library/cpp/openssl/method/ut/ya.make | 7 - library/cpp/openssl/method/ya.make | 16 - library/cpp/protobuf/interop/cast.h | 15 - library/cpp/streams/brotli/brotli.cpp | 231 - library/cpp/streams/brotli/brotli.h | 52 - library/cpp/streams/brotli/brotli_ut.cpp | 89 - library/cpp/streams/brotli/ut/ya.make | 7 - library/cpp/streams/brotli/ya.make | 16 - library/cpp/streams/bzip2/bzip2.cpp | 204 - library/cpp/streams/bzip2/bzip2.h | 53 - library/cpp/streams/bzip2/ya.make | 15 - library/cpp/streams/lz/common/error.h | 6 - library/cpp/streams/lz/lz.h | 176 - library/cpp/streams/lz/lz4/lz4.h | 50 - library/cpp/streams/lz/snappy/snappy.h | 50 - library/cpp/streams/lzma/lzma.cpp | 520 - library/cpp/streams/lzma/lzma.h | 37 - library/cpp/streams/lzma/ya.make | 15 - library/cpp/string_utils/quote/quote.cpp | 309 - library/cpp/string_utils/quote/quote.h | 72 - library/cpp/string_utils/quote/ya.make | 12 - library/cpp/string_utils/scan/scan.cpp | 1 - library/cpp/string_utils/scan/scan.h | 22 - library/cpp/string_utils/scan/ya.make | 7 - library/cpp/testing/gtest_protobuf/matcher.h | 132 - library/cpp/threading/hot_swap/hot_swap.cpp | 23 - library/cpp/threading/hot_swap/hot_swap.h | 192 - library/cpp/threading/hot_swap/ya.make | 12 - .../cpp/threading/light_rw_lock/lightrwlock.h | 222 - library/cpp/threading/skip_list/compare.h | 77 - library/cpp/threading/skip_list/perf/main.cpp | 362 - library/cpp/threading/skip_list/perf/ya.make | 13 - library/cpp/threading/skip_list/skiplist.cpp | 1 - library/cpp/threading/skip_list/skiplist.h | 408 - .../cpp/threading/skip_list/skiplist_ut.cpp | 185 - library/cpp/threading/skip_list/ut/ya.make | 7 - library/cpp/threading/skip_list/ya.make | 16 - .../threading/thread_local/thread_local.cpp | 1 - .../cpp/threading/thread_local/thread_local.h | 268 - library/cpp/threading/thread_local/ya.make | 12 - .../backtrace/absl_unwinder/absl_unwinder.cpp | 51 - .../backtrace/absl_unwinder/absl_unwinder.h | 13 - .../cpp/yt/backtrace/absl_unwinder/ya.make | 14 - library/cpp/yt/backtrace/backtrace-inl.h | 36 - library/cpp/yt/backtrace/backtrace.cpp | 18 - library/cpp/yt/backtrace/backtrace.h | 45 - .../backtrace/cursors/dummy/dummy_cursor.cpp | 22 - .../yt/backtrace/cursors/dummy/dummy_cursor.h | 17 - .../cpp/yt/backtrace/cursors/dummy/ya.make | 9 - .../frame_pointer/frame_pointer_cursor.h | 7 - .../frame_pointer_cursor_dummy.h | 26 - .../frame_pointer_cursor_x86_64.cpp | 146 - .../frame_pointer_cursor_x86_64.h | 43 - .../backtrace/cursors/frame_pointer/ya.make | 15 - .../yt/backtrace/cursors/interop/interop.h | 25 - .../cursors/interop/interop_x86_64.cpp | 102 - .../cpp/yt/backtrace/cursors/interop/ya.make | 20 - .../cursors/libunwind/libunwind_cursor.cpp | 70 - .../cursors/libunwind/libunwind_cursor.h | 33 - .../yt/backtrace/cursors/libunwind/ya.make | 13 - .../symbolizers/dwarf/dwarf_symbolizer.cpp | 64 - .../yt/backtrace/symbolizers/dwarf/ya.make | 18 - .../dynload/dynload_symbolizer.cpp | 113 - .../yt/backtrace/unittests/backtrace_ut.cpp | 61 - library/cpp/yt/backtrace/unittests/ya.make | 20 - library/cpp/yt/backtrace/ya.make | 44 - library/cpp/yt/coding/unittests/varint_ut.cpp | 134 - library/cpp/yt/coding/unittests/ya.make | 15 - .../cpp/yt/coding/unittests/zig_zag_ut.cpp | 57 - library/cpp/yt/containers/expiring_set-inl.h | 88 - library/cpp/yt/containers/expiring_set.h | 56 - .../yt/containers/intrusive_linked_list-inl.h | 122 - .../cpp/yt/containers/intrusive_linked_list.h | 51 - library/cpp/yt/containers/sharded_set-inl.h | 217 - library/cpp/yt/containers/sharded_set.h | 69 - .../unittests/enum_indexed_array_ut.cpp | 45 - .../containers/unittests/expiring_set_ut.cpp | 132 - .../containers/unittests/sharded_set_ut.cpp | 121 - library/cpp/yt/containers/unittests/ya.make | 19 - library/cpp/yt/containers/ya.make | 16 - .../cpp/yt/cpu_clock/benchmark/benchmark.cpp | 50 - library/cpp/yt/cpu_clock/benchmark/ya.make | 11 - library/cpp/yt/cpu_clock/clock-inl.h | 33 - library/cpp/yt/cpu_clock/clock.cpp | 104 - library/cpp/yt/cpu_clock/clock.h | 38 - library/cpp/yt/cpu_clock/public.h | 14 - .../cpp/yt/cpu_clock/unittests/clock_ut.cpp | 46 - library/cpp/yt/cpu_clock/unittests/ya.make | 13 - library/cpp/yt/cpu_clock/ya.make | 21 - library/cpp/yt/error/error-inl.h | 570 -- library/cpp/yt/error/error.cpp | 829 -- library/cpp/yt/error/error.h | 439 - library/cpp/yt/error/error_attribute-inl.h | 38 - library/cpp/yt/error/error_attribute.h | 88 - library/cpp/yt/error/error_attributes-inl.h | 101 - library/cpp/yt/error/error_attributes.cpp | 159 - library/cpp/yt/error/error_attributes.h | 109 - library/cpp/yt/error/error_code.cpp | 164 - library/cpp/yt/error/error_code.h | 101 - library/cpp/yt/error/error_helpers-inl.h | 37 - library/cpp/yt/error/error_helpers.h | 27 - library/cpp/yt/error/mergeable_dictionary.h | 46 - library/cpp/yt/error/origin_attributes.cpp | 154 - library/cpp/yt/error/origin_attributes.h | 93 - library/cpp/yt/error/public.h | 31 - library/cpp/yt/error/text_yson.cpp | 436 - library/cpp/yt/error/text_yson.h | 104 - .../cpp/yt/error/unittests/error_code_ut.cpp | 145 - library/cpp/yt/error/unittests/error_ut.cpp | 779 -- library/cpp/yt/error/unittests/ya.make | 18 - library/cpp/yt/error/ya.make | 29 - library/cpp/yt/farmhash/farm_hash.h | 63 - library/cpp/yt/global/access.h | 80 - library/cpp/yt/global/impl.cpp | 126 - .../mock_modules/module1_defs/direct_access.h | 17 - .../module1_defs/test_variable.cpp | 38 - .../global/mock_modules/module1_defs/ya.make | 14 - .../mock_modules/module1_public/test_tag.h | 14 - .../mock_modules/module1_public/ya.make | 9 - .../mock_modules/module2_defs/direct_access.h | 22 - .../module2_defs/test_variable.cpp | 60 - .../global/mock_modules/module2_defs/ya.make | 16 - .../mock_modules/module2_public/test_tag.h | 15 - .../mock_modules/module2_public/ya.make | 9 - .../mock_modules/module3_defs/direct_access.h | 18 - .../module3_defs/test_variable.cpp | 41 - .../global/mock_modules/module3_defs/ya.make | 14 - .../mock_modules/module3_public/test_tag.h | 21 - .../mock_modules/module3_public/ya.make | 9 - .../global_variable/just_works_ut/main.cpp | 73 - .../global_variable/just_works_ut/ya.make | 16 - .../missing_module_ut/main.cpp | 23 - .../global_variable/missing_module_ut/ya.make | 13 - .../odr_violation_avoidance_ut/main.cpp | 41 - .../odr_violation_avoidance_ut/ya.make | 16 - .../global_variable/two_modules_ut/main.cpp | 90 - .../global_variable/two_modules_ut/ya.make | 20 - library/cpp/yt/global/variable-inl.h | 95 - library/cpp/yt/global/variable.h | 53 - library/cpp/yt/global/ya.make | 23 - .../yt/logging/backends/arcadia/backend.cpp | 86 - .../cpp/yt/logging/backends/arcadia/backend.h | 18 - .../cpp/yt/logging/backends/arcadia/ya.make | 16 - .../backends/stream/stream_log_manager.cpp | 83 - .../backends/stream/stream_log_manager.h | 15 - .../unittests/stream_log_manager_ut.cpp | 37 - .../logging/backends/stream/unittests/ya.make | 14 - .../cpp/yt/logging/backends/stream/ya.make | 20 - library/cpp/yt/logging/backends/ya.make | 4 - library/cpp/yt/logging/logger-inl.h | 321 - library/cpp/yt/logging/logger.cpp | 332 - library/cpp/yt/logging/logger.h | 393 - .../plain_text_formatter/formatter.cpp | 226 - .../logging/plain_text_formatter/formatter.h | 48 - .../yt/logging/plain_text_formatter/ya.make | 16 - library/cpp/yt/logging/public.h | 39 - .../cpp/yt/logging/unittests/logger_ut.cpp | 38 - .../logging/unittests/static_analysis_ut.cpp | 39 - library/cpp/yt/logging/unittests/ya.make | 15 - library/cpp/yt/logging/ya.make | 25 - .../cpp/yt/memory/atomic_intrusive_ptr-inl.h | 300 - library/cpp/yt/memory/atomic_intrusive_ptr.h | 96 - .../chunked_memory_pool_allocator-inl.h | 61 - .../yt/memory/chunked_memory_pool_allocator.h | 61 - library/cpp/yt/memory/erased_storage-inl.h | 53 - library/cpp/yt/memory/erased_storage.h | 80 - library/cpp/yt/memory/free_list-inl.h | 222 - library/cpp/yt/memory/free_list.h | 72 - library/cpp/yt/memory/function_view-inl.h | 71 - library/cpp/yt/memory/function_view.h | 115 - .../memory/leaky_ref_counted_singleton-inl.h | 40 - .../yt/memory/leaky_ref_counted_singleton.h | 22 - library/cpp/yt/memory/leaky_singleton-inl.h | 47 - library/cpp/yt/memory/leaky_singleton.h | 35 - library/cpp/yt/memory/non_null_ptr-inl.h | 49 - library/cpp/yt/memory/non_null_ptr.h | 75 - library/cpp/yt/memory/type_erasure.h | 418 - library/cpp/yt/memory/type_erasure_detail.h | 729 -- .../unittests/atomic_intrusive_ptr_ut.cpp | 412 - .../chunked_memory_pool_allocator_ut.cpp | 172 - .../chunked_memory_pool_output_ut.cpp | 39 - .../unittests/chunked_memory_pool_ut.cpp | 78 - .../yt/memory/unittests/erased_storage_ut.cpp | 152 - .../cpp/yt/memory/unittests/free_list_ut.cpp | 158 - .../yt/memory/unittests/function_view_ut.cpp | 194 - .../yt/memory/unittests/intrusive_ptr_ut.cpp | 641 -- .../yt/memory/unittests/non_null_ptr_ut.cpp | 104 - .../range_protobuf_repeated_field_ut.cpp | 76 - library/cpp/yt/memory/unittests/ref_ut.cpp | 22 - .../unittests/safe_memory_reader_ut.cpp | 27 - .../yt/memory/unittests/shared_range_ut.cpp | 44 - .../yt/memory/unittests/type_erasure_ut.cpp | 337 - .../cpp/yt/memory/unittests/weak_ptr_ut.cpp | 440 - library/cpp/yt/memory/unittests/ya.make | 35 - library/cpp/yt/memory/weak_ptr.h | 334 - library/cpp/yt/misc/arcadia_enum-inl.h | 61 - library/cpp/yt/misc/arcadia_enum.h | 18 - library/cpp/yt/misc/global.h | 13 - library/cpp/yt/misc/optional.h | 106 - library/cpp/yt/misc/property.h | 386 - library/cpp/yt/misc/static_initializer.h | 19 - library/cpp/yt/misc/unaligned-inl.h | 31 - library/cpp/yt/misc/unaligned.h | 23 - library/cpp/yt/string/raw_formatter.h | 197 - library/cpp/yt/string/unittests/enum_ut.cpp | 130 - library/cpp/yt/string/unittests/format_ut.cpp | 352 - library/cpp/yt/string/unittests/guid_ut.cpp | 58 - library/cpp/yt/string/unittests/string_ut.cpp | 52 - library/cpp/yt/string/unittests/ya.make | 17 - library/cpp/yt/system/handle_eintr-inl.h | 34 - library/cpp/yt/system/handle_eintr.h | 16 - library/cpp/yt/system/proc.h | 32 - library/cpp/yt/threading/at_fork.cpp | 139 - library/cpp/yt/threading/at_fork.h | 30 - library/cpp/yt/threading/atomic_object-inl.h | 97 - library/cpp/yt/threading/atomic_object.h | 63 - library/cpp/yt/threading/count_down_latch.cpp | 71 - library/cpp/yt/threading/count_down_latch.h | 42 - library/cpp/yt/threading/event_count-inl.h | 165 - library/cpp/yt/threading/event_count.cpp | 1 - library/cpp/yt/threading/event_count.h | 148 - .../yt/threading/fork_aware_rw_spin_lock.cpp | 51 - .../yt/threading/fork_aware_rw_spin_lock.h | 38 - .../cpp/yt/threading/fork_aware_spin_lock.cpp | 41 - .../cpp/yt/threading/fork_aware_spin_lock.h | 38 - library/cpp/yt/threading/futex.cpp | 63 - library/cpp/yt/threading/futex.h | 18 - .../cpp/yt/threading/notification_handle.cpp | 119 - .../cpp/yt/threading/notification_handle.h | 49 - library/cpp/yt/threading/public.cpp | 1 - library/cpp/yt/threading/public.h | 19 - .../yt/threading/recursive_spin_lock-inl.h | 75 - .../cpp/yt/threading/recursive_spin_lock.cpp | 17 - .../cpp/yt/threading/recursive_spin_lock.h | 56 - library/cpp/yt/threading/rw_spin_lock-inl.h | 202 - library/cpp/yt/threading/rw_spin_lock.cpp | 33 - library/cpp/yt/threading/rw_spin_lock.h | 169 - library/cpp/yt/threading/spin_lock-inl.h | 74 - library/cpp/yt/threading/spin_lock.cpp | 17 - library/cpp/yt/threading/spin_lock.h | 83 - library/cpp/yt/threading/spin_lock_base-inl.h | 24 - library/cpp/yt/threading/spin_lock_base.cpp | 1 - library/cpp/yt/threading/spin_lock_base.h | 25 - .../cpp/yt/threading/spin_lock_count-inl.h | 41 - library/cpp/yt/threading/spin_lock_count.cpp | 43 - library/cpp/yt/threading/spin_lock_count.h | 62 - library/cpp/yt/threading/spin_wait.cpp | 73 - library/cpp/yt/threading/spin_wait.h | 37 - library/cpp/yt/threading/spin_wait_hook.cpp | 37 - library/cpp/yt/threading/spin_wait_hook.h | 32 - .../cpp/yt/threading/traceless_guard-inl.h | 115 - library/cpp/yt/threading/traceless_guard.h | 29 - .../unittests/count_down_latch_ut.cpp | 78 - .../unittests/recursive_spin_lock_ut.cpp | 88 - .../yt/threading/unittests/spin_wait_ut.cpp | 48 - library/cpp/yt/threading/unittests/ya.make | 17 - library/cpp/yt/threading/ya.make | 33 - .../yt/yson_string/unittests/convert_ut.cpp | 79 - .../yt/yson_string/unittests/saveload_ut.cpp | 46 - library/cpp/yt/yson_string/unittests/ya.make | 16 - library/cpp/ytalloc/api/README.md | 6 - library/cpp/ytalloc/api/fallback.cpp | 202 - library/cpp/ytalloc/api/ya.make | 12 - library/cpp/ytalloc/api/ytalloc-inl.h | 76 - library/cpp/ytalloc/api/ytalloc.h | 370 - library/python/certifi/.dist-info/METADATA | 2 - .../python/certifi/.dist-info/top_level.txt | 1 - library/python/certifi/README.md | 7 - library/python/certifi/certifi/__init__.py | 10 - library/python/certifi/certifi/binary.py | 25 - library/python/certifi/certifi/source.py | 13 - library/python/certifi/ya.make | 18 - perforator/tools/pprofconvert/main.cpp | 11 - perforator/tools/pprofconvert/ya.make | 2 - 719 files changed, 125912 deletions(-) delete mode 100644 contrib/libs/cxxsupp/libcxx/include/__iterator/iterator_with_data.h delete mode 100644 contrib/libs/cxxsupp/libcxx/include/__ranges/all.h delete mode 100644 contrib/libs/cxxsupp/libcxx/include/__ranges/as_rvalue_view.h delete mode 100644 contrib/libs/cxxsupp/libcxx/include/__ranges/chunk_by_view.h delete mode 100644 contrib/libs/cxxsupp/libcxx/include/__ranges/common_view.h delete mode 100644 contrib/libs/cxxsupp/libcxx/include/__ranges/counted.h delete mode 100644 contrib/libs/cxxsupp/libcxx/include/__ranges/drop_view.h delete mode 100644 contrib/libs/cxxsupp/libcxx/include/__ranges/drop_while_view.h delete mode 100644 contrib/libs/cxxsupp/libcxx/include/__ranges/elements_view.h delete mode 100644 contrib/libs/cxxsupp/libcxx/include/__ranges/empty_view.h delete mode 100644 contrib/libs/cxxsupp/libcxx/include/__ranges/filter_view.h delete mode 100644 contrib/libs/cxxsupp/libcxx/include/__ranges/iota_view.h delete mode 100644 contrib/libs/cxxsupp/libcxx/include/__ranges/istream_view.h delete mode 100644 contrib/libs/cxxsupp/libcxx/include/__ranges/join_view.h delete mode 100644 contrib/libs/cxxsupp/libcxx/include/__ranges/lazy_split_view.h delete mode 100644 contrib/libs/cxxsupp/libcxx/include/__ranges/non_propagating_cache.h delete mode 100644 contrib/libs/cxxsupp/libcxx/include/__ranges/owning_view.h delete mode 100644 contrib/libs/cxxsupp/libcxx/include/__ranges/range_adaptor.h delete mode 100644 contrib/libs/cxxsupp/libcxx/include/__ranges/rbegin.h delete mode 100644 contrib/libs/cxxsupp/libcxx/include/__ranges/rend.h delete mode 100644 contrib/libs/cxxsupp/libcxx/include/__ranges/repeat_view.h delete mode 100644 contrib/libs/cxxsupp/libcxx/include/__ranges/reverse_view.h delete mode 100644 contrib/libs/cxxsupp/libcxx/include/__ranges/single_view.h delete mode 100644 contrib/libs/cxxsupp/libcxx/include/__ranges/split_view.h delete mode 100644 contrib/libs/cxxsupp/libcxx/include/__ranges/take_view.h delete mode 100644 contrib/libs/cxxsupp/libcxx/include/__ranges/take_while_view.h delete mode 100644 contrib/libs/cxxsupp/libcxx/include/__ranges/to.h delete mode 100644 contrib/libs/cxxsupp/libcxx/include/__ranges/transform_view.h delete mode 100644 contrib/libs/cxxsupp/libcxx/include/__ranges/views.h delete mode 100644 contrib/libs/cxxsupp/libcxx/include/__ranges/zip_view.h delete mode 100644 contrib/libs/cxxsupp/libcxx/include/__tuple/tuple_like.h delete mode 100644 contrib/libs/cxxsupp/libcxx/include/latch delete mode 100644 contrib/libs/cxxsupp/libcxx/include/ranges delete mode 100644 contrib/libs/farmhash/COPYING delete mode 100644 contrib/libs/farmhash/README delete mode 100644 contrib/libs/farmhash/arch/sse41/ya.make delete mode 100644 contrib/libs/farmhash/arch/sse42/ya.make delete mode 100644 contrib/libs/farmhash/arch/sse42_aesni/ya.make delete mode 100644 contrib/libs/farmhash/common.h delete mode 100644 contrib/libs/farmhash/farmhash.h delete mode 100644 contrib/libs/farmhash/farmhash_iface.cc delete mode 100644 contrib/libs/farmhash/farmhash_iface.h delete mode 100644 contrib/libs/farmhash/farmhashcc.cc delete mode 100644 contrib/libs/farmhash/farmhashmk.cc delete mode 100644 contrib/libs/farmhash/farmhashna.cc delete mode 100644 contrib/libs/farmhash/farmhashnt.cc delete mode 100644 contrib/libs/farmhash/farmhashsa.cc delete mode 100644 contrib/libs/farmhash/farmhashsu.cc delete mode 100644 contrib/libs/farmhash/farmhashte.cc delete mode 100644 contrib/libs/farmhash/farmhashuo.cc delete mode 100644 contrib/libs/farmhash/farmhashxo.cc delete mode 100644 contrib/libs/farmhash/ya.make delete mode 100644 contrib/libs/linux-headers/linux/filter.h delete mode 100644 contrib/libs/musl/include/netinet/ip.h delete mode 100644 contrib/libs/musl/include/sys/ttydefaults.h delete mode 100644 contrib/libs/tcmalloc/CONTRIBUTING.md delete mode 100644 contrib/libs/tcmalloc/LICENSE delete mode 100644 contrib/libs/tcmalloc/README.md delete mode 100644 contrib/libs/tcmalloc/ya.make delete mode 100644 contrib/libs/yajl/api/yajl_common.h delete mode 100644 contrib/libs/yajl/api/yajl_gen.h delete mode 100644 contrib/libs/yajl/api/yajl_parse.h delete mode 100644 contrib/libs/yajl/api/yajl_tree.h delete mode 100644 contrib/libs/yajl/api/yajl_version.h delete mode 100644 contrib/libs/yajl/ya.make delete mode 100644 contrib/libs/yajl/yajl.c delete mode 100644 contrib/libs/yajl/yajl_alloc.c delete mode 100644 contrib/libs/yajl/yajl_alloc.h delete mode 100644 contrib/libs/yajl/yajl_buf.c delete mode 100644 contrib/libs/yajl/yajl_buf.h delete mode 100644 contrib/libs/yajl/yajl_bytestack.h delete mode 100644 contrib/libs/yajl/yajl_encode.c delete mode 100644 contrib/libs/yajl/yajl_encode.h delete mode 100644 contrib/libs/yajl/yajl_gen.c delete mode 100644 contrib/libs/yajl/yajl_lex.c delete mode 100644 contrib/libs/yajl/yajl_lex.h delete mode 100644 contrib/libs/yajl/yajl_parser.c delete mode 100644 contrib/libs/yajl/yajl_parser.cpp delete mode 100644 contrib/libs/yajl/yajl_parser.h delete mode 100644 contrib/libs/yajl/yajl_tree.c delete mode 100644 contrib/libs/yajl/yajl_version.c delete mode 100644 contrib/libs/zstd/include/zdict.h delete mode 100644 contrib/python/anyio/.dist-info/METADATA delete mode 100644 contrib/python/anyio/.dist-info/entry_points.txt delete mode 100644 contrib/python/anyio/.dist-info/top_level.txt delete mode 100644 contrib/python/anyio/LICENSE delete mode 100644 contrib/python/anyio/README.rst delete mode 100644 contrib/python/anyio/anyio/__init__.py delete mode 100644 contrib/python/anyio/anyio/_backends/__init__.py delete mode 100644 contrib/python/anyio/anyio/_backends/_asyncio.py delete mode 100644 contrib/python/anyio/anyio/_backends/_trio.py delete mode 100644 contrib/python/anyio/anyio/_core/__init__.py delete mode 100644 contrib/python/anyio/anyio/_core/_asyncio_selector_thread.py delete mode 100644 contrib/python/anyio/anyio/_core/_eventloop.py delete mode 100644 contrib/python/anyio/anyio/_core/_exceptions.py delete mode 100644 contrib/python/anyio/anyio/_core/_fileio.py delete mode 100644 contrib/python/anyio/anyio/_core/_resources.py delete mode 100644 contrib/python/anyio/anyio/_core/_signals.py delete mode 100644 contrib/python/anyio/anyio/_core/_sockets.py delete mode 100644 contrib/python/anyio/anyio/_core/_streams.py delete mode 100644 contrib/python/anyio/anyio/_core/_subprocesses.py delete mode 100644 contrib/python/anyio/anyio/_core/_synchronization.py delete mode 100644 contrib/python/anyio/anyio/_core/_tasks.py delete mode 100644 contrib/python/anyio/anyio/_core/_testing.py delete mode 100644 contrib/python/anyio/anyio/_core/_typedattr.py delete mode 100644 contrib/python/anyio/anyio/abc/__init__.py delete mode 100644 contrib/python/anyio/anyio/abc/_eventloop.py delete mode 100644 contrib/python/anyio/anyio/abc/_resources.py delete mode 100644 contrib/python/anyio/anyio/abc/_sockets.py delete mode 100644 contrib/python/anyio/anyio/abc/_streams.py delete mode 100644 contrib/python/anyio/anyio/abc/_subprocesses.py delete mode 100644 contrib/python/anyio/anyio/abc/_tasks.py delete mode 100644 contrib/python/anyio/anyio/abc/_testing.py delete mode 100644 contrib/python/anyio/anyio/from_thread.py delete mode 100644 contrib/python/anyio/anyio/lowlevel.py delete mode 100644 contrib/python/anyio/anyio/py.typed delete mode 100644 contrib/python/anyio/anyio/pytest_plugin.py delete mode 100644 contrib/python/anyio/anyio/streams/__init__.py delete mode 100644 contrib/python/anyio/anyio/streams/buffered.py delete mode 100644 contrib/python/anyio/anyio/streams/file.py delete mode 100644 contrib/python/anyio/anyio/streams/memory.py delete mode 100644 contrib/python/anyio/anyio/streams/stapled.py delete mode 100644 contrib/python/anyio/anyio/streams/text.py delete mode 100644 contrib/python/anyio/anyio/streams/tls.py delete mode 100644 contrib/python/anyio/anyio/to_interpreter.py delete mode 100644 contrib/python/anyio/anyio/to_process.py delete mode 100644 contrib/python/anyio/anyio/to_thread.py delete mode 100644 contrib/python/anyio/ya.make delete mode 100644 contrib/python/certifi/py3/ya.make delete mode 100644 contrib/python/certifi/ya.make delete mode 100644 contrib/python/charset-normalizer/.dist-info/METADATA delete mode 100644 contrib/python/charset-normalizer/.dist-info/entry_points.txt delete mode 100644 contrib/python/charset-normalizer/.dist-info/top_level.txt delete mode 100644 contrib/python/charset-normalizer/LICENSE delete mode 100644 contrib/python/charset-normalizer/README.md delete mode 100644 contrib/python/charset-normalizer/charset_normalizer/__init__.py delete mode 100644 contrib/python/charset-normalizer/charset_normalizer/__main__.py delete mode 100644 contrib/python/charset-normalizer/charset_normalizer/api.py delete mode 100644 contrib/python/charset-normalizer/charset_normalizer/cd.py delete mode 100644 contrib/python/charset-normalizer/charset_normalizer/cli/__init__.py delete mode 100644 contrib/python/charset-normalizer/charset_normalizer/cli/__main__.py delete mode 100644 contrib/python/charset-normalizer/charset_normalizer/constant.py delete mode 100644 contrib/python/charset-normalizer/charset_normalizer/legacy.py delete mode 100644 contrib/python/charset-normalizer/charset_normalizer/md.py delete mode 100644 contrib/python/charset-normalizer/charset_normalizer/models.py delete mode 100644 contrib/python/charset-normalizer/charset_normalizer/py.typed delete mode 100644 contrib/python/charset-normalizer/charset_normalizer/utils.py delete mode 100644 contrib/python/charset-normalizer/charset_normalizer/version.py delete mode 100644 contrib/python/charset-normalizer/ya.make delete mode 100644 contrib/python/h11/.dist-info/METADATA delete mode 100644 contrib/python/h11/.dist-info/top_level.txt delete mode 100644 contrib/python/h11/LICENSE.txt delete mode 100644 contrib/python/h11/README.rst delete mode 100644 contrib/python/h11/h11/__init__.py delete mode 100644 contrib/python/h11/h11/_abnf.py delete mode 100644 contrib/python/h11/h11/_connection.py delete mode 100644 contrib/python/h11/h11/_events.py delete mode 100644 contrib/python/h11/h11/_headers.py delete mode 100644 contrib/python/h11/h11/_readers.py delete mode 100644 contrib/python/h11/h11/_receivebuffer.py delete mode 100644 contrib/python/h11/h11/_state.py delete mode 100644 contrib/python/h11/h11/_util.py delete mode 100644 contrib/python/h11/h11/_version.py delete mode 100644 contrib/python/h11/h11/_writers.py delete mode 100644 contrib/python/h11/h11/py.typed delete mode 100644 contrib/python/h11/ya.make delete mode 100644 contrib/python/httpcore/.dist-info/METADATA delete mode 100644 contrib/python/httpcore/.dist-info/top_level.txt delete mode 100644 contrib/python/httpcore/LICENSE.md delete mode 100644 contrib/python/httpcore/README.md delete mode 100644 contrib/python/httpcore/httpcore/__init__.py delete mode 100644 contrib/python/httpcore/httpcore/_api.py delete mode 100644 contrib/python/httpcore/httpcore/_async/__init__.py delete mode 100644 contrib/python/httpcore/httpcore/_async/connection.py delete mode 100644 contrib/python/httpcore/httpcore/_async/connection_pool.py delete mode 100644 contrib/python/httpcore/httpcore/_async/http11.py delete mode 100644 contrib/python/httpcore/httpcore/_async/http2.py delete mode 100644 contrib/python/httpcore/httpcore/_async/http_proxy.py delete mode 100644 contrib/python/httpcore/httpcore/_async/interfaces.py delete mode 100644 contrib/python/httpcore/httpcore/_async/socks_proxy.py delete mode 100644 contrib/python/httpcore/httpcore/_backends/__init__.py delete mode 100644 contrib/python/httpcore/httpcore/_backends/anyio.py delete mode 100644 contrib/python/httpcore/httpcore/_backends/auto.py delete mode 100644 contrib/python/httpcore/httpcore/_backends/base.py delete mode 100644 contrib/python/httpcore/httpcore/_backends/mock.py delete mode 100644 contrib/python/httpcore/httpcore/_backends/sync.py delete mode 100644 contrib/python/httpcore/httpcore/_backends/trio.py delete mode 100644 contrib/python/httpcore/httpcore/_exceptions.py delete mode 100644 contrib/python/httpcore/httpcore/_models.py delete mode 100644 contrib/python/httpcore/httpcore/_ssl.py delete mode 100644 contrib/python/httpcore/httpcore/_sync/__init__.py delete mode 100644 contrib/python/httpcore/httpcore/_sync/connection.py delete mode 100644 contrib/python/httpcore/httpcore/_sync/connection_pool.py delete mode 100644 contrib/python/httpcore/httpcore/_sync/http11.py delete mode 100644 contrib/python/httpcore/httpcore/_sync/http2.py delete mode 100644 contrib/python/httpcore/httpcore/_sync/http_proxy.py delete mode 100644 contrib/python/httpcore/httpcore/_sync/interfaces.py delete mode 100644 contrib/python/httpcore/httpcore/_sync/socks_proxy.py delete mode 100644 contrib/python/httpcore/httpcore/_synchronization.py delete mode 100644 contrib/python/httpcore/httpcore/_trace.py delete mode 100644 contrib/python/httpcore/httpcore/_utils.py delete mode 100644 contrib/python/httpcore/httpcore/py.typed delete mode 100644 contrib/python/httpcore/ya.make delete mode 100644 contrib/python/httpx/.dist-info/METADATA delete mode 100644 contrib/python/httpx/.dist-info/entry_points.txt delete mode 100644 contrib/python/httpx/.dist-info/top_level.txt delete mode 100644 contrib/python/httpx/LICENSE.md delete mode 100644 contrib/python/httpx/README.md delete mode 100644 contrib/python/httpx/httpx/__init__.py delete mode 100644 contrib/python/httpx/httpx/__version__.py delete mode 100644 contrib/python/httpx/httpx/_api.py delete mode 100644 contrib/python/httpx/httpx/_auth.py delete mode 100644 contrib/python/httpx/httpx/_client.py delete mode 100644 contrib/python/httpx/httpx/_compat.py delete mode 100644 contrib/python/httpx/httpx/_config.py delete mode 100644 contrib/python/httpx/httpx/_content.py delete mode 100644 contrib/python/httpx/httpx/_decoders.py delete mode 100644 contrib/python/httpx/httpx/_exceptions.py delete mode 100644 contrib/python/httpx/httpx/_main.py delete mode 100644 contrib/python/httpx/httpx/_models.py delete mode 100644 contrib/python/httpx/httpx/_multipart.py delete mode 100644 contrib/python/httpx/httpx/_status_codes.py delete mode 100644 contrib/python/httpx/httpx/_transports/__init__.py delete mode 100644 contrib/python/httpx/httpx/_transports/asgi.py delete mode 100644 contrib/python/httpx/httpx/_transports/base.py delete mode 100644 contrib/python/httpx/httpx/_transports/default.py delete mode 100644 contrib/python/httpx/httpx/_transports/mock.py delete mode 100644 contrib/python/httpx/httpx/_transports/wsgi.py delete mode 100644 contrib/python/httpx/httpx/_types.py delete mode 100644 contrib/python/httpx/httpx/_urlparse.py delete mode 100644 contrib/python/httpx/httpx/_urls.py delete mode 100644 contrib/python/httpx/httpx/_utils.py delete mode 100644 contrib/python/httpx/httpx/py.typed delete mode 100644 contrib/python/httpx/ya.make delete mode 100644 contrib/python/idna/py2/LICENSE.rst delete mode 100644 contrib/python/idna/py2/README.rst delete mode 100644 contrib/python/idna/py3/.dist-info/METADATA delete mode 100644 contrib/python/idna/py3/.dist-info/top_level.txt delete mode 100644 contrib/python/idna/py3/LICENSE.md delete mode 100644 contrib/python/idna/py3/README.rst delete mode 100644 contrib/python/idna/py3/idna/__init__.py delete mode 100644 contrib/python/idna/py3/idna/codec.py delete mode 100644 contrib/python/idna/py3/idna/compat.py delete mode 100644 contrib/python/idna/py3/idna/core.py delete mode 100644 contrib/python/idna/py3/idna/idnadata.py delete mode 100644 contrib/python/idna/py3/idna/intranges.py delete mode 100644 contrib/python/idna/py3/idna/package_data.py delete mode 100644 contrib/python/idna/py3/idna/py.typed delete mode 100644 contrib/python/idna/py3/idna/uts46data.py delete mode 100644 contrib/python/idna/py3/ya.make delete mode 100644 contrib/python/idna/ya.make delete mode 100644 contrib/python/requests/py2/LICENSE delete mode 100644 contrib/python/requests/py2/NOTICE delete mode 100644 contrib/python/requests/py2/README.md delete mode 100644 contrib/python/requests/py3/.dist-info/METADATA delete mode 100644 contrib/python/requests/py3/.dist-info/top_level.txt delete mode 100644 contrib/python/requests/py3/LICENSE delete mode 100644 contrib/python/requests/py3/NOTICE delete mode 100644 contrib/python/requests/py3/README.md delete mode 100644 contrib/python/requests/py3/requests/__init__.py delete mode 100644 contrib/python/requests/py3/requests/__version__.py delete mode 100644 contrib/python/requests/py3/requests/_internal_utils.py delete mode 100644 contrib/python/requests/py3/requests/adapters.py delete mode 100644 contrib/python/requests/py3/requests/api.py delete mode 100644 contrib/python/requests/py3/requests/auth.py delete mode 100644 contrib/python/requests/py3/requests/certs.py delete mode 100644 contrib/python/requests/py3/requests/compat.py delete mode 100644 contrib/python/requests/py3/requests/cookies.py delete mode 100644 contrib/python/requests/py3/requests/exceptions.py delete mode 100644 contrib/python/requests/py3/requests/help.py delete mode 100644 contrib/python/requests/py3/requests/hooks.py delete mode 100644 contrib/python/requests/py3/requests/models.py delete mode 100644 contrib/python/requests/py3/requests/packages.py delete mode 100644 contrib/python/requests/py3/requests/sessions.py delete mode 100644 contrib/python/requests/py3/requests/status_codes.py delete mode 100644 contrib/python/requests/py3/requests/structures.py delete mode 100644 contrib/python/requests/py3/requests/utils.py delete mode 100644 contrib/python/requests/py3/ya.make delete mode 100644 contrib/python/requests/ya.make delete mode 100644 contrib/python/sniffio/.dist-info/METADATA delete mode 100644 contrib/python/sniffio/.dist-info/top_level.txt delete mode 100644 contrib/python/sniffio/LICENSE delete mode 100644 contrib/python/sniffio/LICENSE.APACHE2 delete mode 100644 contrib/python/sniffio/LICENSE.MIT delete mode 100644 contrib/python/sniffio/README.rst delete mode 100644 contrib/python/sniffio/sniffio/__init__.py delete mode 100644 contrib/python/sniffio/sniffio/_impl.py delete mode 100644 contrib/python/sniffio/sniffio/_version.py delete mode 100644 contrib/python/sniffio/sniffio/py.typed delete mode 100644 contrib/python/sniffio/ya.make delete mode 100644 contrib/python/urllib3/py2/LICENSE.txt delete mode 100644 contrib/python/urllib3/py2/README.rst delete mode 100644 contrib/python/urllib3/py3/.dist-info/METADATA delete mode 100644 contrib/python/urllib3/py3/.dist-info/top_level.txt delete mode 100644 contrib/python/urllib3/py3/LICENSE.txt delete mode 100644 contrib/python/urllib3/py3/README.rst delete mode 100644 contrib/python/urllib3/py3/urllib3/__init__.py delete mode 100644 contrib/python/urllib3/py3/urllib3/_collections.py delete mode 100644 contrib/python/urllib3/py3/urllib3/_version.py delete mode 100644 contrib/python/urllib3/py3/urllib3/connection.py delete mode 100644 contrib/python/urllib3/py3/urllib3/connectionpool.py delete mode 100644 contrib/python/urllib3/py3/urllib3/contrib/__init__.py delete mode 100644 contrib/python/urllib3/py3/urllib3/contrib/_appengine_environ.py delete mode 100644 contrib/python/urllib3/py3/urllib3/contrib/appengine.py delete mode 100644 contrib/python/urllib3/py3/urllib3/contrib/socks.py delete mode 100644 contrib/python/urllib3/py3/urllib3/exceptions.py delete mode 100644 contrib/python/urllib3/py3/urllib3/fields.py delete mode 100644 contrib/python/urllib3/py3/urllib3/filepost.py delete mode 100644 contrib/python/urllib3/py3/urllib3/packages/__init__.py delete mode 100644 contrib/python/urllib3/py3/urllib3/packages/six.py delete mode 100644 contrib/python/urllib3/py3/urllib3/poolmanager.py delete mode 100644 contrib/python/urllib3/py3/urllib3/request.py delete mode 100644 contrib/python/urllib3/py3/urllib3/response.py delete mode 100644 contrib/python/urllib3/py3/urllib3/util/__init__.py delete mode 100644 contrib/python/urllib3/py3/urllib3/util/connection.py delete mode 100644 contrib/python/urllib3/py3/urllib3/util/proxy.py delete mode 100644 contrib/python/urllib3/py3/urllib3/util/queue.py delete mode 100644 contrib/python/urllib3/py3/urllib3/util/request.py delete mode 100644 contrib/python/urllib3/py3/urllib3/util/response.py delete mode 100644 contrib/python/urllib3/py3/urllib3/util/retry.py delete mode 100644 contrib/python/urllib3/py3/urllib3/util/ssl_.py delete mode 100644 contrib/python/urllib3/py3/urllib3/util/ssl_match_hostname.py delete mode 100644 contrib/python/urllib3/py3/urllib3/util/ssltransport.py delete mode 100644 contrib/python/urllib3/py3/urllib3/util/timeout.py delete mode 100644 contrib/python/urllib3/py3/urllib3/util/url.py delete mode 100644 contrib/python/urllib3/py3/urllib3/util/wait.py delete mode 100644 contrib/python/urllib3/py3/ya.make delete mode 100644 contrib/python/urllib3/ya.make delete mode 100644 contrib/restricted/http-parser/AUTHORS delete mode 100644 contrib/restricted/http-parser/LICENSE-MIT delete mode 100644 contrib/restricted/http-parser/README.md delete mode 100644 contrib/restricted/http-parser/http_parser.c delete mode 100644 contrib/restricted/http-parser/http_parser.h delete mode 100644 contrib/restricted/http-parser/ya.make delete mode 100644 library/cpp/cgiparam/cgiparam.cpp delete mode 100644 library/cpp/cgiparam/cgiparam.h delete mode 100644 library/cpp/cgiparam/ya.make delete mode 100644 library/cpp/charset/README.md delete mode 100644 library/cpp/charset/decodeunknownplane.cpp delete mode 100644 library/cpp/charset/iconv.cpp delete mode 100644 library/cpp/charset/iconv.h delete mode 100644 library/cpp/charset/recyr.hh delete mode 100644 library/cpp/charset/recyr_int.hh delete mode 100644 library/cpp/charset/wide.cpp delete mode 100644 library/cpp/charset/wide.h delete mode 100644 library/cpp/charset/ya.make delete mode 100644 library/cpp/containers/concurrent_hash/concurrent_hash.h delete mode 100644 library/cpp/http/io/chunk.cpp delete mode 100644 library/cpp/http/io/chunk.h delete mode 100644 library/cpp/http/io/compression.cpp delete mode 100644 library/cpp/http/io/compression.h delete mode 100644 library/cpp/http/io/headers.cpp delete mode 100644 library/cpp/http/io/headers.h delete mode 100644 library/cpp/http/io/stream.cpp delete mode 100644 library/cpp/http/io/stream.h delete mode 100644 library/cpp/http/io/ya.make delete mode 100644 library/cpp/int128/README.md delete mode 100644 library/cpp/int128/int128.cpp delete mode 100644 library/cpp/int128/ya.make delete mode 100644 library/cpp/monlib/encode/buffered/buffered_encoder_base.cpp delete mode 100644 library/cpp/monlib/encode/buffered/buffered_encoder_base.h delete mode 100644 library/cpp/monlib/encode/buffered/string_pool.cpp delete mode 100644 library/cpp/monlib/encode/buffered/string_pool.h delete mode 100644 library/cpp/monlib/encode/buffered/ya.make delete mode 100644 library/cpp/monlib/encode/encoder.cpp delete mode 100644 library/cpp/monlib/encode/encoder.h delete mode 100644 library/cpp/monlib/encode/encoder_state.cpp delete mode 100644 library/cpp/monlib/encode/encoder_state.h delete mode 100644 library/cpp/monlib/encode/encoder_state_enum.h delete mode 100644 library/cpp/monlib/encode/format.cpp delete mode 100644 library/cpp/monlib/encode/format.h delete mode 100644 library/cpp/monlib/encode/json/json.h delete mode 100644 library/cpp/monlib/encode/json/json_decoder.cpp delete mode 100644 library/cpp/monlib/encode/json/json_encoder.cpp delete mode 100644 library/cpp/monlib/encode/json/typed_point.h delete mode 100644 library/cpp/monlib/encode/json/ya.make delete mode 100644 library/cpp/monlib/encode/prometheus/prometheus.h delete mode 100644 library/cpp/monlib/encode/prometheus/prometheus_decoder.cpp delete mode 100644 library/cpp/monlib/encode/prometheus/prometheus_encoder.cpp delete mode 100644 library/cpp/monlib/encode/prometheus/prometheus_model.h delete mode 100644 library/cpp/monlib/encode/prometheus/ya.make delete mode 100644 library/cpp/monlib/encode/spack/compression.cpp delete mode 100644 library/cpp/monlib/encode/spack/compression.h delete mode 100644 library/cpp/monlib/encode/spack/spack_v1.h delete mode 100644 library/cpp/monlib/encode/spack/spack_v1_decoder.cpp delete mode 100644 library/cpp/monlib/encode/spack/spack_v1_encoder.cpp delete mode 100644 library/cpp/monlib/encode/spack/varint.cpp delete mode 100644 library/cpp/monlib/encode/spack/varint.h delete mode 100644 library/cpp/monlib/encode/spack/ya.make delete mode 100644 library/cpp/monlib/encode/ya.make delete mode 100644 library/cpp/monlib/exception/exception.cpp delete mode 100644 library/cpp/monlib/exception/exception.h delete mode 100644 library/cpp/monlib/exception/ya.make delete mode 100644 library/cpp/monlib/metrics/atomics_array.h delete mode 100644 library/cpp/monlib/metrics/ewma.cpp delete mode 100644 library/cpp/monlib/metrics/ewma.h delete mode 100644 library/cpp/monlib/metrics/fake.cpp delete mode 100644 library/cpp/monlib/metrics/fake.h delete mode 100644 library/cpp/monlib/metrics/histogram_collector.h delete mode 100644 library/cpp/monlib/metrics/histogram_collector_explicit.cpp delete mode 100644 library/cpp/monlib/metrics/histogram_collector_exponential.cpp delete mode 100644 library/cpp/monlib/metrics/histogram_collector_linear.cpp delete mode 100644 library/cpp/monlib/metrics/histogram_snapshot.cpp delete mode 100644 library/cpp/monlib/metrics/histogram_snapshot.h delete mode 100644 library/cpp/monlib/metrics/labels.cpp delete mode 100644 library/cpp/monlib/metrics/labels.h delete mode 100644 library/cpp/monlib/metrics/log_histogram_snapshot.cpp delete mode 100644 library/cpp/monlib/metrics/log_histogram_snapshot.h delete mode 100644 library/cpp/monlib/metrics/metric.h delete mode 100644 library/cpp/monlib/metrics/metric_consumer.cpp delete mode 100644 library/cpp/monlib/metrics/metric_consumer.h delete mode 100644 library/cpp/monlib/metrics/metric_registry.cpp delete mode 100644 library/cpp/monlib/metrics/metric_registry.h delete mode 100644 library/cpp/monlib/metrics/metric_type.cpp delete mode 100644 library/cpp/monlib/metrics/metric_type.h delete mode 100644 library/cpp/monlib/metrics/metric_value.cpp delete mode 100644 library/cpp/monlib/metrics/metric_value.h delete mode 100644 library/cpp/monlib/metrics/metric_value_type.h delete mode 100644 library/cpp/monlib/metrics/summary_collector.cpp delete mode 100644 library/cpp/monlib/metrics/summary_collector.h delete mode 100644 library/cpp/monlib/metrics/summary_snapshot.cpp delete mode 100644 library/cpp/monlib/metrics/summary_snapshot.h delete mode 100644 library/cpp/monlib/metrics/ya.make delete mode 100644 library/cpp/openssl/holders/bio.cpp delete mode 100644 library/cpp/openssl/holders/bio.h delete mode 100644 library/cpp/openssl/holders/evp.h delete mode 100644 library/cpp/openssl/holders/hmac.h delete mode 100644 library/cpp/openssl/holders/holder.h delete mode 100644 library/cpp/openssl/holders/ut/evp_ut.cpp delete mode 100644 library/cpp/openssl/holders/ut/hmac_ut.cpp delete mode 100644 library/cpp/openssl/holders/ut/ya.make delete mode 100644 library/cpp/openssl/holders/x509_vfy.cpp delete mode 100644 library/cpp/openssl/holders/x509_vfy.h delete mode 100644 library/cpp/openssl/holders/ya.make delete mode 100644 library/cpp/openssl/init/init.cpp delete mode 100644 library/cpp/openssl/init/init.h delete mode 100644 library/cpp/openssl/init/ya.make delete mode 100644 library/cpp/openssl/io/stream.cpp delete mode 100644 library/cpp/openssl/io/stream.h delete mode 100644 library/cpp/openssl/io/ut/builtin_ut.cpp delete mode 100644 library/cpp/openssl/io/ut/ya.make delete mode 100644 library/cpp/openssl/io/ya.make delete mode 100644 library/cpp/openssl/method/io.cpp delete mode 100644 library/cpp/openssl/method/io.h delete mode 100644 library/cpp/openssl/method/ut/io_ut.cpp delete mode 100644 library/cpp/openssl/method/ut/ya.make delete mode 100644 library/cpp/openssl/method/ya.make delete mode 100644 library/cpp/protobuf/interop/cast.h delete mode 100644 library/cpp/streams/brotli/brotli.cpp delete mode 100644 library/cpp/streams/brotli/brotli.h delete mode 100644 library/cpp/streams/brotli/brotli_ut.cpp delete mode 100644 library/cpp/streams/brotli/ut/ya.make delete mode 100644 library/cpp/streams/brotli/ya.make delete mode 100644 library/cpp/streams/bzip2/bzip2.cpp delete mode 100644 library/cpp/streams/bzip2/bzip2.h delete mode 100644 library/cpp/streams/bzip2/ya.make delete mode 100644 library/cpp/streams/lz/common/error.h delete mode 100644 library/cpp/streams/lz/lz.h delete mode 100644 library/cpp/streams/lz/lz4/lz4.h delete mode 100644 library/cpp/streams/lz/snappy/snappy.h delete mode 100644 library/cpp/streams/lzma/lzma.cpp delete mode 100644 library/cpp/streams/lzma/lzma.h delete mode 100644 library/cpp/streams/lzma/ya.make delete mode 100644 library/cpp/string_utils/quote/quote.cpp delete mode 100644 library/cpp/string_utils/quote/quote.h delete mode 100644 library/cpp/string_utils/quote/ya.make delete mode 100644 library/cpp/string_utils/scan/scan.cpp delete mode 100644 library/cpp/string_utils/scan/scan.h delete mode 100644 library/cpp/string_utils/scan/ya.make delete mode 100644 library/cpp/testing/gtest_protobuf/matcher.h delete mode 100644 library/cpp/threading/hot_swap/hot_swap.cpp delete mode 100644 library/cpp/threading/hot_swap/hot_swap.h delete mode 100644 library/cpp/threading/hot_swap/ya.make delete mode 100644 library/cpp/threading/light_rw_lock/lightrwlock.h delete mode 100644 library/cpp/threading/skip_list/compare.h delete mode 100644 library/cpp/threading/skip_list/perf/main.cpp delete mode 100644 library/cpp/threading/skip_list/perf/ya.make delete mode 100644 library/cpp/threading/skip_list/skiplist.cpp delete mode 100644 library/cpp/threading/skip_list/skiplist.h delete mode 100644 library/cpp/threading/skip_list/skiplist_ut.cpp delete mode 100644 library/cpp/threading/skip_list/ut/ya.make delete mode 100644 library/cpp/threading/skip_list/ya.make delete mode 100644 library/cpp/threading/thread_local/thread_local.cpp delete mode 100644 library/cpp/threading/thread_local/thread_local.h delete mode 100644 library/cpp/threading/thread_local/ya.make delete mode 100644 library/cpp/yt/backtrace/absl_unwinder/absl_unwinder.cpp delete mode 100644 library/cpp/yt/backtrace/absl_unwinder/absl_unwinder.h delete mode 100644 library/cpp/yt/backtrace/absl_unwinder/ya.make delete mode 100644 library/cpp/yt/backtrace/backtrace-inl.h delete mode 100644 library/cpp/yt/backtrace/backtrace.cpp delete mode 100644 library/cpp/yt/backtrace/backtrace.h delete mode 100644 library/cpp/yt/backtrace/cursors/dummy/dummy_cursor.cpp delete mode 100644 library/cpp/yt/backtrace/cursors/dummy/dummy_cursor.h delete mode 100644 library/cpp/yt/backtrace/cursors/dummy/ya.make delete mode 100644 library/cpp/yt/backtrace/cursors/frame_pointer/frame_pointer_cursor.h delete mode 100644 library/cpp/yt/backtrace/cursors/frame_pointer/frame_pointer_cursor_dummy.h delete mode 100644 library/cpp/yt/backtrace/cursors/frame_pointer/frame_pointer_cursor_x86_64.cpp delete mode 100644 library/cpp/yt/backtrace/cursors/frame_pointer/frame_pointer_cursor_x86_64.h delete mode 100644 library/cpp/yt/backtrace/cursors/frame_pointer/ya.make delete mode 100644 library/cpp/yt/backtrace/cursors/interop/interop.h delete mode 100644 library/cpp/yt/backtrace/cursors/interop/interop_x86_64.cpp delete mode 100644 library/cpp/yt/backtrace/cursors/interop/ya.make delete mode 100644 library/cpp/yt/backtrace/cursors/libunwind/libunwind_cursor.cpp delete mode 100644 library/cpp/yt/backtrace/cursors/libunwind/libunwind_cursor.h delete mode 100644 library/cpp/yt/backtrace/cursors/libunwind/ya.make delete mode 100644 library/cpp/yt/backtrace/symbolizers/dwarf/dwarf_symbolizer.cpp delete mode 100644 library/cpp/yt/backtrace/symbolizers/dwarf/ya.make delete mode 100644 library/cpp/yt/backtrace/symbolizers/dynload/dynload_symbolizer.cpp delete mode 100644 library/cpp/yt/backtrace/unittests/backtrace_ut.cpp delete mode 100644 library/cpp/yt/backtrace/unittests/ya.make delete mode 100644 library/cpp/yt/backtrace/ya.make delete mode 100644 library/cpp/yt/coding/unittests/varint_ut.cpp delete mode 100644 library/cpp/yt/coding/unittests/ya.make delete mode 100644 library/cpp/yt/coding/unittests/zig_zag_ut.cpp delete mode 100644 library/cpp/yt/containers/expiring_set-inl.h delete mode 100644 library/cpp/yt/containers/expiring_set.h delete mode 100644 library/cpp/yt/containers/intrusive_linked_list-inl.h delete mode 100644 library/cpp/yt/containers/intrusive_linked_list.h delete mode 100644 library/cpp/yt/containers/sharded_set-inl.h delete mode 100644 library/cpp/yt/containers/sharded_set.h delete mode 100644 library/cpp/yt/containers/unittests/enum_indexed_array_ut.cpp delete mode 100644 library/cpp/yt/containers/unittests/expiring_set_ut.cpp delete mode 100644 library/cpp/yt/containers/unittests/sharded_set_ut.cpp delete mode 100644 library/cpp/yt/containers/unittests/ya.make delete mode 100644 library/cpp/yt/containers/ya.make delete mode 100644 library/cpp/yt/cpu_clock/benchmark/benchmark.cpp delete mode 100644 library/cpp/yt/cpu_clock/benchmark/ya.make delete mode 100644 library/cpp/yt/cpu_clock/clock-inl.h delete mode 100644 library/cpp/yt/cpu_clock/clock.cpp delete mode 100644 library/cpp/yt/cpu_clock/clock.h delete mode 100644 library/cpp/yt/cpu_clock/public.h delete mode 100644 library/cpp/yt/cpu_clock/unittests/clock_ut.cpp delete mode 100644 library/cpp/yt/cpu_clock/unittests/ya.make delete mode 100644 library/cpp/yt/cpu_clock/ya.make delete mode 100644 library/cpp/yt/error/error-inl.h delete mode 100644 library/cpp/yt/error/error.cpp delete mode 100644 library/cpp/yt/error/error.h delete mode 100644 library/cpp/yt/error/error_attribute-inl.h delete mode 100644 library/cpp/yt/error/error_attribute.h delete mode 100644 library/cpp/yt/error/error_attributes-inl.h delete mode 100644 library/cpp/yt/error/error_attributes.cpp delete mode 100644 library/cpp/yt/error/error_attributes.h delete mode 100644 library/cpp/yt/error/error_code.cpp delete mode 100644 library/cpp/yt/error/error_code.h delete mode 100644 library/cpp/yt/error/error_helpers-inl.h delete mode 100644 library/cpp/yt/error/error_helpers.h delete mode 100644 library/cpp/yt/error/mergeable_dictionary.h delete mode 100644 library/cpp/yt/error/origin_attributes.cpp delete mode 100644 library/cpp/yt/error/origin_attributes.h delete mode 100644 library/cpp/yt/error/public.h delete mode 100644 library/cpp/yt/error/text_yson.cpp delete mode 100644 library/cpp/yt/error/text_yson.h delete mode 100644 library/cpp/yt/error/unittests/error_code_ut.cpp delete mode 100644 library/cpp/yt/error/unittests/error_ut.cpp delete mode 100644 library/cpp/yt/error/unittests/ya.make delete mode 100644 library/cpp/yt/error/ya.make delete mode 100644 library/cpp/yt/farmhash/farm_hash.h delete mode 100644 library/cpp/yt/global/access.h delete mode 100644 library/cpp/yt/global/impl.cpp delete mode 100644 library/cpp/yt/global/mock_modules/module1_defs/direct_access.h delete mode 100644 library/cpp/yt/global/mock_modules/module1_defs/test_variable.cpp delete mode 100644 library/cpp/yt/global/mock_modules/module1_defs/ya.make delete mode 100644 library/cpp/yt/global/mock_modules/module1_public/test_tag.h delete mode 100644 library/cpp/yt/global/mock_modules/module1_public/ya.make delete mode 100644 library/cpp/yt/global/mock_modules/module2_defs/direct_access.h delete mode 100644 library/cpp/yt/global/mock_modules/module2_defs/test_variable.cpp delete mode 100644 library/cpp/yt/global/mock_modules/module2_defs/ya.make delete mode 100644 library/cpp/yt/global/mock_modules/module2_public/test_tag.h delete mode 100644 library/cpp/yt/global/mock_modules/module2_public/ya.make delete mode 100644 library/cpp/yt/global/mock_modules/module3_defs/direct_access.h delete mode 100644 library/cpp/yt/global/mock_modules/module3_defs/test_variable.cpp delete mode 100644 library/cpp/yt/global/mock_modules/module3_defs/ya.make delete mode 100644 library/cpp/yt/global/mock_modules/module3_public/test_tag.h delete mode 100644 library/cpp/yt/global/mock_modules/module3_public/ya.make delete mode 100644 library/cpp/yt/global/unittests/global_variable/just_works_ut/main.cpp delete mode 100644 library/cpp/yt/global/unittests/global_variable/just_works_ut/ya.make delete mode 100644 library/cpp/yt/global/unittests/global_variable/missing_module_ut/main.cpp delete mode 100644 library/cpp/yt/global/unittests/global_variable/missing_module_ut/ya.make delete mode 100644 library/cpp/yt/global/unittests/global_variable/odr_violation_avoidance_ut/main.cpp delete mode 100644 library/cpp/yt/global/unittests/global_variable/odr_violation_avoidance_ut/ya.make delete mode 100644 library/cpp/yt/global/unittests/global_variable/two_modules_ut/main.cpp delete mode 100644 library/cpp/yt/global/unittests/global_variable/two_modules_ut/ya.make delete mode 100644 library/cpp/yt/global/variable-inl.h delete mode 100644 library/cpp/yt/global/variable.h delete mode 100644 library/cpp/yt/global/ya.make delete mode 100644 library/cpp/yt/logging/backends/arcadia/backend.cpp delete mode 100644 library/cpp/yt/logging/backends/arcadia/backend.h delete mode 100644 library/cpp/yt/logging/backends/arcadia/ya.make delete mode 100644 library/cpp/yt/logging/backends/stream/stream_log_manager.cpp delete mode 100644 library/cpp/yt/logging/backends/stream/stream_log_manager.h delete mode 100644 library/cpp/yt/logging/backends/stream/unittests/stream_log_manager_ut.cpp delete mode 100644 library/cpp/yt/logging/backends/stream/unittests/ya.make delete mode 100644 library/cpp/yt/logging/backends/stream/ya.make delete mode 100644 library/cpp/yt/logging/backends/ya.make delete mode 100644 library/cpp/yt/logging/logger-inl.h delete mode 100644 library/cpp/yt/logging/logger.cpp delete mode 100644 library/cpp/yt/logging/logger.h delete mode 100644 library/cpp/yt/logging/plain_text_formatter/formatter.cpp delete mode 100644 library/cpp/yt/logging/plain_text_formatter/formatter.h delete mode 100644 library/cpp/yt/logging/plain_text_formatter/ya.make delete mode 100644 library/cpp/yt/logging/public.h delete mode 100644 library/cpp/yt/logging/unittests/logger_ut.cpp delete mode 100644 library/cpp/yt/logging/unittests/static_analysis_ut.cpp delete mode 100644 library/cpp/yt/logging/unittests/ya.make delete mode 100644 library/cpp/yt/logging/ya.make delete mode 100644 library/cpp/yt/memory/atomic_intrusive_ptr-inl.h delete mode 100644 library/cpp/yt/memory/atomic_intrusive_ptr.h delete mode 100644 library/cpp/yt/memory/chunked_memory_pool_allocator-inl.h delete mode 100644 library/cpp/yt/memory/chunked_memory_pool_allocator.h delete mode 100644 library/cpp/yt/memory/erased_storage-inl.h delete mode 100644 library/cpp/yt/memory/erased_storage.h delete mode 100644 library/cpp/yt/memory/free_list-inl.h delete mode 100644 library/cpp/yt/memory/free_list.h delete mode 100644 library/cpp/yt/memory/function_view-inl.h delete mode 100644 library/cpp/yt/memory/function_view.h delete mode 100644 library/cpp/yt/memory/leaky_ref_counted_singleton-inl.h delete mode 100644 library/cpp/yt/memory/leaky_ref_counted_singleton.h delete mode 100644 library/cpp/yt/memory/leaky_singleton-inl.h delete mode 100644 library/cpp/yt/memory/leaky_singleton.h delete mode 100644 library/cpp/yt/memory/non_null_ptr-inl.h delete mode 100644 library/cpp/yt/memory/non_null_ptr.h delete mode 100644 library/cpp/yt/memory/type_erasure.h delete mode 100644 library/cpp/yt/memory/type_erasure_detail.h delete mode 100644 library/cpp/yt/memory/unittests/atomic_intrusive_ptr_ut.cpp delete mode 100644 library/cpp/yt/memory/unittests/chunked_memory_pool_allocator_ut.cpp delete mode 100644 library/cpp/yt/memory/unittests/chunked_memory_pool_output_ut.cpp delete mode 100644 library/cpp/yt/memory/unittests/chunked_memory_pool_ut.cpp delete mode 100644 library/cpp/yt/memory/unittests/erased_storage_ut.cpp delete mode 100644 library/cpp/yt/memory/unittests/free_list_ut.cpp delete mode 100644 library/cpp/yt/memory/unittests/function_view_ut.cpp delete mode 100644 library/cpp/yt/memory/unittests/intrusive_ptr_ut.cpp delete mode 100644 library/cpp/yt/memory/unittests/non_null_ptr_ut.cpp delete mode 100644 library/cpp/yt/memory/unittests/range_protobuf_repeated_field_ut.cpp delete mode 100644 library/cpp/yt/memory/unittests/ref_ut.cpp delete mode 100644 library/cpp/yt/memory/unittests/safe_memory_reader_ut.cpp delete mode 100644 library/cpp/yt/memory/unittests/shared_range_ut.cpp delete mode 100644 library/cpp/yt/memory/unittests/type_erasure_ut.cpp delete mode 100644 library/cpp/yt/memory/unittests/weak_ptr_ut.cpp delete mode 100644 library/cpp/yt/memory/unittests/ya.make delete mode 100644 library/cpp/yt/memory/weak_ptr.h delete mode 100644 library/cpp/yt/misc/arcadia_enum-inl.h delete mode 100644 library/cpp/yt/misc/arcadia_enum.h delete mode 100644 library/cpp/yt/misc/global.h delete mode 100644 library/cpp/yt/misc/optional.h delete mode 100644 library/cpp/yt/misc/property.h delete mode 100644 library/cpp/yt/misc/static_initializer.h delete mode 100644 library/cpp/yt/misc/unaligned-inl.h delete mode 100644 library/cpp/yt/misc/unaligned.h delete mode 100644 library/cpp/yt/string/raw_formatter.h delete mode 100644 library/cpp/yt/string/unittests/enum_ut.cpp delete mode 100644 library/cpp/yt/string/unittests/format_ut.cpp delete mode 100644 library/cpp/yt/string/unittests/guid_ut.cpp delete mode 100644 library/cpp/yt/string/unittests/string_ut.cpp delete mode 100644 library/cpp/yt/string/unittests/ya.make delete mode 100644 library/cpp/yt/system/handle_eintr-inl.h delete mode 100644 library/cpp/yt/system/handle_eintr.h delete mode 100644 library/cpp/yt/system/proc.h delete mode 100644 library/cpp/yt/threading/at_fork.cpp delete mode 100644 library/cpp/yt/threading/at_fork.h delete mode 100644 library/cpp/yt/threading/atomic_object-inl.h delete mode 100644 library/cpp/yt/threading/atomic_object.h delete mode 100644 library/cpp/yt/threading/count_down_latch.cpp delete mode 100644 library/cpp/yt/threading/count_down_latch.h delete mode 100644 library/cpp/yt/threading/event_count-inl.h delete mode 100644 library/cpp/yt/threading/event_count.cpp delete mode 100644 library/cpp/yt/threading/event_count.h delete mode 100644 library/cpp/yt/threading/fork_aware_rw_spin_lock.cpp delete mode 100644 library/cpp/yt/threading/fork_aware_rw_spin_lock.h delete mode 100644 library/cpp/yt/threading/fork_aware_spin_lock.cpp delete mode 100644 library/cpp/yt/threading/fork_aware_spin_lock.h delete mode 100644 library/cpp/yt/threading/futex.cpp delete mode 100644 library/cpp/yt/threading/futex.h delete mode 100644 library/cpp/yt/threading/notification_handle.cpp delete mode 100644 library/cpp/yt/threading/notification_handle.h delete mode 100644 library/cpp/yt/threading/public.cpp delete mode 100644 library/cpp/yt/threading/public.h delete mode 100644 library/cpp/yt/threading/recursive_spin_lock-inl.h delete mode 100644 library/cpp/yt/threading/recursive_spin_lock.cpp delete mode 100644 library/cpp/yt/threading/recursive_spin_lock.h delete mode 100644 library/cpp/yt/threading/rw_spin_lock-inl.h delete mode 100644 library/cpp/yt/threading/rw_spin_lock.cpp delete mode 100644 library/cpp/yt/threading/rw_spin_lock.h delete mode 100644 library/cpp/yt/threading/spin_lock-inl.h delete mode 100644 library/cpp/yt/threading/spin_lock.cpp delete mode 100644 library/cpp/yt/threading/spin_lock.h delete mode 100644 library/cpp/yt/threading/spin_lock_base-inl.h delete mode 100644 library/cpp/yt/threading/spin_lock_base.cpp delete mode 100644 library/cpp/yt/threading/spin_lock_base.h delete mode 100644 library/cpp/yt/threading/spin_lock_count-inl.h delete mode 100644 library/cpp/yt/threading/spin_lock_count.cpp delete mode 100644 library/cpp/yt/threading/spin_lock_count.h delete mode 100644 library/cpp/yt/threading/spin_wait.cpp delete mode 100644 library/cpp/yt/threading/spin_wait.h delete mode 100644 library/cpp/yt/threading/spin_wait_hook.cpp delete mode 100644 library/cpp/yt/threading/spin_wait_hook.h delete mode 100644 library/cpp/yt/threading/traceless_guard-inl.h delete mode 100644 library/cpp/yt/threading/traceless_guard.h delete mode 100644 library/cpp/yt/threading/unittests/count_down_latch_ut.cpp delete mode 100644 library/cpp/yt/threading/unittests/recursive_spin_lock_ut.cpp delete mode 100644 library/cpp/yt/threading/unittests/spin_wait_ut.cpp delete mode 100644 library/cpp/yt/threading/unittests/ya.make delete mode 100644 library/cpp/yt/threading/ya.make delete mode 100644 library/cpp/yt/yson_string/unittests/convert_ut.cpp delete mode 100644 library/cpp/yt/yson_string/unittests/saveload_ut.cpp delete mode 100644 library/cpp/yt/yson_string/unittests/ya.make delete mode 100644 library/cpp/ytalloc/api/README.md delete mode 100644 library/cpp/ytalloc/api/fallback.cpp delete mode 100644 library/cpp/ytalloc/api/ya.make delete mode 100644 library/cpp/ytalloc/api/ytalloc-inl.h delete mode 100644 library/cpp/ytalloc/api/ytalloc.h delete mode 100644 library/python/certifi/.dist-info/METADATA delete mode 100644 library/python/certifi/.dist-info/top_level.txt delete mode 100644 library/python/certifi/README.md delete mode 100644 library/python/certifi/certifi/__init__.py delete mode 100644 library/python/certifi/certifi/binary.py delete mode 100644 library/python/certifi/certifi/source.py delete mode 100644 library/python/certifi/ya.make diff --git a/contrib/libs/cxxsupp/libcxx/include/__iterator/iterator_with_data.h b/contrib/libs/cxxsupp/libcxx/include/__iterator/iterator_with_data.h deleted file mode 100644 index afdc0a4e1..000000000 --- a/contrib/libs/cxxsupp/libcxx/include/__iterator/iterator_with_data.h +++ /dev/null @@ -1,105 +0,0 @@ -//===----------------------------------------------------------------------===// -// -// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. -// See https://llvm.org/LICENSE.txt for license information. -// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception -// -//===----------------------------------------------------------------------===// - -#ifndef _LIBCPP___ITERATOR_ITERATOR_WITH_DATA_H -#define _LIBCPP___ITERATOR_ITERATOR_WITH_DATA_H - -#include <__compare/compare_three_way_result.h> -#include <__compare/three_way_comparable.h> -#include <__config> -#include <__iterator/concepts.h> -#include <__iterator/incrementable_traits.h> -#include <__iterator/iter_move.h> -#include <__iterator/iter_swap.h> -#include <__iterator/iterator_traits.h> -#include <__iterator/readable_traits.h> -#include <__utility/move.h> - -#if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER) -# pragma GCC system_header -#endif - -_LIBCPP_PUSH_MACROS -#include <__undef_macros> - -#if _LIBCPP_STD_VER >= 20 - -_LIBCPP_BEGIN_NAMESPACE_STD - -template -class __iterator_with_data { - _Iterator __iter_{}; - _Data __data_{}; - -public: - using value_type = iter_value_t<_Iterator>; - using difference_type = iter_difference_t<_Iterator>; - - _LIBCPP_HIDE_FROM_ABI __iterator_with_data() = default; - - constexpr _LIBCPP_HIDE_FROM_ABI __iterator_with_data(_Iterator __iter, _Data __data) - : __iter_(std::move(__iter)), __data_(std::move(__data)) {} - - constexpr _LIBCPP_HIDE_FROM_ABI _Iterator __get_iter() const { return __iter_; } - - constexpr _LIBCPP_HIDE_FROM_ABI _Data __get_data() && { return std::move(__data_); } - - friend constexpr _LIBCPP_HIDE_FROM_ABI bool - operator==(const __iterator_with_data& __lhs, const __iterator_with_data& __rhs) { - return __lhs.__iter_ == __rhs.__iter_; - } - - constexpr _LIBCPP_HIDE_FROM_ABI __iterator_with_data& operator++() { - ++__iter_; - return *this; - } - - constexpr _LIBCPP_HIDE_FROM_ABI __iterator_with_data operator++(int) { - auto __tmp = *this; - __iter_++; - return __tmp; - } - - constexpr _LIBCPP_HIDE_FROM_ABI __iterator_with_data& operator--() - requires bidirectional_iterator<_Iterator> - { - --__iter_; - return *this; - } - - constexpr _LIBCPP_HIDE_FROM_ABI __iterator_with_data operator--(int) - requires bidirectional_iterator<_Iterator> - { - auto __tmp = *this; - --__iter_; - return __tmp; - } - - constexpr _LIBCPP_HIDE_FROM_ABI iter_reference_t<_Iterator> operator*() const { return *__iter_; } - - _LIBCPP_HIDE_FROM_ABI friend constexpr iter_rvalue_reference_t<_Iterator> - iter_move(const __iterator_with_data& __iter) noexcept(noexcept(ranges::iter_move(__iter.__iter_))) { - return ranges::iter_move(__iter.__iter_); - } - - _LIBCPP_HIDE_FROM_ABI friend constexpr void - iter_swap(const __iterator_with_data& __lhs, - const __iterator_with_data& __rhs) noexcept(noexcept(ranges::iter_swap(__lhs.__iter_, __rhs.__iter_))) - requires indirectly_swappable<_Iterator> - { - return ranges::iter_swap(__lhs.__data_, __rhs.__iter_); - } -}; - -_LIBCPP_END_NAMESPACE_STD - -#endif // _LIBCPP_STD_VER >= 20 - -_LIBCPP_POP_MACROS - -#endif // _LIBCPP___ITERATOR_ITERATOR_WITH_DATA_H diff --git a/contrib/libs/cxxsupp/libcxx/include/__ranges/all.h b/contrib/libs/cxxsupp/libcxx/include/__ranges/all.h deleted file mode 100644 index b735bdc71..000000000 --- a/contrib/libs/cxxsupp/libcxx/include/__ranges/all.h +++ /dev/null @@ -1,79 +0,0 @@ -// -*- C++ -*- -//===----------------------------------------------------------------------===// -// -// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. -// See https://llvm.org/LICENSE.txt for license information. -// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception -// -//===----------------------------------------------------------------------===// - -#ifndef _LIBCPP___RANGES_ALL_H -#define _LIBCPP___RANGES_ALL_H - -#include <__config> -#include <__functional/compose.h> // TODO(modules): Those should not be required -#include <__functional/perfect_forward.h> // -#include <__iterator/concepts.h> -#include <__iterator/iterator_traits.h> -#include <__ranges/access.h> -#include <__ranges/concepts.h> -#include <__ranges/owning_view.h> -#include <__ranges/range_adaptor.h> -#include <__ranges/ref_view.h> -#include <__type_traits/decay.h> -#include <__utility/auto_cast.h> -#include <__utility/declval.h> -#include <__utility/forward.h> - -#if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER) -# pragma GCC system_header -#endif - -_LIBCPP_BEGIN_NAMESPACE_STD - -#if _LIBCPP_STD_VER >= 20 - -namespace ranges::views { - -namespace __all { -struct __fn : __range_adaptor_closure<__fn> { - template - requires ranges::view> - [[nodiscard]] _LIBCPP_HIDE_FROM_ABI constexpr auto operator()(_Tp&& __t) const - noexcept(noexcept(_LIBCPP_AUTO_CAST(std::forward<_Tp>(__t)))) - -> decltype(_LIBCPP_AUTO_CAST(std::forward<_Tp>(__t))) { - return _LIBCPP_AUTO_CAST(std::forward<_Tp>(__t)); - } - - template - requires(!ranges::view>) && requires(_Tp&& __t) { ranges::ref_view{std::forward<_Tp>(__t)}; } - [[nodiscard]] _LIBCPP_HIDE_FROM_ABI constexpr auto operator()(_Tp&& __t) const - noexcept(noexcept(ranges::ref_view{std::forward<_Tp>(__t)})) { - return ranges::ref_view{std::forward<_Tp>(__t)}; - } - - template - requires( - !ranges::view> && !requires(_Tp&& __t) { ranges::ref_view{std::forward<_Tp>(__t)}; } && - requires(_Tp&& __t) { ranges::owning_view{std::forward<_Tp>(__t)}; }) - [[nodiscard]] _LIBCPP_HIDE_FROM_ABI constexpr auto operator()(_Tp&& __t) const - noexcept(noexcept(ranges::owning_view{std::forward<_Tp>(__t)})) { - return ranges::owning_view{std::forward<_Tp>(__t)}; - } -}; -} // namespace __all - -inline namespace __cpo { -inline constexpr auto all = __all::__fn{}; -} // namespace __cpo - -template -using all_t = decltype(views::all(std::declval<_Range>())); - -} // namespace ranges::views - -#endif // _LIBCPP_STD_VER >= 20 - -_LIBCPP_END_NAMESPACE_STD - -#endif // _LIBCPP___RANGES_ALL_H diff --git a/contrib/libs/cxxsupp/libcxx/include/__ranges/as_rvalue_view.h b/contrib/libs/cxxsupp/libcxx/include/__ranges/as_rvalue_view.h deleted file mode 100644 index 2fc272e79..000000000 --- a/contrib/libs/cxxsupp/libcxx/include/__ranges/as_rvalue_view.h +++ /dev/null @@ -1,142 +0,0 @@ -//===----------------------------------------------------------------------===// -// -// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. -// See https://llvm.org/LICENSE.txt for license information. -// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception -// -//===----------------------------------------------------------------------===// - -#ifndef _LIBCPP___RANGES_AS_RVALUE_H -#define _LIBCPP___RANGES_AS_RVALUE_H - -#include <__concepts/constructible.h> -#include <__concepts/same_as.h> -#include <__config> -#include <__iterator/move_iterator.h> -#include <__iterator/move_sentinel.h> -#include <__ranges/access.h> -#include <__ranges/all.h> -#include <__ranges/concepts.h> -#include <__ranges/enable_borrowed_range.h> -#include <__ranges/range_adaptor.h> -#include <__ranges/size.h> -#include <__ranges/view_interface.h> -#include <__utility/forward.h> -#include <__utility/move.h> - -#if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER) -# pragma GCC system_header -#endif - -_LIBCPP_PUSH_MACROS -#include <__undef_macros> - -#if _LIBCPP_STD_VER >= 23 - -_LIBCPP_BEGIN_NAMESPACE_STD - -namespace ranges { -template - requires input_range<_View> -class as_rvalue_view : public view_interface> { - _LIBCPP_NO_UNIQUE_ADDRESS _View __base_ = _View(); - -public: - _LIBCPP_HIDE_FROM_ABI as_rvalue_view() - requires default_initializable<_View> - = default; - - _LIBCPP_HIDE_FROM_ABI constexpr explicit as_rvalue_view(_View __base) : __base_(std::move(__base)) {} - - _LIBCPP_HIDE_FROM_ABI constexpr _View base() const& - requires copy_constructible<_View> - { - return __base_; - } - - _LIBCPP_HIDE_FROM_ABI constexpr _View base() && { return std::move(__base_); } - - _LIBCPP_HIDE_FROM_ABI constexpr auto begin() - requires(!__simple_view<_View>) - { - return move_iterator(ranges::begin(__base_)); - } - - _LIBCPP_HIDE_FROM_ABI constexpr auto begin() const - requires range - { - return move_iterator(ranges::begin(__base_)); - } - - _LIBCPP_HIDE_FROM_ABI constexpr auto end() - requires(!__simple_view<_View>) - { - if constexpr (common_range<_View>) { - return move_iterator(ranges::end(__base_)); - } else { - return move_sentinel(ranges::end(__base_)); - } - } - - _LIBCPP_HIDE_FROM_ABI constexpr auto end() const - requires range - { - if constexpr (common_range) { - return move_iterator(ranges::end(__base_)); - } else { - return move_sentinel(ranges::end(__base_)); - } - } - - _LIBCPP_HIDE_FROM_ABI constexpr auto size() - requires sized_range<_View> - { - return ranges::size(__base_); - } - - _LIBCPP_HIDE_FROM_ABI constexpr auto size() const - requires sized_range - { - return ranges::size(__base_); - } -}; - -template -as_rvalue_view(_Range&&) -> as_rvalue_view>; - -template -inline constexpr bool enable_borrowed_range> = enable_borrowed_range<_View>; - -namespace views { -namespace __as_rvalue { -struct __fn : __range_adaptor_closure<__fn> { - template - _LIBCPP_NODISCARD_EXT _LIBCPP_HIDE_FROM_ABI static constexpr auto - operator()(_Range&& __range) noexcept(noexcept(as_rvalue_view(std::forward<_Range>(__range)))) - -> decltype(/*--------------------------*/ as_rvalue_view(std::forward<_Range>(__range))) { - return /*---------------------------------*/ as_rvalue_view(std::forward<_Range>(__range)); - } - - template - requires same_as, range_reference_t<_Range>> - _LIBCPP_NODISCARD_EXT _LIBCPP_HIDE_FROM_ABI static constexpr auto - operator()(_Range&& __range) noexcept(noexcept(views::all(std::forward<_Range>(__range)))) - -> decltype(/*--------------------------*/ views::all(std::forward<_Range>(__range))) { - return /*---------------------------------*/ views::all(std::forward<_Range>(__range)); - } -}; -} // namespace __as_rvalue - -inline namespace __cpo { -inline constexpr auto as_rvalue = __as_rvalue::__fn{}; -} // namespace __cpo -} // namespace views -} // namespace ranges - -_LIBCPP_END_NAMESPACE_STD - -#endif // _LIBCPP_STD_VER >= 23 - -_LIBCPP_POP_MACROS - -#endif // _LIBCPP___RANGES_AS_RVALUE_H diff --git a/contrib/libs/cxxsupp/libcxx/include/__ranges/chunk_by_view.h b/contrib/libs/cxxsupp/libcxx/include/__ranges/chunk_by_view.h deleted file mode 100644 index b04a23de9..000000000 --- a/contrib/libs/cxxsupp/libcxx/include/__ranges/chunk_by_view.h +++ /dev/null @@ -1,235 +0,0 @@ -// -*- C++ -*- -//===----------------------------------------------------------------------===// -// -// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. -// See https://llvm.org/LICENSE.txt for license information. -// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception -// -//===----------------------------------------------------------------------===// - -#ifndef _LIBCPP___RANGES_CHUNK_BY_VIEW_H -#define _LIBCPP___RANGES_CHUNK_BY_VIEW_H - -#include <__algorithm/ranges_adjacent_find.h> -#include <__assert> -#include <__concepts/constructible.h> -#include <__config> -#include <__functional/bind_back.h> -#include <__functional/invoke.h> -#include <__iterator/concepts.h> -#include <__iterator/default_sentinel.h> -#include <__iterator/iterator_traits.h> -#include <__iterator/next.h> -#include <__iterator/prev.h> -#include <__memory/addressof.h> -#include <__ranges/access.h> -#include <__ranges/all.h> -#include <__ranges/concepts.h> -#include <__ranges/movable_box.h> -#include <__ranges/non_propagating_cache.h> -#include <__ranges/range_adaptor.h> -#include <__ranges/reverse_view.h> -#include <__ranges/subrange.h> -#include <__ranges/view_interface.h> -#include <__type_traits/conditional.h> -#include <__type_traits/decay.h> -#include <__type_traits/is_nothrow_constructible.h> -#include <__type_traits/is_object.h> -#include <__utility/forward.h> -#include <__utility/in_place.h> -#include <__utility/move.h> - -#if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER) -# pragma GCC system_header -#endif - -_LIBCPP_PUSH_MACROS -#include <__undef_macros> - -_LIBCPP_BEGIN_NAMESPACE_STD - -#if _LIBCPP_STD_VER >= 23 - -namespace ranges { - -template , iterator_t<_View>> _Pred> - requires view<_View> && is_object_v<_Pred> -class _LIBCPP_ABI_LLVM18_NO_UNIQUE_ADDRESS chunk_by_view : public view_interface> { - _LIBCPP_NO_UNIQUE_ADDRESS _View __base_ = _View(); - _LIBCPP_NO_UNIQUE_ADDRESS __movable_box<_Pred> __pred_; - - // We cache the result of begin() to allow providing an amortized O(1). - using _Cache = __non_propagating_cache>; - _Cache __cached_begin_; - - class __iterator; - - _LIBCPP_HIDE_FROM_ABI constexpr iterator_t<_View> __find_next(iterator_t<_View> __current) { - // Note: this duplicates a check in `optional` but provides a better error message. - _LIBCPP_ASSERT_VALID_ELEMENT_ACCESS( - __pred_.__has_value(), "Trying to call __find_next() on a chunk_by_view that does not have a valid predicate."); - auto __reversed_pred = [this](_Tp&& __x, _Up&& __y) -> bool { - return !std::invoke(*__pred_, std::forward<_Tp>(__x), std::forward<_Up>(__y)); - }; - return ranges::next( - ranges::adjacent_find(__current, ranges::end(__base_), __reversed_pred), 1, ranges::end(__base_)); - } - - _LIBCPP_HIDE_FROM_ABI constexpr iterator_t<_View> __find_prev(iterator_t<_View> __current) - requires bidirectional_range<_View> - { - // Attempting to decrement a begin iterator is a no-op (`__find_prev` would return the same argument given to it). - _LIBCPP_ASSERT_PEDANTIC(__current != ranges::begin(__base_), "Trying to call __find_prev() on a begin iterator."); - // Note: this duplicates a check in `optional` but provides a better error message. - _LIBCPP_ASSERT_VALID_ELEMENT_ACCESS( - __pred_.__has_value(), "Trying to call __find_prev() on a chunk_by_view that does not have a valid predicate."); - - auto __first = ranges::begin(__base_); - reverse_view __reversed{subrange{__first, __current}}; - auto __reversed_pred = [this](_Tp&& __x, _Up&& __y) -> bool { - return !std::invoke(*__pred_, std::forward<_Up>(__y), std::forward<_Tp>(__x)); - }; - return ranges::prev(ranges::adjacent_find(__reversed, __reversed_pred).base(), 1, std::move(__first)); - } - -public: - _LIBCPP_HIDE_FROM_ABI chunk_by_view() - requires default_initializable<_View> && default_initializable<_Pred> - = default; - - _LIBCPP_HIDE_FROM_ABI constexpr explicit chunk_by_view(_View __base, _Pred __pred) - : __base_(std::move(__base)), __pred_(in_place, std::move(__pred)) {} - - _LIBCPP_HIDE_FROM_ABI constexpr _View base() const& - requires copy_constructible<_View> - { - return __base_; - } - - _LIBCPP_HIDE_FROM_ABI constexpr _View base() && { return std::move(__base_); } - - _LIBCPP_HIDE_FROM_ABI constexpr const _Pred& pred() const { return *__pred_; } - - _LIBCPP_HIDE_FROM_ABI constexpr __iterator begin() { - // Note: this duplicates a check in `optional` but provides a better error message. - _LIBCPP_ASSERT_VALID_ELEMENT_ACCESS( - __pred_.__has_value(), "Trying to call begin() on a chunk_by_view that does not have a valid predicate."); - - auto __first = ranges::begin(__base_); - if (!__cached_begin_.__has_value()) { - __cached_begin_.__emplace(__find_next(__first)); - } - return {*this, std::move(__first), *__cached_begin_}; - } - - _LIBCPP_HIDE_FROM_ABI constexpr auto end() { - if constexpr (common_range<_View>) { - return __iterator{*this, ranges::end(__base_), ranges::end(__base_)}; - } else { - return default_sentinel; - } - } -}; - -template -chunk_by_view(_Range&&, _Pred) -> chunk_by_view, _Pred>; - -template , iterator_t<_View>> _Pred> - requires view<_View> && is_object_v<_Pred> -class chunk_by_view<_View, _Pred>::__iterator { - friend chunk_by_view; - - chunk_by_view* __parent_ = nullptr; - _LIBCPP_NO_UNIQUE_ADDRESS iterator_t<_View> __current_ = iterator_t<_View>(); - _LIBCPP_NO_UNIQUE_ADDRESS iterator_t<_View> __next_ = iterator_t<_View>(); - - _LIBCPP_HIDE_FROM_ABI constexpr __iterator( - chunk_by_view& __parent, iterator_t<_View> __current, iterator_t<_View> __next) - : __parent_(std::addressof(__parent)), __current_(__current), __next_(__next) {} - -public: - using value_type = subrange>; - using difference_type = range_difference_t<_View>; - using iterator_category = input_iterator_tag; - using iterator_concept = conditional_t, bidirectional_iterator_tag, forward_iterator_tag>; - - _LIBCPP_HIDE_FROM_ABI __iterator() = default; - - _LIBCPP_HIDE_FROM_ABI constexpr value_type operator*() const { - // If the iterator is at end, this would return an empty range which can be checked by the calling code and doesn't - // necessarily lead to a bad access. - _LIBCPP_ASSERT_PEDANTIC(__current_ != __next_, "Trying to dereference past-the-end chunk_by_view iterator."); - return {__current_, __next_}; - } - - _LIBCPP_HIDE_FROM_ABI constexpr __iterator& operator++() { - // Attempting to increment an end iterator is a no-op (`__find_next` would return the same argument given to it). - _LIBCPP_ASSERT_PEDANTIC(__current_ != __next_, "Trying to increment past end chunk_by_view iterator."); - __current_ = __next_; - __next_ = __parent_->__find_next(__current_); - return *this; - } - - _LIBCPP_HIDE_FROM_ABI constexpr __iterator operator++(int) { - auto __tmp = *this; - ++*this; - return __tmp; - } - - _LIBCPP_HIDE_FROM_ABI constexpr __iterator& operator--() - requires bidirectional_range<_View> - { - __next_ = __current_; - __current_ = __parent_->__find_prev(__next_); - return *this; - } - - _LIBCPP_HIDE_FROM_ABI constexpr __iterator operator--(int) - requires bidirectional_range<_View> - { - auto __tmp = *this; - --*this; - return __tmp; - } - - _LIBCPP_HIDE_FROM_ABI friend constexpr bool operator==(const __iterator& __x, const __iterator& __y) { - return __x.__current_ == __y.__current_; - } - - _LIBCPP_HIDE_FROM_ABI friend constexpr bool operator==(const __iterator& __x, default_sentinel_t) { - return __x.__current_ == __x.__next_; - } -}; - -namespace views { -namespace __chunk_by { -struct __fn { - template - _LIBCPP_NODISCARD_EXT _LIBCPP_HIDE_FROM_ABI constexpr auto operator()(_Range&& __range, _Pred&& __pred) const - noexcept(noexcept(/**/ chunk_by_view(std::forward<_Range>(__range), std::forward<_Pred>(__pred)))) - -> decltype(/*--*/ chunk_by_view(std::forward<_Range>(__range), std::forward<_Pred>(__pred))) { - return /*-------------*/ chunk_by_view(std::forward<_Range>(__range), std::forward<_Pred>(__pred)); - } - - template - requires constructible_from, _Pred> - _LIBCPP_NODISCARD_EXT _LIBCPP_HIDE_FROM_ABI constexpr auto operator()(_Pred&& __pred) const - noexcept(is_nothrow_constructible_v, _Pred>) { - return __range_adaptor_closure_t(std::__bind_back(*this, std::forward<_Pred>(__pred))); - } -}; -} // namespace __chunk_by - -inline namespace __cpo { -inline constexpr auto chunk_by = __chunk_by::__fn{}; -} // namespace __cpo -} // namespace views -} // namespace ranges - -#endif // _LIBCPP_STD_VER >= 23 - -_LIBCPP_END_NAMESPACE_STD - -_LIBCPP_POP_MACROS - -#endif // _LIBCPP___RANGES_CHUNK_BY_VIEW_H diff --git a/contrib/libs/cxxsupp/libcxx/include/__ranges/common_view.h b/contrib/libs/cxxsupp/libcxx/include/__ranges/common_view.h deleted file mode 100644 index 4b5b04c98..000000000 --- a/contrib/libs/cxxsupp/libcxx/include/__ranges/common_view.h +++ /dev/null @@ -1,144 +0,0 @@ -// -*- C++ -*- -//===----------------------------------------------------------------------===// -// -// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. -// See https://llvm.org/LICENSE.txt for license information. -// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception -// -//===----------------------------------------------------------------------===// - -#ifndef _LIBCPP___RANGES_COMMON_VIEW_H -#define _LIBCPP___RANGES_COMMON_VIEW_H - -#include <__concepts/constructible.h> -#include <__concepts/copyable.h> -#include <__config> -#include <__iterator/common_iterator.h> -#include <__iterator/iterator_traits.h> -#include <__ranges/access.h> -#include <__ranges/all.h> -#include <__ranges/concepts.h> -#include <__ranges/enable_borrowed_range.h> -#include <__ranges/range_adaptor.h> -#include <__ranges/size.h> -#include <__ranges/view_interface.h> -#include <__utility/forward.h> -#include <__utility/move.h> - -#if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER) -# pragma GCC system_header -#endif - -_LIBCPP_PUSH_MACROS -#include <__undef_macros> - -_LIBCPP_BEGIN_NAMESPACE_STD - -#if _LIBCPP_STD_VER >= 20 - -namespace ranges { - -template - requires(!common_range<_View> && copyable>) -class common_view : public view_interface> { - _View __base_ = _View(); - -public: - _LIBCPP_HIDE_FROM_ABI common_view() - requires default_initializable<_View> - = default; - - _LIBCPP_HIDE_FROM_ABI constexpr explicit common_view(_View __v) : __base_(std::move(__v)) {} - - _LIBCPP_HIDE_FROM_ABI constexpr _View base() const& - requires copy_constructible<_View> - { - return __base_; - } - - _LIBCPP_HIDE_FROM_ABI constexpr _View base() && { return std::move(__base_); } - - _LIBCPP_HIDE_FROM_ABI constexpr auto begin() { - if constexpr (random_access_range<_View> && sized_range<_View>) - return ranges::begin(__base_); - else - return common_iterator, sentinel_t<_View>>(ranges::begin(__base_)); - } - - _LIBCPP_HIDE_FROM_ABI constexpr auto begin() const - requires range - { - if constexpr (random_access_range && sized_range) - return ranges::begin(__base_); - else - return common_iterator, sentinel_t>(ranges::begin(__base_)); - } - - _LIBCPP_HIDE_FROM_ABI constexpr auto end() { - if constexpr (random_access_range<_View> && sized_range<_View>) - return ranges::begin(__base_) + ranges::size(__base_); - else - return common_iterator, sentinel_t<_View>>(ranges::end(__base_)); - } - - _LIBCPP_HIDE_FROM_ABI constexpr auto end() const - requires range - { - if constexpr (random_access_range && sized_range) - return ranges::begin(__base_) + ranges::size(__base_); - else - return common_iterator, sentinel_t>(ranges::end(__base_)); - } - - _LIBCPP_HIDE_FROM_ABI constexpr auto size() - requires sized_range<_View> - { - return ranges::size(__base_); - } - - _LIBCPP_HIDE_FROM_ABI constexpr auto size() const - requires sized_range - { - return ranges::size(__base_); - } -}; - -template -common_view(_Range&&) -> common_view>; - -template -inline constexpr bool enable_borrowed_range> = enable_borrowed_range<_View>; - -namespace views { -namespace __common { -struct __fn : __range_adaptor_closure<__fn> { - template - requires common_range<_Range> - [[nodiscard]] _LIBCPP_HIDE_FROM_ABI constexpr auto operator()(_Range&& __range) const - noexcept(noexcept(views::all(std::forward<_Range>(__range)))) - -> decltype(views::all(std::forward<_Range>(__range))) { - return views::all(std::forward<_Range>(__range)); - } - - template - [[nodiscard]] _LIBCPP_HIDE_FROM_ABI constexpr auto operator()(_Range&& __range) const - noexcept(noexcept(common_view{std::forward<_Range>(__range)})) - -> decltype(common_view{std::forward<_Range>(__range)}) { - return common_view{std::forward<_Range>(__range)}; - } -}; -} // namespace __common - -inline namespace __cpo { -inline constexpr auto common = __common::__fn{}; -} // namespace __cpo -} // namespace views -} // namespace ranges - -#endif // _LIBCPP_STD_VER >= 20 - -_LIBCPP_END_NAMESPACE_STD - -_LIBCPP_POP_MACROS - -#endif // _LIBCPP___RANGES_COMMON_VIEW_H diff --git a/contrib/libs/cxxsupp/libcxx/include/__ranges/counted.h b/contrib/libs/cxxsupp/libcxx/include/__ranges/counted.h deleted file mode 100644 index 83d76f8fd..000000000 --- a/contrib/libs/cxxsupp/libcxx/include/__ranges/counted.h +++ /dev/null @@ -1,90 +0,0 @@ -// -*- C++ -*- -//===----------------------------------------------------------------------===// -// -// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. -// See https://llvm.org/LICENSE.txt for license information. -// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception -// -//===----------------------------------------------------------------------===// - -#ifndef _LIBCPP___RANGES_COUNTED_H -#define _LIBCPP___RANGES_COUNTED_H - -#include <__concepts/convertible_to.h> -#include <__config> -#include <__iterator/concepts.h> -#include <__iterator/counted_iterator.h> -#include <__iterator/default_sentinel.h> -#include <__iterator/incrementable_traits.h> -#include <__iterator/iterator_traits.h> -#include <__memory/pointer_traits.h> -#include <__ranges/subrange.h> -#include <__type_traits/decay.h> -#include <__utility/forward.h> -#include <__utility/move.h> -#include -#include - -#if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER) -# pragma GCC system_header -#endif - -_LIBCPP_PUSH_MACROS -#include <__undef_macros> - -_LIBCPP_BEGIN_NAMESPACE_STD - -#if _LIBCPP_STD_VER >= 20 - -namespace ranges::views { - -namespace __counted { - -struct __fn { - template - _LIBCPP_HIDE_FROM_ABI static constexpr auto - __go(_It __it, - iter_difference_t<_It> __count) noexcept(noexcept(span(std::to_address(__it), static_cast(__count)))) - // Deliberately omit return-type SFINAE, because to_address is not SFINAE-friendly - { - return span(std::to_address(__it), static_cast(__count)); - } - - template - _LIBCPP_HIDE_FROM_ABI static constexpr auto - __go(_It __it, iter_difference_t<_It> __count) noexcept(noexcept(subrange(__it, __it + __count))) - -> decltype(subrange(__it, __it + __count)) { - return subrange(__it, __it + __count); - } - - template - _LIBCPP_HIDE_FROM_ABI static constexpr auto __go(_It __it, iter_difference_t<_It> __count) noexcept( - noexcept(subrange(counted_iterator(std::move(__it), __count), default_sentinel))) - -> decltype(subrange(counted_iterator(std::move(__it), __count), default_sentinel)) { - return subrange(counted_iterator(std::move(__it), __count), default_sentinel); - } - - template > _Diff> - requires input_or_output_iterator> - [[nodiscard]] _LIBCPP_HIDE_FROM_ABI constexpr auto operator()(_It&& __it, _Diff&& __count) const - noexcept(noexcept(__go(std::forward<_It>(__it), std::forward<_Diff>(__count)))) - -> decltype(__go(std::forward<_It>(__it), std::forward<_Diff>(__count))) { - return __go(std::forward<_It>(__it), std::forward<_Diff>(__count)); - } -}; - -} // namespace __counted - -inline namespace __cpo { -inline constexpr auto counted = __counted::__fn{}; -} // namespace __cpo - -} // namespace ranges::views - -#endif // _LIBCPP_STD_VER >= 20 - -_LIBCPP_END_NAMESPACE_STD - -_LIBCPP_POP_MACROS - -#endif // _LIBCPP___RANGES_COUNTED_H diff --git a/contrib/libs/cxxsupp/libcxx/include/__ranges/drop_view.h b/contrib/libs/cxxsupp/libcxx/include/__ranges/drop_view.h deleted file mode 100644 index 83bb598b0..000000000 --- a/contrib/libs/cxxsupp/libcxx/include/__ranges/drop_view.h +++ /dev/null @@ -1,329 +0,0 @@ -// -*- C++ -*- -//===----------------------------------------------------------------------===// -// -// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. -// See https://llvm.org/LICENSE.txt for license information. -// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception -// -//===----------------------------------------------------------------------===// - -#ifndef _LIBCPP___RANGES_DROP_VIEW_H -#define _LIBCPP___RANGES_DROP_VIEW_H - -#include <__algorithm/min.h> -#include <__assert> -#include <__concepts/constructible.h> -#include <__concepts/convertible_to.h> -#include <__config> -#include <__functional/bind_back.h> -#include <__fwd/span.h> -#include <__fwd/string_view.h> -#include <__iterator/concepts.h> -#include <__iterator/distance.h> -#include <__iterator/iterator_traits.h> -#include <__iterator/next.h> -#include <__ranges/access.h> -#include <__ranges/all.h> -#include <__ranges/concepts.h> -#include <__ranges/empty_view.h> -#include <__ranges/enable_borrowed_range.h> -#include <__ranges/iota_view.h> -#include <__ranges/non_propagating_cache.h> -#include <__ranges/range_adaptor.h> -#include <__ranges/repeat_view.h> -#include <__ranges/size.h> -#include <__ranges/subrange.h> -#include <__ranges/view_interface.h> -#include <__type_traits/conditional.h> -#include <__type_traits/decay.h> -#include <__type_traits/is_nothrow_constructible.h> -#include <__type_traits/make_unsigned.h> -#include <__type_traits/remove_cvref.h> -#include <__utility/auto_cast.h> -#include <__utility/forward.h> -#include <__utility/move.h> -#include - -#if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER) -# pragma GCC system_header -#endif - -_LIBCPP_PUSH_MACROS -#include <__undef_macros> - -_LIBCPP_BEGIN_NAMESPACE_STD - -#if _LIBCPP_STD_VER >= 20 - -namespace ranges { -template -class drop_view : public view_interface> { - // We cache begin() whenever ranges::next is not guaranteed O(1) to provide an - // amortized O(1) begin() method. If this is an input_range, then we cannot cache - // begin because begin is not equality preserving. - // Note: drop_view::begin() is still trivially amortized O(1) because - // one can't call begin() on it more than once. - static constexpr bool _UseCache = forward_range<_View> && !(random_access_range<_View> && sized_range<_View>); - using _Cache = _If<_UseCache, __non_propagating_cache>, __empty_cache>; - _LIBCPP_NO_UNIQUE_ADDRESS _Cache __cached_begin_ = _Cache(); - range_difference_t<_View> __count_ = 0; - _View __base_ = _View(); - -public: - _LIBCPP_HIDE_FROM_ABI drop_view() - requires default_initializable<_View> - = default; - - _LIBCPP_HIDE_FROM_ABI constexpr _LIBCPP_EXPLICIT_SINCE_CXX23 - drop_view(_View __base, range_difference_t<_View> __count) - : __count_(__count), __base_(std::move(__base)) { - _LIBCPP_ASSERT_UNCATEGORIZED(__count_ >= 0, "count must be greater than or equal to zero."); - } - - _LIBCPP_HIDE_FROM_ABI constexpr _View base() const& - requires copy_constructible<_View> - { - return __base_; - } - _LIBCPP_HIDE_FROM_ABI constexpr _View base() && { return std::move(__base_); } - - _LIBCPP_HIDE_FROM_ABI constexpr auto begin() - requires(!(__simple_view<_View> && random_access_range && sized_range)) - { - if constexpr (random_access_range<_View> && sized_range<_View>) { - const auto __dist = std::min(ranges::distance(__base_), __count_); - return ranges::begin(__base_) + __dist; - } - if constexpr (_UseCache) - if (__cached_begin_.__has_value()) - return *__cached_begin_; - - auto __tmp = ranges::next(ranges::begin(__base_), __count_, ranges::end(__base_)); - if constexpr (_UseCache) - __cached_begin_.__emplace(__tmp); - return __tmp; - } - - _LIBCPP_HIDE_FROM_ABI constexpr auto begin() const - requires random_access_range && sized_range - { - const auto __dist = std::min(ranges::distance(__base_), __count_); - return ranges::begin(__base_) + __dist; - } - - _LIBCPP_HIDE_FROM_ABI constexpr auto end() - requires(!__simple_view<_View>) - { - return ranges::end(__base_); - } - - _LIBCPP_HIDE_FROM_ABI constexpr auto end() const - requires range - { - return ranges::end(__base_); - } - - _LIBCPP_HIDE_FROM_ABI static constexpr auto __size(auto& __self) { - const auto __s = ranges::size(__self.__base_); - const auto __c = static_cast(__self.__count_); - return __s < __c ? 0 : __s - __c; - } - - _LIBCPP_HIDE_FROM_ABI constexpr auto size() - requires sized_range<_View> - { - return __size(*this); - } - - _LIBCPP_HIDE_FROM_ABI constexpr auto size() const - requires sized_range - { - return __size(*this); - } -}; - -template -drop_view(_Range&&, range_difference_t<_Range>) -> drop_view>; - -template -inline constexpr bool enable_borrowed_range> = enable_borrowed_range<_Tp>; - -namespace views { -namespace __drop { - -template -inline constexpr bool __is_empty_view = false; - -template -inline constexpr bool __is_empty_view> = true; - -template -inline constexpr bool __is_passthrough_specialization = false; - -template -inline constexpr bool __is_passthrough_specialization> = true; - -template -inline constexpr bool __is_passthrough_specialization> = true; - -template -inline constexpr bool __is_passthrough_specialization> = true; - -template -inline constexpr bool __is_passthrough_specialization> = - !subrange<_Iter, _Sent, _Kind>::_StoreSize; - -template -inline constexpr bool __is_subrange_specialization_with_store_size = false; - -template -inline constexpr bool __is_subrange_specialization_with_store_size> = - subrange<_Iter, _Sent, _Kind>::_StoreSize; - -template -struct __passthrough_type; - -template -struct __passthrough_type> { - using type = span<_Tp>; -}; - -template -struct __passthrough_type> { - using type = basic_string_view<_CharT, _Traits>; -}; - -template -struct __passthrough_type> { - using type = iota_view<_Np, _Bound>; -}; - -template -struct __passthrough_type> { - using type = subrange<_Iter, _Sent, _Kind>; -}; - -template -using __passthrough_type_t = typename __passthrough_type<_Tp>::type; - -struct __fn { - // [range.drop.overview]: the `empty_view` case. - template > _Np> - requires __is_empty_view> - [[nodiscard]] _LIBCPP_HIDE_FROM_ABI constexpr auto operator()(_Range&& __range, _Np&&) const - noexcept(noexcept(_LIBCPP_AUTO_CAST(std::forward<_Range>(__range)))) - -> decltype(_LIBCPP_AUTO_CAST(std::forward<_Range>(__range))) { - return _LIBCPP_AUTO_CAST(std::forward<_Range>(__range)); - } - - // [range.drop.overview]: the `span | basic_string_view | iota_view | subrange (StoreSize == false)` case. - template > _Np, - class _RawRange = remove_cvref_t<_Range>, - class _Dist = range_difference_t<_Range>> - requires(!__is_empty_view<_RawRange> && random_access_range<_RawRange> && sized_range<_RawRange> && - __is_passthrough_specialization<_RawRange>) - [[nodiscard]] _LIBCPP_HIDE_FROM_ABI constexpr auto operator()(_Range&& __rng, _Np&& __n) const - noexcept(noexcept(__passthrough_type_t<_RawRange>( - ranges::begin(__rng) + std::min<_Dist>(ranges::distance(__rng), std::forward<_Np>(__n)), ranges::end(__rng)))) - -> decltype(__passthrough_type_t<_RawRange>( - // Note: deliberately not forwarding `__rng` to guard against double moves. - ranges::begin(__rng) + std::min<_Dist>(ranges::distance(__rng), std::forward<_Np>(__n)), - ranges::end(__rng))) { - return __passthrough_type_t<_RawRange>( - ranges::begin(__rng) + std::min<_Dist>(ranges::distance(__rng), std::forward<_Np>(__n)), ranges::end(__rng)); - } - - // [range.drop.overview]: the `subrange (StoreSize == true)` case. - template > _Np, - class _RawRange = remove_cvref_t<_Range>, - class _Dist = range_difference_t<_Range>> - requires(!__is_empty_view<_RawRange> && random_access_range<_RawRange> && sized_range<_RawRange> && - __is_subrange_specialization_with_store_size<_RawRange>) - [[nodiscard]] _LIBCPP_HIDE_FROM_ABI constexpr auto operator()(_Range&& __rng, _Np&& __n) const noexcept(noexcept( - _RawRange(ranges::begin(__rng) + std::min<_Dist>(ranges::distance(__rng), std::forward<_Np>(__n)), - ranges::end(__rng), - std::__to_unsigned_like(ranges::distance(__rng) - - std::min<_Dist>(ranges::distance(__rng), std::forward<_Np>(__n)))))) - -> decltype(_RawRange( - // Note: deliberately not forwarding `__rng` to guard against double moves. - ranges::begin(__rng) + std::min<_Dist>(ranges::distance(__rng), std::forward<_Np>(__n)), - ranges::end(__rng), - std::__to_unsigned_like(ranges::distance(__rng) - - std::min<_Dist>(ranges::distance(__rng), std::forward<_Np>(__n))))) { - // Introducing local variables avoids calculating `min` and `distance` twice (at the cost of diverging from the - // expression used in the `noexcept` clause and the return statement). - auto __dist = ranges::distance(__rng); - auto __clamped = std::min<_Dist>(__dist, std::forward<_Np>(__n)); - return _RawRange(ranges::begin(__rng) + __clamped, ranges::end(__rng), std::__to_unsigned_like(__dist - __clamped)); - } - // clang-format off -#if _LIBCPP_STD_VER >= 23 - // [range.drop.overview]: the `repeat_view` "_RawRange models sized_range" case. - template > _Np, - class _RawRange = remove_cvref_t<_Range>, - class _Dist = range_difference_t<_Range>> - requires (__is_repeat_specialization<_RawRange> && sized_range<_RawRange>) - _LIBCPP_NODISCARD_EXT _LIBCPP_HIDE_FROM_ABI constexpr auto operator()(_Range&& __range, _Np&& __n) const - noexcept(noexcept(views::repeat(*__range.__value_, ranges::distance(__range) - std::min<_Dist>(ranges::distance(__range), std::forward<_Np>(__n))))) - -> decltype( views::repeat(*__range.__value_, ranges::distance(__range) - std::min<_Dist>(ranges::distance(__range), std::forward<_Np>(__n)))) - { return views::repeat(*__range.__value_, ranges::distance(__range) - std::min<_Dist>(ranges::distance(__range), std::forward<_Np>(__n))); } - - // [range.drop.overview]: the `repeat_view` "otherwise" case. - template > _Np, - class _RawRange = remove_cvref_t<_Range>, - class _Dist = range_difference_t<_Range>> - requires (__is_repeat_specialization<_RawRange> && !sized_range<_RawRange>) - _LIBCPP_NODISCARD_EXT _LIBCPP_HIDE_FROM_ABI - constexpr auto operator()(_Range&& __range, _Np&&) const - noexcept(noexcept(_LIBCPP_AUTO_CAST(std::forward<_Range>(__range)))) - -> decltype( _LIBCPP_AUTO_CAST(std::forward<_Range>(__range))) - { return _LIBCPP_AUTO_CAST(std::forward<_Range>(__range)); } -#endif - // clang-format on - - // [range.drop.overview]: the "otherwise" case. - template > _Np, class _RawRange = remove_cvref_t<_Range>> - // Note: without specifically excluding the other cases, GCC sees this overload as ambiguous with the other - // overloads. - requires( - !(__is_empty_view<_RawRange> || -# if _LIBCPP_STD_VER >= 23 - __is_repeat_specialization<_RawRange> || -# endif - (__is_subrange_specialization_with_store_size<_RawRange> && sized_range<_RawRange> && - random_access_range<_RawRange>) || - (__is_passthrough_specialization<_RawRange> && sized_range<_RawRange> && random_access_range<_RawRange>))) - [[nodiscard]] _LIBCPP_HIDE_FROM_ABI constexpr auto operator()(_Range&& __range, _Np&& __n) const - noexcept(noexcept(drop_view(std::forward<_Range>(__range), std::forward<_Np>(__n)))) - -> decltype(drop_view(std::forward<_Range>(__range), std::forward<_Np>(__n))) { - return drop_view(std::forward<_Range>(__range), std::forward<_Np>(__n)); - } - - template - requires constructible_from, _Np> - [[nodiscard]] _LIBCPP_HIDE_FROM_ABI constexpr auto operator()(_Np&& __n) const - noexcept(is_nothrow_constructible_v, _Np>) { - return __range_adaptor_closure_t(std::__bind_back(*this, std::forward<_Np>(__n))); - } -}; - -} // namespace __drop - -inline namespace __cpo { -inline constexpr auto drop = __drop::__fn{}; -} // namespace __cpo -} // namespace views - -} // namespace ranges - -#endif // _LIBCPP_STD_VER >= 20 - -_LIBCPP_END_NAMESPACE_STD - -_LIBCPP_POP_MACROS - -#endif // _LIBCPP___RANGES_DROP_VIEW_H diff --git a/contrib/libs/cxxsupp/libcxx/include/__ranges/drop_while_view.h b/contrib/libs/cxxsupp/libcxx/include/__ranges/drop_while_view.h deleted file mode 100644 index 92f48bd0e..000000000 --- a/contrib/libs/cxxsupp/libcxx/include/__ranges/drop_while_view.h +++ /dev/null @@ -1,136 +0,0 @@ -// -*- C++ -*- -//===----------------------------------------------------------------------===// -// -// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. -// See https://llvm.org/LICENSE.txt for license information. -// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception -// -//===----------------------------------------------------------------------===// - -#ifndef _LIBCPP___RANGES_DROP_WHILE_VIEW_H -#define _LIBCPP___RANGES_DROP_WHILE_VIEW_H - -#include <__algorithm/ranges_find_if_not.h> -#include <__assert> -#include <__concepts/constructible.h> -#include <__config> -#include <__functional/bind_back.h> -#include <__functional/reference_wrapper.h> -#include <__iterator/concepts.h> -#include <__ranges/access.h> -#include <__ranges/all.h> -#include <__ranges/concepts.h> -#include <__ranges/enable_borrowed_range.h> -#include <__ranges/movable_box.h> -#include <__ranges/non_propagating_cache.h> -#include <__ranges/range_adaptor.h> -#include <__ranges/view_interface.h> -#include <__type_traits/conditional.h> -#include <__type_traits/decay.h> -#include <__type_traits/is_nothrow_constructible.h> -#include <__type_traits/is_object.h> -#include <__utility/forward.h> -#include <__utility/in_place.h> -#include <__utility/move.h> - -#if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER) -# pragma GCC system_header -#endif - -_LIBCPP_PUSH_MACROS -#include <__undef_macros> - -_LIBCPP_BEGIN_NAMESPACE_STD - -#if _LIBCPP_STD_VER >= 20 - -namespace ranges { - -template - requires input_range<_View> && is_object_v<_Pred> && indirect_unary_predicate> -class _LIBCPP_ABI_LLVM18_NO_UNIQUE_ADDRESS drop_while_view : public view_interface> { -public: - _LIBCPP_HIDE_FROM_ABI drop_while_view() - requires default_initializable<_View> && default_initializable<_Pred> - = default; - - _LIBCPP_HIDE_FROM_ABI constexpr _LIBCPP_EXPLICIT_SINCE_CXX23 drop_while_view(_View __base, _Pred __pred) - : __base_(std::move(__base)), __pred_(std::in_place, std::move(__pred)) {} - - _LIBCPP_HIDE_FROM_ABI constexpr _View base() const& - requires copy_constructible<_View> - { - return __base_; - } - - _LIBCPP_HIDE_FROM_ABI constexpr _View base() && { return std::move(__base_); } - - _LIBCPP_HIDE_FROM_ABI constexpr const _Pred& pred() const { return *__pred_; } - - _LIBCPP_HIDE_FROM_ABI constexpr auto begin() { - // Note: this duplicates a check in `optional` but provides a better error message. - _LIBCPP_ASSERT_VALID_ELEMENT_ACCESS( - __pred_.__has_value(), - "drop_while_view needs to have a non-empty predicate before calling begin() -- did a previous " - "assignment to this drop_while_view fail?"); - if constexpr (_UseCache) { - if (!__cached_begin_.__has_value()) { - __cached_begin_.__emplace(ranges::find_if_not(__base_, std::cref(*__pred_))); - } - return *__cached_begin_; - } else { - return ranges::find_if_not(__base_, std::cref(*__pred_)); - } - } - - _LIBCPP_HIDE_FROM_ABI constexpr auto end() { return ranges::end(__base_); } - -private: - _LIBCPP_NO_UNIQUE_ADDRESS _View __base_ = _View(); - _LIBCPP_NO_UNIQUE_ADDRESS __movable_box<_Pred> __pred_; - - static constexpr bool _UseCache = forward_range<_View>; - using _Cache = _If<_UseCache, __non_propagating_cache>, __empty_cache>; - _LIBCPP_NO_UNIQUE_ADDRESS _Cache __cached_begin_ = _Cache(); -}; - -template -inline constexpr bool enable_borrowed_range> = enable_borrowed_range<_View>; - -template -drop_while_view(_Range&&, _Pred) -> drop_while_view, _Pred>; - -namespace views { -namespace __drop_while { - -struct __fn { - template - [[nodiscard]] _LIBCPP_HIDE_FROM_ABI constexpr auto operator()(_Range&& __range, _Pred&& __pred) const - noexcept(noexcept(/**/ drop_while_view(std::forward<_Range>(__range), std::forward<_Pred>(__pred)))) - -> decltype(/*--*/ drop_while_view(std::forward<_Range>(__range), std::forward<_Pred>(__pred))) { - return /*-------------*/ drop_while_view(std::forward<_Range>(__range), std::forward<_Pred>(__pred)); - } - - template - requires constructible_from, _Pred> - [[nodiscard]] _LIBCPP_HIDE_FROM_ABI constexpr auto operator()(_Pred&& __pred) const - noexcept(is_nothrow_constructible_v, _Pred>) { - return __range_adaptor_closure_t(std::__bind_back(*this, std::forward<_Pred>(__pred))); - } -}; - -} // namespace __drop_while - -inline namespace __cpo { -inline constexpr auto drop_while = __drop_while::__fn{}; -} // namespace __cpo -} // namespace views -} // namespace ranges - -#endif // _LIBCPP_STD_VER >= 20 - -_LIBCPP_END_NAMESPACE_STD - -_LIBCPP_POP_MACROS - -#endif // _LIBCPP___RANGES_DROP_WHILE_VIEW_H diff --git a/contrib/libs/cxxsupp/libcxx/include/__ranges/elements_view.h b/contrib/libs/cxxsupp/libcxx/include/__ranges/elements_view.h deleted file mode 100644 index f159f53dc..000000000 --- a/contrib/libs/cxxsupp/libcxx/include/__ranges/elements_view.h +++ /dev/null @@ -1,418 +0,0 @@ -// -*- C++ -*- -//===----------------------------------------------------------------------===// -// -// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. -// See https://llvm.org/LICENSE.txt for license information. -// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception -// -//===----------------------------------------------------------------------===// - -#ifndef _LIBCPP___RANGES_ELEMENTS_VIEW_H -#define _LIBCPP___RANGES_ELEMENTS_VIEW_H - -#include <__compare/three_way_comparable.h> -#include <__concepts/constructible.h> -#include <__concepts/convertible_to.h> -#include <__concepts/derived_from.h> -#include <__concepts/equality_comparable.h> -#include <__config> -#include <__fwd/complex.h> -#include <__iterator/concepts.h> -#include <__iterator/iterator_traits.h> -#include <__ranges/access.h> -#include <__ranges/all.h> -#include <__ranges/concepts.h> -#include <__ranges/enable_borrowed_range.h> -#include <__ranges/range_adaptor.h> -#include <__ranges/size.h> -#include <__ranges/view_interface.h> -#include <__tuple/tuple_element.h> -#include <__tuple/tuple_like.h> -#include <__tuple/tuple_size.h> -#include <__type_traits/is_reference.h> -#include <__type_traits/maybe_const.h> -#include <__type_traits/remove_cv.h> -#include <__type_traits/remove_cvref.h> -#include <__type_traits/remove_reference.h> -#include <__utility/declval.h> -#include <__utility/forward.h> -#include <__utility/move.h> -#include - -#if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER) -# pragma GCC system_header -#endif - -_LIBCPP_PUSH_MACROS -#include <__undef_macros> - -_LIBCPP_BEGIN_NAMESPACE_STD - -#if _LIBCPP_STD_VER >= 20 - -namespace ranges { - -template -concept __has_tuple_element = __tuple_like<_Tp> && _Np < tuple_size<_Tp>::value; - -template -concept __returnable_element = is_reference_v<_Tp> || move_constructible>; - -template - requires view<_View> && __has_tuple_element, _Np> && - __has_tuple_element>, _Np> && - __returnable_element, _Np> -class elements_view : public view_interface> { -private: - template - class __iterator; - - template - class __sentinel; - -public: - _LIBCPP_HIDE_FROM_ABI elements_view() - requires default_initializable<_View> - = default; - - _LIBCPP_HIDE_FROM_ABI constexpr explicit elements_view(_View __base) : __base_(std::move(__base)) {} - - _LIBCPP_HIDE_FROM_ABI constexpr _View base() const& - requires copy_constructible<_View> - { - return __base_; - } - - _LIBCPP_HIDE_FROM_ABI constexpr _View base() && { return std::move(__base_); } - - _LIBCPP_HIDE_FROM_ABI constexpr auto begin() - requires(!__simple_view<_View>) - { - return __iterator(ranges::begin(__base_)); - } - - _LIBCPP_HIDE_FROM_ABI constexpr auto begin() const - requires range - { - return __iterator(ranges::begin(__base_)); - } - - _LIBCPP_HIDE_FROM_ABI constexpr auto end() - requires(!__simple_view<_View> && !common_range<_View>) - { - return __sentinel{ranges::end(__base_)}; - } - - _LIBCPP_HIDE_FROM_ABI constexpr auto end() - requires(!__simple_view<_View> && common_range<_View>) - { - return __iterator{ranges::end(__base_)}; - } - - _LIBCPP_HIDE_FROM_ABI constexpr auto end() const - requires range - { - return __sentinel{ranges::end(__base_)}; - } - - _LIBCPP_HIDE_FROM_ABI constexpr auto end() const - requires common_range - { - return __iterator{ranges::end(__base_)}; - } - - _LIBCPP_HIDE_FROM_ABI constexpr auto size() - requires sized_range<_View> - { - return ranges::size(__base_); - } - - _LIBCPP_HIDE_FROM_ABI constexpr auto size() const - requires sized_range - { - return ranges::size(__base_); - } - -private: - _LIBCPP_NO_UNIQUE_ADDRESS _View __base_ = _View(); -}; - -template -struct __elements_view_iterator_category_base {}; - -template -struct __elements_view_iterator_category_base<_Base, _Np> { - static consteval auto __get_iterator_category() { - using _Result = decltype(std::get<_Np>(*std::declval>())); - using _Cat = typename iterator_traits>::iterator_category; - - if constexpr (!is_lvalue_reference_v<_Result>) { - return input_iterator_tag{}; - } else if constexpr (derived_from<_Cat, random_access_iterator_tag>) { - return random_access_iterator_tag{}; - } else { - return _Cat{}; - } - } - - using iterator_category = decltype(__get_iterator_category()); -}; - -template - requires view<_View> && __has_tuple_element, _Np> && - __has_tuple_element>, _Np> && - __returnable_element, _Np> -template -class elements_view<_View, _Np>::__iterator - : public __elements_view_iterator_category_base<__maybe_const<_Const, _View>, _Np> { - template - friend class __iterator; - - template - friend class __sentinel; - - using _Base = __maybe_const<_Const, _View>; - - iterator_t<_Base> __current_ = iterator_t<_Base>(); - - _LIBCPP_HIDE_FROM_ABI static constexpr decltype(auto) __get_element(const iterator_t<_Base>& __i) { - if constexpr (is_reference_v>) { - return std::get<_Np>(*__i); - } else { - using _Element = remove_cv_t>>; - return static_cast<_Element>(std::get<_Np>(*__i)); - } - } - - static consteval auto __get_iterator_concept() { - if constexpr (random_access_range<_Base>) { - return random_access_iterator_tag{}; - } else if constexpr (bidirectional_range<_Base>) { - return bidirectional_iterator_tag{}; - } else if constexpr (forward_range<_Base>) { - return forward_iterator_tag{}; - } else { - return input_iterator_tag{}; - } - } - -public: - using iterator_concept = decltype(__get_iterator_concept()); - using value_type = remove_cvref_t>>; - using difference_type = range_difference_t<_Base>; - - _LIBCPP_HIDE_FROM_ABI __iterator() - requires default_initializable> - = default; - - _LIBCPP_HIDE_FROM_ABI constexpr explicit __iterator(iterator_t<_Base> __current) : __current_(std::move(__current)) {} - - _LIBCPP_HIDE_FROM_ABI constexpr __iterator(__iterator __i) - requires _Const && convertible_to, iterator_t<_Base>> - : __current_(std::move(__i.__current_)) {} - - _LIBCPP_HIDE_FROM_ABI constexpr const iterator_t<_Base>& base() const& noexcept { return __current_; } - - _LIBCPP_HIDE_FROM_ABI constexpr iterator_t<_Base> base() && { return std::move(__current_); } - - _LIBCPP_HIDE_FROM_ABI constexpr decltype(auto) operator*() const { return __get_element(__current_); } - - _LIBCPP_HIDE_FROM_ABI constexpr __iterator& operator++() { - ++__current_; - return *this; - } - - _LIBCPP_HIDE_FROM_ABI constexpr void operator++(int) { ++__current_; } - - _LIBCPP_HIDE_FROM_ABI constexpr __iterator operator++(int) - requires forward_range<_Base> - { - auto __temp = *this; - ++__current_; - return __temp; - } - - _LIBCPP_HIDE_FROM_ABI constexpr __iterator& operator--() - requires bidirectional_range<_Base> - { - --__current_; - return *this; - } - - _LIBCPP_HIDE_FROM_ABI constexpr __iterator operator--(int) - requires bidirectional_range<_Base> - { - auto __temp = *this; - --__current_; - return __temp; - } - - _LIBCPP_HIDE_FROM_ABI constexpr __iterator& operator+=(difference_type __n) - requires random_access_range<_Base> - { - __current_ += __n; - return *this; - } - - _LIBCPP_HIDE_FROM_ABI constexpr __iterator& operator-=(difference_type __n) - requires random_access_range<_Base> - { - __current_ -= __n; - return *this; - } - - _LIBCPP_HIDE_FROM_ABI constexpr decltype(auto) operator[](difference_type __n) const - requires random_access_range<_Base> - { - return __get_element(__current_ + __n); - } - - _LIBCPP_HIDE_FROM_ABI friend constexpr bool operator==(const __iterator& __x, const __iterator& __y) - requires equality_comparable> - { - return __x.__current_ == __y.__current_; - } - - _LIBCPP_HIDE_FROM_ABI friend constexpr bool operator<(const __iterator& __x, const __iterator& __y) - requires random_access_range<_Base> - { - return __x.__current_ < __y.__current_; - } - - _LIBCPP_HIDE_FROM_ABI friend constexpr bool operator>(const __iterator& __x, const __iterator& __y) - requires random_access_range<_Base> - { - return __y < __x; - } - - _LIBCPP_HIDE_FROM_ABI friend constexpr bool operator<=(const __iterator& __x, const __iterator& __y) - requires random_access_range<_Base> - { - return !(__y < __x); - } - - _LIBCPP_HIDE_FROM_ABI friend constexpr bool operator>=(const __iterator& __x, const __iterator& __y) - requires random_access_range<_Base> - { - return !(__x < __y); - } - - _LIBCPP_HIDE_FROM_ABI friend constexpr auto operator<=>(const __iterator& __x, const __iterator& __y) - requires random_access_range<_Base> && three_way_comparable> - { - return __x.__current_ <=> __y.__current_; - } - - _LIBCPP_HIDE_FROM_ABI friend constexpr __iterator operator+(const __iterator& __x, difference_type __y) - requires random_access_range<_Base> - { - return __iterator{__x} += __y; - } - - _LIBCPP_HIDE_FROM_ABI friend constexpr __iterator operator+(difference_type __x, const __iterator& __y) - requires random_access_range<_Base> - { - return __y + __x; - } - - _LIBCPP_HIDE_FROM_ABI friend constexpr __iterator operator-(const __iterator& __x, difference_type __y) - requires random_access_range<_Base> - { - return __iterator{__x} -= __y; - } - - _LIBCPP_HIDE_FROM_ABI friend constexpr difference_type operator-(const __iterator& __x, const __iterator& __y) - requires sized_sentinel_for, iterator_t<_Base>> - { - return __x.__current_ - __y.__current_; - } -}; - -template - requires view<_View> && __has_tuple_element, _Np> && - __has_tuple_element>, _Np> && - __returnable_element, _Np> -template -class elements_view<_View, _Np>::__sentinel { -private: - using _Base = __maybe_const<_Const, _View>; - _LIBCPP_NO_UNIQUE_ADDRESS sentinel_t<_Base> __end_ = sentinel_t<_Base>(); - - template - friend class __sentinel; - - template - _LIBCPP_HIDE_FROM_ABI static constexpr decltype(auto) __get_current(const __iterator<_AnyConst>& __iter) { - return (__iter.__current_); - } - -public: - _LIBCPP_HIDE_FROM_ABI __sentinel() = default; - - _LIBCPP_HIDE_FROM_ABI constexpr explicit __sentinel(sentinel_t<_Base> __end) : __end_(std::move(__end)) {} - - _LIBCPP_HIDE_FROM_ABI constexpr __sentinel(__sentinel __other) - requires _Const && convertible_to, sentinel_t<_Base>> - : __end_(std::move(__other.__end_)) {} - - _LIBCPP_HIDE_FROM_ABI constexpr sentinel_t<_Base> base() const { return __end_; } - - template - requires sentinel_for, iterator_t<__maybe_const<_OtherConst, _View>>> - _LIBCPP_HIDE_FROM_ABI friend constexpr bool operator==(const __iterator<_OtherConst>& __x, const __sentinel& __y) { - return __get_current(__x) == __y.__end_; - } - - template - requires sized_sentinel_for, iterator_t<__maybe_const<_OtherConst, _View>>> - _LIBCPP_HIDE_FROM_ABI friend constexpr range_difference_t<__maybe_const<_OtherConst, _View>> - operator-(const __iterator<_OtherConst>& __x, const __sentinel& __y) { - return __get_current(__x) - __y.__end_; - } - - template - requires sized_sentinel_for, iterator_t<__maybe_const<_OtherConst, _View>>> - _LIBCPP_HIDE_FROM_ABI friend constexpr range_difference_t<__maybe_const<_OtherConst, _View>> - operator-(const __sentinel& __x, const __iterator<_OtherConst>& __y) { - return __x.__end_ - __get_current(__y); - } -}; - -template -inline constexpr bool enable_borrowed_range> = enable_borrowed_range<_Tp>; - -template -using keys_view = elements_view<_Tp, 0>; -template -using values_view = elements_view<_Tp, 1>; - -namespace views { -namespace __elements { - -template -struct __fn : __range_adaptor_closure<__fn<_Np>> { - template - [[nodiscard]] _LIBCPP_HIDE_FROM_ABI constexpr auto operator()(_Range&& __range) const - /**/ noexcept(noexcept(elements_view, _Np>(std::forward<_Range>(__range)))) - /*------*/ -> decltype(elements_view, _Np>(std::forward<_Range>(__range))) { - /*-------------*/ return elements_view, _Np>(std::forward<_Range>(__range)); - } -}; -} // namespace __elements - -inline namespace __cpo { -template -inline constexpr auto elements = __elements::__fn<_Np>{}; -inline constexpr auto keys = elements<0>; -inline constexpr auto values = elements<1>; -} // namespace __cpo -} // namespace views -} // namespace ranges - -#endif // _LIBCPP_STD_VER >= 20 - -_LIBCPP_END_NAMESPACE_STD - -_LIBCPP_POP_MACROS - -#endif // _LIBCPP___RANGES_ELEMENTS_VIEW_H diff --git a/contrib/libs/cxxsupp/libcxx/include/__ranges/empty_view.h b/contrib/libs/cxxsupp/libcxx/include/__ranges/empty_view.h deleted file mode 100644 index 6c04b0200..000000000 --- a/contrib/libs/cxxsupp/libcxx/include/__ranges/empty_view.h +++ /dev/null @@ -1,54 +0,0 @@ -// -*- C++ -*- -//===----------------------------------------------------------------------===// -// -// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. -// See https://llvm.org/LICENSE.txt for license information. -// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception -// -//===----------------------------------------------------------------------===// - -#ifndef _LIBCPP___RANGES_EMPTY_VIEW_H -#define _LIBCPP___RANGES_EMPTY_VIEW_H - -#include <__config> -#include <__ranges/enable_borrowed_range.h> -#include <__ranges/view_interface.h> -#include <__type_traits/is_object.h> -#include - -#if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER) -# pragma GCC system_header -#endif - -_LIBCPP_BEGIN_NAMESPACE_STD - -#if _LIBCPP_STD_VER >= 20 - -namespace ranges { -template - requires is_object_v<_Tp> -class empty_view : public view_interface> { -public: - _LIBCPP_HIDE_FROM_ABI static constexpr _Tp* begin() noexcept { return nullptr; } - _LIBCPP_HIDE_FROM_ABI static constexpr _Tp* end() noexcept { return nullptr; } - _LIBCPP_HIDE_FROM_ABI static constexpr _Tp* data() noexcept { return nullptr; } - _LIBCPP_HIDE_FROM_ABI static constexpr size_t size() noexcept { return 0; } - _LIBCPP_HIDE_FROM_ABI static constexpr bool empty() noexcept { return true; } -}; - -template -inline constexpr bool enable_borrowed_range> = true; - -namespace views { - -template -inline constexpr empty_view<_Tp> empty{}; - -} // namespace views -} // namespace ranges - -#endif // _LIBCPP_STD_VER >= 20 - -_LIBCPP_END_NAMESPACE_STD - -#endif // _LIBCPP___RANGES_EMPTY_VIEW_H diff --git a/contrib/libs/cxxsupp/libcxx/include/__ranges/filter_view.h b/contrib/libs/cxxsupp/libcxx/include/__ranges/filter_view.h deleted file mode 100644 index 5b938dd4c..000000000 --- a/contrib/libs/cxxsupp/libcxx/include/__ranges/filter_view.h +++ /dev/null @@ -1,260 +0,0 @@ -// -*- C++ -*- -//===----------------------------------------------------------------------===// -// -// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. -// See https://llvm.org/LICENSE.txt for license information. -// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception -// -//===----------------------------------------------------------------------===// - -#ifndef _LIBCPP___RANGES_FILTER_VIEW_H -#define _LIBCPP___RANGES_FILTER_VIEW_H - -#include <__algorithm/ranges_find_if.h> -#include <__assert> -#include <__concepts/constructible.h> -#include <__concepts/copyable.h> -#include <__concepts/derived_from.h> -#include <__concepts/equality_comparable.h> -#include <__config> -#include <__functional/bind_back.h> -#include <__functional/invoke.h> -#include <__functional/reference_wrapper.h> -#include <__iterator/concepts.h> -#include <__iterator/iter_move.h> -#include <__iterator/iter_swap.h> -#include <__iterator/iterator_traits.h> -#include <__memory/addressof.h> -#include <__ranges/access.h> -#include <__ranges/all.h> -#include <__ranges/concepts.h> -#include <__ranges/movable_box.h> -#include <__ranges/non_propagating_cache.h> -#include <__ranges/range_adaptor.h> -#include <__ranges/view_interface.h> -#include <__type_traits/conditional.h> -#include <__type_traits/decay.h> -#include <__type_traits/is_nothrow_constructible.h> -#include <__type_traits/is_object.h> -#include <__utility/forward.h> -#include <__utility/in_place.h> -#include <__utility/move.h> - -#if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER) -# pragma GCC system_header -#endif - -_LIBCPP_PUSH_MACROS -#include <__undef_macros> - -_LIBCPP_BEGIN_NAMESPACE_STD - -#if _LIBCPP_STD_VER >= 20 - -namespace ranges { -template > _Pred> - requires view<_View> && is_object_v<_Pred> -class _LIBCPP_ABI_LLVM18_NO_UNIQUE_ADDRESS filter_view : public view_interface> { - _LIBCPP_NO_UNIQUE_ADDRESS _View __base_ = _View(); - _LIBCPP_NO_UNIQUE_ADDRESS __movable_box<_Pred> __pred_; - - // We cache the result of begin() to allow providing an amortized O(1) begin() whenever - // the underlying range is at least a forward_range. - static constexpr bool _UseCache = forward_range<_View>; - using _Cache = _If<_UseCache, __non_propagating_cache>, __empty_cache>; - _LIBCPP_NO_UNIQUE_ADDRESS _Cache __cached_begin_ = _Cache(); - - class __iterator; - class __sentinel; - -public: - _LIBCPP_HIDE_FROM_ABI filter_view() - requires default_initializable<_View> && default_initializable<_Pred> - = default; - - _LIBCPP_HIDE_FROM_ABI constexpr _LIBCPP_EXPLICIT_SINCE_CXX23 filter_view(_View __base, _Pred __pred) - : __base_(std::move(__base)), __pred_(in_place, std::move(__pred)) {} - - template - _LIBCPP_HIDE_FROM_ABI constexpr _View base() const& - requires copy_constructible<_Vp> - { - return __base_; - } - _LIBCPP_HIDE_FROM_ABI constexpr _View base() && { return std::move(__base_); } - - _LIBCPP_HIDE_FROM_ABI constexpr _Pred const& pred() const { return *__pred_; } - - _LIBCPP_HIDE_FROM_ABI constexpr __iterator begin() { - // Note: this duplicates a check in `optional` but provides a better error message. - _LIBCPP_ASSERT_VALID_ELEMENT_ACCESS( - __pred_.__has_value(), "Trying to call begin() on a filter_view that does not have a valid predicate."); - if constexpr (_UseCache) { - if (!__cached_begin_.__has_value()) { - __cached_begin_.__emplace(ranges::find_if(__base_, std::ref(*__pred_))); - } - return {*this, *__cached_begin_}; - } else { - return {*this, ranges::find_if(__base_, std::ref(*__pred_))}; - } - } - - _LIBCPP_HIDE_FROM_ABI constexpr auto end() { - if constexpr (common_range<_View>) - return __iterator{*this, ranges::end(__base_)}; - else - return __sentinel{*this}; - } -}; - -template -filter_view(_Range&&, _Pred) -> filter_view, _Pred>; - -template -struct __filter_iterator_category {}; - -template -struct __filter_iterator_category<_View> { - using _Cat = typename iterator_traits>::iterator_category; - using iterator_category = - _If, - bidirectional_iterator_tag, - _If, - forward_iterator_tag, - /* else */ _Cat >>; -}; - -template > _Pred> - requires view<_View> && is_object_v<_Pred> -class filter_view<_View, _Pred>::__iterator : public __filter_iterator_category<_View> { -public: - _LIBCPP_NO_UNIQUE_ADDRESS iterator_t<_View> __current_ = iterator_t<_View>(); - _LIBCPP_NO_UNIQUE_ADDRESS filter_view* __parent_ = nullptr; - - using iterator_concept = - _If, - bidirectional_iterator_tag, - _If, - forward_iterator_tag, - /* else */ input_iterator_tag >>; - // using iterator_category = inherited; - using value_type = range_value_t<_View>; - using difference_type = range_difference_t<_View>; - - _LIBCPP_HIDE_FROM_ABI __iterator() - requires default_initializable> - = default; - - _LIBCPP_HIDE_FROM_ABI constexpr __iterator(filter_view& __parent, iterator_t<_View> __current) - : __current_(std::move(__current)), __parent_(std::addressof(__parent)) {} - - _LIBCPP_HIDE_FROM_ABI constexpr iterator_t<_View> const& base() const& noexcept { return __current_; } - _LIBCPP_HIDE_FROM_ABI constexpr iterator_t<_View> base() && { return std::move(__current_); } - - _LIBCPP_HIDE_FROM_ABI constexpr range_reference_t<_View> operator*() const { return *__current_; } - _LIBCPP_HIDE_FROM_ABI constexpr iterator_t<_View> operator->() const - requires __has_arrow> && copyable> - { - return __current_; - } - - _LIBCPP_HIDE_FROM_ABI constexpr __iterator& operator++() { - __current_ = - ranges::find_if(std::move(++__current_), ranges::end(__parent_->__base_), std::ref(*__parent_->__pred_)); - return *this; - } - _LIBCPP_HIDE_FROM_ABI constexpr void operator++(int) { ++*this; } - _LIBCPP_HIDE_FROM_ABI constexpr __iterator operator++(int) - requires forward_range<_View> - { - auto __tmp = *this; - ++*this; - return __tmp; - } - - _LIBCPP_HIDE_FROM_ABI constexpr __iterator& operator--() - requires bidirectional_range<_View> - { - do { - --__current_; - } while (!std::invoke(*__parent_->__pred_, *__current_)); - return *this; - } - _LIBCPP_HIDE_FROM_ABI constexpr __iterator operator--(int) - requires bidirectional_range<_View> - { - auto __tmp = *this; - --*this; - return __tmp; - } - - _LIBCPP_HIDE_FROM_ABI friend constexpr bool operator==(__iterator const& __x, __iterator const& __y) - requires equality_comparable> - { - return __x.__current_ == __y.__current_; - } - - _LIBCPP_HIDE_FROM_ABI friend constexpr range_rvalue_reference_t<_View> - iter_move(__iterator const& __it) noexcept(noexcept(ranges::iter_move(__it.__current_))) { - return ranges::iter_move(__it.__current_); - } - - _LIBCPP_HIDE_FROM_ABI friend constexpr void - iter_swap(__iterator const& __x, - __iterator const& __y) noexcept(noexcept(ranges::iter_swap(__x.__current_, __y.__current_))) - requires indirectly_swappable> - { - return ranges::iter_swap(__x.__current_, __y.__current_); - } -}; - -template > _Pred> - requires view<_View> && is_object_v<_Pred> -class filter_view<_View, _Pred>::__sentinel { -public: - sentinel_t<_View> __end_ = sentinel_t<_View>(); - - _LIBCPP_HIDE_FROM_ABI __sentinel() = default; - - _LIBCPP_HIDE_FROM_ABI constexpr explicit __sentinel(filter_view& __parent) : __end_(ranges::end(__parent.__base_)) {} - - _LIBCPP_HIDE_FROM_ABI constexpr sentinel_t<_View> base() const { return __end_; } - - _LIBCPP_HIDE_FROM_ABI friend constexpr bool operator==(__iterator const& __x, __sentinel const& __y) { - return __x.__current_ == __y.__end_; - } -}; - -namespace views { -namespace __filter { -struct __fn { - template - [[nodiscard]] _LIBCPP_HIDE_FROM_ABI constexpr auto operator()(_Range&& __range, _Pred&& __pred) const - noexcept(noexcept(filter_view(std::forward<_Range>(__range), std::forward<_Pred>(__pred)))) - -> decltype(filter_view(std::forward<_Range>(__range), std::forward<_Pred>(__pred))) { - return filter_view(std::forward<_Range>(__range), std::forward<_Pred>(__pred)); - } - - template - requires constructible_from, _Pred> - [[nodiscard]] _LIBCPP_HIDE_FROM_ABI constexpr auto operator()(_Pred&& __pred) const - noexcept(is_nothrow_constructible_v, _Pred>) { - return __range_adaptor_closure_t(std::__bind_back(*this, std::forward<_Pred>(__pred))); - } -}; -} // namespace __filter - -inline namespace __cpo { -inline constexpr auto filter = __filter::__fn{}; -} // namespace __cpo -} // namespace views - -} // namespace ranges - -#endif // _LIBCPP_STD_VER >= 20 - -_LIBCPP_END_NAMESPACE_STD - -_LIBCPP_POP_MACROS - -#endif // _LIBCPP___RANGES_FILTER_VIEW_H diff --git a/contrib/libs/cxxsupp/libcxx/include/__ranges/iota_view.h b/contrib/libs/cxxsupp/libcxx/include/__ranges/iota_view.h deleted file mode 100644 index 9e6f72424..000000000 --- a/contrib/libs/cxxsupp/libcxx/include/__ranges/iota_view.h +++ /dev/null @@ -1,403 +0,0 @@ -// -*- C++ -*- -//===----------------------------------------------------------------------===// -// -// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. -// See https://llvm.org/LICENSE.txt for license information. -// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception -// -//===----------------------------------------------------------------------===// - -#ifndef _LIBCPP___RANGES_IOTA_VIEW_H -#define _LIBCPP___RANGES_IOTA_VIEW_H - -#include <__assert> -#include <__compare/three_way_comparable.h> -#include <__concepts/arithmetic.h> -#include <__concepts/constructible.h> -#include <__concepts/convertible_to.h> -#include <__concepts/copyable.h> -#include <__concepts/equality_comparable.h> -#include <__concepts/invocable.h> -#include <__concepts/same_as.h> -#include <__concepts/semiregular.h> -#include <__concepts/totally_ordered.h> -#include <__config> -#include <__functional/ranges_operations.h> -#include <__iterator/concepts.h> -#include <__iterator/incrementable_traits.h> -#include <__iterator/iterator_traits.h> -#include <__iterator/unreachable_sentinel.h> -#include <__ranges/enable_borrowed_range.h> -#include <__ranges/movable_box.h> -#include <__ranges/view_interface.h> -#include <__type_traits/conditional.h> -#include <__type_traits/is_nothrow_constructible.h> -#include <__type_traits/make_unsigned.h> -#include <__type_traits/type_identity.h> -#include <__utility/forward.h> -#include <__utility/move.h> - -#if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER) -# pragma GCC system_header -#endif - -_LIBCPP_PUSH_MACROS -#include <__undef_macros> - -_LIBCPP_BEGIN_NAMESPACE_STD - -#if _LIBCPP_STD_VER >= 20 - -namespace ranges { -template -struct __get_wider_signed { - consteval static auto __call() { - if constexpr (sizeof(_Int) < sizeof(short)) - return type_identity{}; - else if constexpr (sizeof(_Int) < sizeof(int)) - return type_identity{}; - else if constexpr (sizeof(_Int) < sizeof(long)) - return type_identity{}; - else - return type_identity{}; - - static_assert( - sizeof(_Int) <= sizeof(long long), "Found integer-like type that is bigger than largest integer like type."); - } - - using type = typename decltype(__call())::type; -}; - -template -using _IotaDiffT = - typename _If< (!integral<_Start> || sizeof(iter_difference_t<_Start>) > sizeof(_Start)), - type_identity>, - __get_wider_signed<_Start> >::type; - -template -concept __decrementable = incrementable<_Iter> && requires(_Iter __i) { - { --__i } -> same_as<_Iter&>; - { __i-- } -> same_as<_Iter>; -}; - -template -concept __advanceable = - __decrementable<_Iter> && totally_ordered<_Iter> && - requires(_Iter __i, const _Iter __j, const _IotaDiffT<_Iter> __n) { - { __i += __n } -> same_as<_Iter&>; - { __i -= __n } -> same_as<_Iter&>; - _Iter(__j + __n); - _Iter(__n + __j); - _Iter(__j - __n); - { __j - __j } -> convertible_to<_IotaDiffT<_Iter>>; - }; - -template -struct __iota_iterator_category {}; - -template -struct __iota_iterator_category<_Tp> { - using iterator_category = input_iterator_tag; -}; - -template - requires __weakly_equality_comparable_with<_Start, _BoundSentinel> && copyable<_Start> -class iota_view : public view_interface> { - struct __iterator : public __iota_iterator_category<_Start> { - friend class iota_view; - - using iterator_concept = - _If<__advanceable<_Start>, - random_access_iterator_tag, - _If<__decrementable<_Start>, - bidirectional_iterator_tag, - _If, - forward_iterator_tag, - /*Else*/ input_iterator_tag>>>; - - using value_type = _Start; - using difference_type = _IotaDiffT<_Start>; - - _Start __value_ = _Start(); - - _LIBCPP_HIDE_FROM_ABI __iterator() - requires default_initializable<_Start> - = default; - - _LIBCPP_HIDE_FROM_ABI constexpr explicit __iterator(_Start __value) : __value_(std::move(__value)) {} - - _LIBCPP_HIDE_FROM_ABI constexpr _Start operator*() const noexcept(is_nothrow_copy_constructible_v<_Start>) { - return __value_; - } - - _LIBCPP_HIDE_FROM_ABI constexpr __iterator& operator++() { - ++__value_; - return *this; - } - - _LIBCPP_HIDE_FROM_ABI constexpr void operator++(int) { ++*this; } - - _LIBCPP_HIDE_FROM_ABI constexpr __iterator operator++(int) - requires incrementable<_Start> - { - auto __tmp = *this; - ++*this; - return __tmp; - } - - _LIBCPP_HIDE_FROM_ABI constexpr __iterator& operator--() - requires __decrementable<_Start> - { - --__value_; - return *this; - } - - _LIBCPP_HIDE_FROM_ABI constexpr __iterator operator--(int) - requires __decrementable<_Start> - { - auto __tmp = *this; - --*this; - return __tmp; - } - - _LIBCPP_HIDE_FROM_ABI constexpr __iterator& operator+=(difference_type __n) - requires __advanceable<_Start> - { - if constexpr (__integer_like<_Start> && !__signed_integer_like<_Start>) { - if (__n >= difference_type(0)) { - __value_ += static_cast<_Start>(__n); - } else { - __value_ -= static_cast<_Start>(-__n); - } - } else { - __value_ += __n; - } - return *this; - } - - _LIBCPP_HIDE_FROM_ABI constexpr __iterator& operator-=(difference_type __n) - requires __advanceable<_Start> - { - if constexpr (__integer_like<_Start> && !__signed_integer_like<_Start>) { - if (__n >= difference_type(0)) { - __value_ -= static_cast<_Start>(__n); - } else { - __value_ += static_cast<_Start>(-__n); - } - } else { - __value_ -= __n; - } - return *this; - } - - _LIBCPP_HIDE_FROM_ABI constexpr _Start operator[](difference_type __n) const - requires __advanceable<_Start> - { - return _Start(__value_ + __n); - } - - _LIBCPP_HIDE_FROM_ABI friend constexpr bool operator==(const __iterator& __x, const __iterator& __y) - requires equality_comparable<_Start> - { - return __x.__value_ == __y.__value_; - } - - _LIBCPP_HIDE_FROM_ABI friend constexpr bool operator<(const __iterator& __x, const __iterator& __y) - requires totally_ordered<_Start> - { - return __x.__value_ < __y.__value_; - } - - _LIBCPP_HIDE_FROM_ABI friend constexpr bool operator>(const __iterator& __x, const __iterator& __y) - requires totally_ordered<_Start> - { - return __y < __x; - } - - _LIBCPP_HIDE_FROM_ABI friend constexpr bool operator<=(const __iterator& __x, const __iterator& __y) - requires totally_ordered<_Start> - { - return !(__y < __x); - } - - _LIBCPP_HIDE_FROM_ABI friend constexpr bool operator>=(const __iterator& __x, const __iterator& __y) - requires totally_ordered<_Start> - { - return !(__x < __y); - } - - _LIBCPP_HIDE_FROM_ABI friend constexpr auto operator<=>(const __iterator& __x, const __iterator& __y) - requires totally_ordered<_Start> && three_way_comparable<_Start> - { - return __x.__value_ <=> __y.__value_; - } - - _LIBCPP_HIDE_FROM_ABI friend constexpr __iterator operator+(__iterator __i, difference_type __n) - requires __advanceable<_Start> - { - __i += __n; - return __i; - } - - _LIBCPP_HIDE_FROM_ABI friend constexpr __iterator operator+(difference_type __n, __iterator __i) - requires __advanceable<_Start> - { - return __i + __n; - } - - _LIBCPP_HIDE_FROM_ABI friend constexpr __iterator operator-(__iterator __i, difference_type __n) - requires __advanceable<_Start> - { - __i -= __n; - return __i; - } - - _LIBCPP_HIDE_FROM_ABI friend constexpr difference_type operator-(const __iterator& __x, const __iterator& __y) - requires __advanceable<_Start> - { - if constexpr (__integer_like<_Start>) { - if constexpr (__signed_integer_like<_Start>) { - return difference_type(difference_type(__x.__value_) - difference_type(__y.__value_)); - } - if (__y.__value_ > __x.__value_) { - return difference_type(-difference_type(__y.__value_ - __x.__value_)); - } - return difference_type(__x.__value_ - __y.__value_); - } - return __x.__value_ - __y.__value_; - } - }; - - struct __sentinel { - friend class iota_view; - - private: - _BoundSentinel __bound_sentinel_ = _BoundSentinel(); - - public: - _LIBCPP_HIDE_FROM_ABI __sentinel() = default; - _LIBCPP_HIDE_FROM_ABI constexpr explicit __sentinel(_BoundSentinel __bound_sentinel) - : __bound_sentinel_(std::move(__bound_sentinel)) {} - - _LIBCPP_HIDE_FROM_ABI friend constexpr bool operator==(const __iterator& __x, const __sentinel& __y) { - return __x.__value_ == __y.__bound_sentinel_; - } - - _LIBCPP_HIDE_FROM_ABI friend constexpr iter_difference_t<_Start> - operator-(const __iterator& __x, const __sentinel& __y) - requires sized_sentinel_for<_BoundSentinel, _Start> - { - return __x.__value_ - __y.__bound_sentinel_; - } - - _LIBCPP_HIDE_FROM_ABI friend constexpr iter_difference_t<_Start> - operator-(const __sentinel& __x, const __iterator& __y) - requires sized_sentinel_for<_BoundSentinel, _Start> - { - return -(__y - __x); - } - }; - - _Start __value_ = _Start(); - _BoundSentinel __bound_sentinel_ = _BoundSentinel(); - -public: - _LIBCPP_HIDE_FROM_ABI iota_view() - requires default_initializable<_Start> - = default; - - _LIBCPP_HIDE_FROM_ABI constexpr explicit iota_view(_Start __value) : __value_(std::move(__value)) {} - - _LIBCPP_HIDE_FROM_ABI constexpr _LIBCPP_EXPLICIT_SINCE_CXX23 - iota_view(type_identity_t<_Start> __value, type_identity_t<_BoundSentinel> __bound_sentinel) - : __value_(std::move(__value)), __bound_sentinel_(std::move(__bound_sentinel)) { - // Validate the precondition if possible. - if constexpr (totally_ordered_with<_Start, _BoundSentinel>) { - _LIBCPP_ASSERT_UNCATEGORIZED( - ranges::less_equal()(__value_, __bound_sentinel_), "Precondition violated: value is greater than bound."); - } - } - - _LIBCPP_HIDE_FROM_ABI constexpr _LIBCPP_EXPLICIT_SINCE_CXX23 iota_view(__iterator __first, __iterator __last) - requires same_as<_Start, _BoundSentinel> - : iota_view(std::move(__first.__value_), std::move(__last.__value_)) {} - - _LIBCPP_HIDE_FROM_ABI constexpr _LIBCPP_EXPLICIT_SINCE_CXX23 iota_view(__iterator __first, _BoundSentinel __last) - requires same_as<_BoundSentinel, unreachable_sentinel_t> - : iota_view(std::move(__first.__value_), std::move(__last)) {} - - _LIBCPP_HIDE_FROM_ABI constexpr _LIBCPP_EXPLICIT_SINCE_CXX23 iota_view(__iterator __first, __sentinel __last) - requires(!same_as<_Start, _BoundSentinel> && !same_as<_BoundSentinel, unreachable_sentinel_t>) - : iota_view(std::move(__first.__value_), std::move(__last.__bound_sentinel_)) {} - - _LIBCPP_HIDE_FROM_ABI constexpr __iterator begin() const { return __iterator{__value_}; } - - _LIBCPP_HIDE_FROM_ABI constexpr auto end() const { - if constexpr (same_as<_BoundSentinel, unreachable_sentinel_t>) - return unreachable_sentinel; - else - return __sentinel{__bound_sentinel_}; - } - - _LIBCPP_HIDE_FROM_ABI constexpr __iterator end() const - requires same_as<_Start, _BoundSentinel> - { - return __iterator{__bound_sentinel_}; - } - - _LIBCPP_HIDE_FROM_ABI constexpr auto size() const - requires(same_as<_Start, _BoundSentinel> && __advanceable<_Start>) || - (integral<_Start> && integral<_BoundSentinel>) || sized_sentinel_for<_BoundSentinel, _Start> - { - if constexpr (__integer_like<_Start> && __integer_like<_BoundSentinel>) { - return (__value_ < 0) - ? ((__bound_sentinel_ < 0) - ? std::__to_unsigned_like(-__value_) - std::__to_unsigned_like(-__bound_sentinel_) - : std::__to_unsigned_like(__bound_sentinel_) + std::__to_unsigned_like(-__value_)) - : std::__to_unsigned_like(__bound_sentinel_) - std::__to_unsigned_like(__value_); - } else { - return std::__to_unsigned_like(__bound_sentinel_ - __value_); - } - } -}; - -template - requires(!__integer_like<_Start> || !__integer_like<_BoundSentinel> || - (__signed_integer_like<_Start> == __signed_integer_like<_BoundSentinel>)) -iota_view(_Start, _BoundSentinel) -> iota_view<_Start, _BoundSentinel>; - -template -inline constexpr bool enable_borrowed_range> = true; - -namespace views { -namespace __iota { -struct __fn { - template - _LIBCPP_HIDE_FROM_ABI constexpr auto operator()(_Start&& __start) const - noexcept(noexcept(ranges::iota_view(std::forward<_Start>(__start)))) - -> decltype(ranges::iota_view(std::forward<_Start>(__start))) { - return ranges::iota_view(std::forward<_Start>(__start)); - } - - template - _LIBCPP_HIDE_FROM_ABI constexpr auto operator()(_Start&& __start, _BoundSentinel&& __bound_sentinel) const noexcept( - noexcept(ranges::iota_view(std::forward<_Start>(__start), std::forward<_BoundSentinel>(__bound_sentinel)))) - -> decltype(ranges::iota_view(std::forward<_Start>(__start), std::forward<_BoundSentinel>(__bound_sentinel))) { - return ranges::iota_view(std::forward<_Start>(__start), std::forward<_BoundSentinel>(__bound_sentinel)); - } -}; -} // namespace __iota - -inline namespace __cpo { -inline constexpr auto iota = __iota::__fn{}; -} // namespace __cpo -} // namespace views -} // namespace ranges - -#endif // _LIBCPP_STD_VER >= 20 - -_LIBCPP_END_NAMESPACE_STD - -_LIBCPP_POP_MACROS - -#endif // _LIBCPP___RANGES_IOTA_VIEW_H diff --git a/contrib/libs/cxxsupp/libcxx/include/__ranges/istream_view.h b/contrib/libs/cxxsupp/libcxx/include/__ranges/istream_view.h deleted file mode 100644 index cd7096d35..000000000 --- a/contrib/libs/cxxsupp/libcxx/include/__ranges/istream_view.h +++ /dev/null @@ -1,141 +0,0 @@ -// -*- C++ -*- -//===----------------------------------------------------------------------===// -// -// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. -// See https://llvm.org/LICENSE.txt for license information. -// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception -// -//===----------------------------------------------------------------------===// - -#ifndef _LIBCPP___RANGES_ISTREAM_VIEW_H -#define _LIBCPP___RANGES_ISTREAM_VIEW_H - -#include <__concepts/constructible.h> -#include <__concepts/derived_from.h> -#include <__concepts/movable.h> -#include <__config> -#include <__fwd/istream.h> -#include <__fwd/string.h> -#include <__iterator/default_sentinel.h> -#include <__iterator/iterator_traits.h> -#include <__memory/addressof.h> -#include <__ranges/view_interface.h> -#include <__type_traits/remove_cvref.h> -#include <__utility/forward.h> -#include - -#if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER) -# pragma GCC system_header -#endif - -#if _LIBCPP_STD_VER >= 20 - -_LIBCPP_BEGIN_NAMESPACE_STD - -namespace ranges { - -template -concept __stream_extractable = requires(basic_istream<_CharT, _Traits>& __is, _Val& __t) { __is >> __t; }; - -template > - requires default_initializable<_Val> && __stream_extractable<_Val, _CharT, _Traits> -class basic_istream_view : public view_interface> { - class __iterator; - -public: - _LIBCPP_HIDE_FROM_ABI constexpr explicit basic_istream_view(basic_istream<_CharT, _Traits>& __stream) - : __stream_(std::addressof(__stream)) {} - - _LIBCPP_HIDE_FROM_ABI constexpr auto begin() { - *__stream_ >> __value_; - return __iterator{*this}; - } - - _LIBCPP_HIDE_FROM_ABI constexpr default_sentinel_t end() const noexcept { return default_sentinel; } - -private: - basic_istream<_CharT, _Traits>* __stream_; - _LIBCPP_NO_UNIQUE_ADDRESS _Val __value_ = _Val(); -}; - -template - requires default_initializable<_Val> && __stream_extractable<_Val, _CharT, _Traits> -class basic_istream_view<_Val, _CharT, _Traits>::__iterator { -public: - using iterator_concept = input_iterator_tag; - using difference_type = ptrdiff_t; - using value_type = _Val; - - _LIBCPP_HIDE_FROM_ABI constexpr explicit __iterator(basic_istream_view<_Val, _CharT, _Traits>& __parent) noexcept - : __parent_(std::addressof(__parent)) {} - - __iterator(const __iterator&) = delete; - _LIBCPP_HIDE_FROM_ABI __iterator(__iterator&&) = default; - - __iterator& operator=(const __iterator&) = delete; - _LIBCPP_HIDE_FROM_ABI __iterator& operator=(__iterator&&) = default; - - _LIBCPP_HIDE_FROM_ABI __iterator& operator++() { - *__parent_->__stream_ >> __parent_->__value_; - return *this; - } - - _LIBCPP_HIDE_FROM_ABI void operator++(int) { ++*this; } - - _LIBCPP_HIDE_FROM_ABI _Val& operator*() const { return __parent_->__value_; } - - _LIBCPP_HIDE_FROM_ABI friend bool operator==(const __iterator& __x, default_sentinel_t) { - return !*__x.__get_parent_stream(); - } - -private: - basic_istream_view<_Val, _CharT, _Traits>* __parent_; - - _LIBCPP_HIDE_FROM_ABI constexpr basic_istream<_CharT, _Traits>* __get_parent_stream() const { - return __parent_->__stream_; - } -}; - -template -using istream_view = basic_istream_view<_Val, char>; - -# ifndef _LIBCPP_HAS_NO_WIDE_CHARACTERS -template -using wistream_view = basic_istream_view<_Val, wchar_t>; -# endif - -namespace views { -namespace __istream { - -// clang-format off -template -struct __fn { - template > - requires derived_from<_UnCVRef, basic_istream> - _LIBCPP_HIDE_FROM_ABI constexpr auto operator()(_Up&& __u) const - noexcept(noexcept(basic_istream_view<_Tp, typename _UnCVRef::char_type, - typename _UnCVRef::traits_type>(std::forward<_Up>(__u)))) - -> decltype( basic_istream_view<_Tp, typename _UnCVRef::char_type, - typename _UnCVRef::traits_type>(std::forward<_Up>(__u))) - { return basic_istream_view<_Tp, typename _UnCVRef::char_type, - typename _UnCVRef::traits_type>(std::forward<_Up>(__u)); - } -}; -// clang-format on - -} // namespace __istream - -inline namespace __cpo { -template -inline constexpr auto istream = __istream::__fn<_Tp>{}; -} // namespace __cpo -} // namespace views - -} // namespace ranges - -_LIBCPP_END_NAMESPACE_STD - -#endif // _LIBCPP_STD_VER >= 20 - -#endif // _LIBCPP___RANGES_ISTREAM_VIEW_H diff --git a/contrib/libs/cxxsupp/libcxx/include/__ranges/join_view.h b/contrib/libs/cxxsupp/libcxx/include/__ranges/join_view.h deleted file mode 100644 index 9c2c77995..000000000 --- a/contrib/libs/cxxsupp/libcxx/include/__ranges/join_view.h +++ /dev/null @@ -1,423 +0,0 @@ -// -*- C++ -*- -//===----------------------------------------------------------------------===// -// -// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. -// See https://llvm.org/LICENSE.txt for license information. -// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception -// -//===----------------------------------------------------------------------===// - -#ifndef _LIBCPP___RANGES_JOIN_VIEW_H -#define _LIBCPP___RANGES_JOIN_VIEW_H - -#include <__concepts/constructible.h> -#include <__concepts/convertible_to.h> -#include <__concepts/copyable.h> -#include <__concepts/derived_from.h> -#include <__concepts/equality_comparable.h> -#include <__config> -#include <__iterator/concepts.h> -#include <__iterator/iter_move.h> -#include <__iterator/iter_swap.h> -#include <__iterator/iterator_traits.h> -#include <__iterator/iterator_with_data.h> -#include <__iterator/segmented_iterator.h> -#include <__memory/addressof.h> -#include <__ranges/access.h> -#include <__ranges/all.h> -#include <__ranges/concepts.h> -#include <__ranges/empty.h> -#include <__ranges/non_propagating_cache.h> -#include <__ranges/range_adaptor.h> -#include <__ranges/view_interface.h> -#include <__type_traits/common_type.h> -#include <__type_traits/maybe_const.h> -#include <__utility/as_lvalue.h> -#include <__utility/empty.h> -#include <__utility/forward.h> -#include - -#if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER) -# pragma GCC system_header -#endif - -_LIBCPP_PUSH_MACROS -#include <__undef_macros> - -_LIBCPP_BEGIN_NAMESPACE_STD - -#if _LIBCPP_STD_VER >= 20 - -namespace ranges { -template -struct __join_view_iterator_category {}; - -template - requires is_reference_v> && forward_range<_View> && forward_range> -struct __join_view_iterator_category<_View> { - using _OuterC = typename iterator_traits>::iterator_category; - using _InnerC = typename iterator_traits>>::iterator_category; - - using iterator_category = - _If< derived_from<_OuterC, bidirectional_iterator_tag> && derived_from<_InnerC, bidirectional_iterator_tag> && - common_range>, - bidirectional_iterator_tag, - _If< derived_from<_OuterC, forward_iterator_tag> && derived_from<_InnerC, forward_iterator_tag>, - forward_iterator_tag, - input_iterator_tag > >; -}; - -template - requires view<_View> && input_range> -class join_view : public view_interface> { -private: - using _InnerRange = range_reference_t<_View>; - - template - struct __iterator; - - template - struct __sentinel; - - template - friend struct std::__segmented_iterator_traits; - - _LIBCPP_NO_UNIQUE_ADDRESS _View __base_ = _View(); - - static constexpr bool _UseOuterCache = !forward_range<_View>; - using _OuterCache = _If<_UseOuterCache, __non_propagating_cache>, __empty_cache>; - _LIBCPP_NO_UNIQUE_ADDRESS _OuterCache __outer_; - - static constexpr bool _UseInnerCache = !is_reference_v<_InnerRange>; - using _InnerCache = _If<_UseInnerCache, __non_propagating_cache>, __empty_cache>; - _LIBCPP_NO_UNIQUE_ADDRESS _InnerCache __inner_; - -public: - _LIBCPP_HIDE_FROM_ABI join_view() - requires default_initializable<_View> - = default; - - _LIBCPP_HIDE_FROM_ABI constexpr explicit join_view(_View __base) : __base_(std::move(__base)) {} - - _LIBCPP_HIDE_FROM_ABI constexpr _View base() const& - requires copy_constructible<_View> - { - return __base_; - } - - _LIBCPP_HIDE_FROM_ABI constexpr _View base() && { return std::move(__base_); } - - _LIBCPP_HIDE_FROM_ABI constexpr auto begin() { - if constexpr (forward_range<_View>) { - constexpr bool __use_const = __simple_view<_View> && is_reference_v>; - return __iterator<__use_const>{*this, ranges::begin(__base_)}; - } else { - __outer_.__emplace(ranges::begin(__base_)); - return __iterator{*this}; - } - } - - template - _LIBCPP_HIDE_FROM_ABI constexpr auto begin() const - requires forward_range && is_reference_v> && - input_range> - { - return __iterator{*this, ranges::begin(__base_)}; - } - - _LIBCPP_HIDE_FROM_ABI constexpr auto end() { - if constexpr (forward_range<_View> && is_reference_v<_InnerRange> && forward_range<_InnerRange> && - common_range<_View> && common_range<_InnerRange>) - return __iterator<__simple_view<_View>>{*this, ranges::end(__base_)}; - else - return __sentinel<__simple_view<_View>>{*this}; - } - - template - _LIBCPP_HIDE_FROM_ABI constexpr auto end() const - requires forward_range && is_reference_v> && - input_range> - { - using _ConstInnerRange = range_reference_t; - if constexpr (forward_range<_ConstInnerRange> && common_range && common_range<_ConstInnerRange>) { - return __iterator{*this, ranges::end(__base_)}; - } else { - return __sentinel{*this}; - } - } -}; - -template - requires view<_View> && input_range> -template -struct join_view<_View>::__sentinel { -private: - template - friend struct __sentinel; - - using _Parent = __maybe_const<_Const, join_view>; - using _Base = __maybe_const<_Const, _View>; - sentinel_t<_Base> __end_ = sentinel_t<_Base>(); - -public: - _LIBCPP_HIDE_FROM_ABI __sentinel() = default; - - _LIBCPP_HIDE_FROM_ABI constexpr explicit __sentinel(_Parent& __parent) : __end_(ranges::end(__parent.__base_)) {} - - _LIBCPP_HIDE_FROM_ABI constexpr __sentinel(__sentinel __s) - requires _Const && convertible_to, sentinel_t<_Base>> - : __end_(std::move(__s.__end_)) {} - - template - requires sentinel_for, iterator_t<__maybe_const<_OtherConst, _View>>> - _LIBCPP_HIDE_FROM_ABI friend constexpr bool operator==(const __iterator<_OtherConst>& __x, const __sentinel& __y) { - return __x.__get_outer() == __y.__end_; - } -}; - -// https://reviews.llvm.org/D142811#inline-1383022 -// To simplify the segmented iterator traits specialization, -// make the iterator `final` -template - requires view<_View> && input_range> -template -struct join_view<_View>::__iterator final : public __join_view_iterator_category<__maybe_const<_Const, _View>> { - friend join_view; - - template - friend struct std::__segmented_iterator_traits; - - static constexpr bool __is_join_view_iterator = true; - -private: - using _Parent = __maybe_const<_Const, join_view<_View>>; - using _Base = __maybe_const<_Const, _View>; - using _Outer = iterator_t<_Base>; - using _Inner = iterator_t>; - using _InnerRange = range_reference_t<_View>; - - static_assert(!_Const || forward_range<_Base>, "Const can only be true when Base models forward_range."); - - static constexpr bool __ref_is_glvalue = is_reference_v>; - - static constexpr bool _OuterPresent = forward_range<_Base>; - using _OuterType = _If<_OuterPresent, _Outer, std::__empty>; - _LIBCPP_NO_UNIQUE_ADDRESS _OuterType __outer_ = _OuterType(); - - optional<_Inner> __inner_; - _Parent* __parent_ = nullptr; - - _LIBCPP_HIDE_FROM_ABI constexpr void __satisfy() { - for (; __get_outer() != ranges::end(__parent_->__base_); ++__get_outer()) { - auto&& __inner = [this]() -> auto&& { - if constexpr (__ref_is_glvalue) - return *__get_outer(); - else - return __parent_->__inner_.__emplace_from([&]() -> decltype(auto) { return *__get_outer(); }); - }(); - __inner_ = ranges::begin(__inner); - if (*__inner_ != ranges::end(__inner)) - return; - } - - if constexpr (__ref_is_glvalue) - __inner_.reset(); - } - - _LIBCPP_HIDE_FROM_ABI constexpr _Outer& __get_outer() { - if constexpr (forward_range<_Base>) { - return __outer_; - } else { - return *__parent_->__outer_; - } - } - - _LIBCPP_HIDE_FROM_ABI constexpr const _Outer& __get_outer() const { - if constexpr (forward_range<_Base>) { - return __outer_; - } else { - return *__parent_->__outer_; - } - } - - _LIBCPP_HIDE_FROM_ABI constexpr __iterator(_Parent& __parent, _Outer __outer) - requires forward_range<_Base> - : __outer_(std::move(__outer)), __parent_(std::addressof(__parent)) { - __satisfy(); - } - - _LIBCPP_HIDE_FROM_ABI constexpr explicit __iterator(_Parent& __parent) - requires(!forward_range<_Base>) - : __parent_(std::addressof(__parent)) { - __satisfy(); - } - - _LIBCPP_HIDE_FROM_ABI constexpr __iterator(_Parent* __parent, _Outer __outer, _Inner __inner) - requires forward_range<_Base> - : __outer_(std::move(__outer)), __inner_(std::move(__inner)), __parent_(__parent) {} - -public: - using iterator_concept = - _If< __ref_is_glvalue && bidirectional_range<_Base> && bidirectional_range> && - common_range>, - bidirectional_iterator_tag, - _If< __ref_is_glvalue && forward_range<_Base> && forward_range>, - forward_iterator_tag, - input_iterator_tag > >; - - using value_type = range_value_t>; - - using difference_type = common_type_t< range_difference_t<_Base>, range_difference_t>>; - - _LIBCPP_HIDE_FROM_ABI __iterator() = default; - - _LIBCPP_HIDE_FROM_ABI constexpr __iterator(__iterator __i) - requires _Const && convertible_to, _Outer> && convertible_to, _Inner> - : __outer_(std::move(__i.__outer_)), __inner_(std::move(__i.__inner_)), __parent_(__i.__parent_) {} - - _LIBCPP_HIDE_FROM_ABI constexpr decltype(auto) operator*() const { return **__inner_; } - - _LIBCPP_HIDE_FROM_ABI constexpr _Inner operator->() const - requires __has_arrow<_Inner> && copyable<_Inner> - { - return *__inner_; - } - - _LIBCPP_HIDE_FROM_ABI constexpr __iterator& operator++() { - auto __get_inner_range = [&]() -> decltype(auto) { - if constexpr (__ref_is_glvalue) - return *__get_outer(); - else - return *__parent_->__inner_; - }; - if (++*__inner_ == ranges::end(std::__as_lvalue(__get_inner_range()))) { - ++__get_outer(); - __satisfy(); - } - return *this; - } - - _LIBCPP_HIDE_FROM_ABI constexpr void operator++(int) { ++*this; } - - _LIBCPP_HIDE_FROM_ABI constexpr __iterator operator++(int) - requires __ref_is_glvalue && forward_range<_Base> && forward_range> - { - auto __tmp = *this; - ++*this; - return __tmp; - } - - _LIBCPP_HIDE_FROM_ABI constexpr __iterator& operator--() - requires __ref_is_glvalue && bidirectional_range<_Base> && bidirectional_range> && - common_range> - { - if (__outer_ == ranges::end(__parent_->__base_)) - __inner_ = ranges::end(std::__as_lvalue(*--__outer_)); - - // Skip empty inner ranges when going backwards. - while (*__inner_ == ranges::begin(std::__as_lvalue(*__outer_))) { - __inner_ = ranges::end(std::__as_lvalue(*--__outer_)); - } - - --*__inner_; - return *this; - } - - _LIBCPP_HIDE_FROM_ABI constexpr __iterator operator--(int) - requires __ref_is_glvalue && bidirectional_range<_Base> && bidirectional_range> && - common_range> - { - auto __tmp = *this; - --*this; - return __tmp; - } - - _LIBCPP_HIDE_FROM_ABI friend constexpr bool operator==(const __iterator& __x, const __iterator& __y) - requires __ref_is_glvalue && forward_range<_Base> && equality_comparable>> - { - return __x.__outer_ == __y.__outer_ && __x.__inner_ == __y.__inner_; - } - - _LIBCPP_HIDE_FROM_ABI friend constexpr decltype(auto) - iter_move(const __iterator& __i) noexcept(noexcept(ranges::iter_move(*__i.__inner_))) { - return ranges::iter_move(*__i.__inner_); - } - - _LIBCPP_HIDE_FROM_ABI friend constexpr void - iter_swap(const __iterator& __x, - const __iterator& __y) noexcept(noexcept(ranges::iter_swap(*__x.__inner_, *__y.__inner_))) - requires indirectly_swappable<_Inner> - { - return ranges::iter_swap(*__x.__inner_, *__y.__inner_); - } -}; - -template -explicit join_view(_Range&&) -> join_view>; - -namespace views { -namespace __join_view { -struct __fn : __range_adaptor_closure<__fn> { - template - [[nodiscard]] _LIBCPP_HIDE_FROM_ABI constexpr auto operator()(_Range&& __range) const - noexcept(noexcept(join_view>(std::forward<_Range>(__range)))) - -> decltype(join_view>(std::forward<_Range>(__range))) { - return join_view>(std::forward<_Range>(__range)); - } -}; -} // namespace __join_view -inline namespace __cpo { -inline constexpr auto join = __join_view::__fn{}; -} // namespace __cpo -} // namespace views -} // namespace ranges - -template - requires(_JoinViewIterator::__is_join_view_iterator && ranges::common_range && - __has_random_access_iterator_category::value && - __has_random_access_iterator_category::value) -struct __segmented_iterator_traits<_JoinViewIterator> { - using __segment_iterator = - _LIBCPP_NODEBUG __iterator_with_data; - using __local_iterator = typename _JoinViewIterator::_Inner; - - // TODO: Would it make sense to enable the optimization for other iterator types? - - static constexpr _LIBCPP_HIDE_FROM_ABI __segment_iterator __segment(_JoinViewIterator __iter) { - if (ranges::empty(__iter.__parent_->__base_)) - return {}; - if (!__iter.__inner_.has_value()) - return __segment_iterator(--__iter.__outer_, __iter.__parent_); - return __segment_iterator(__iter.__outer_, __iter.__parent_); - } - - static constexpr _LIBCPP_HIDE_FROM_ABI __local_iterator __local(_JoinViewIterator __iter) { - if (ranges::empty(__iter.__parent_->__base_)) - return {}; - if (!__iter.__inner_.has_value()) - return ranges::end(*--__iter.__outer_); - return *__iter.__inner_; - } - - static constexpr _LIBCPP_HIDE_FROM_ABI __local_iterator __begin(__segment_iterator __iter) { - return ranges::begin(*__iter.__get_iter()); - } - - static constexpr _LIBCPP_HIDE_FROM_ABI __local_iterator __end(__segment_iterator __iter) { - return ranges::end(*__iter.__get_iter()); - } - - static constexpr _LIBCPP_HIDE_FROM_ABI _JoinViewIterator - __compose(__segment_iterator __seg_iter, __local_iterator __local_iter) { - return _JoinViewIterator( - std::move(__seg_iter).__get_data(), std::move(__seg_iter).__get_iter(), std::move(__local_iter)); - } -}; - -#endif // #if _LIBCPP_STD_VER >= 20 - -_LIBCPP_END_NAMESPACE_STD - -_LIBCPP_POP_MACROS - -#endif // _LIBCPP___RANGES_JOIN_VIEW_H diff --git a/contrib/libs/cxxsupp/libcxx/include/__ranges/lazy_split_view.h b/contrib/libs/cxxsupp/libcxx/include/__ranges/lazy_split_view.h deleted file mode 100644 index 6aedfdabf..000000000 --- a/contrib/libs/cxxsupp/libcxx/include/__ranges/lazy_split_view.h +++ /dev/null @@ -1,441 +0,0 @@ -// -*- C++ -*- -//===----------------------------------------------------------------------===// -// -// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. -// See https://llvm.org/LICENSE.txt for license information. -// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception -// -//===----------------------------------------------------------------------===// - -#ifndef _LIBCPP___RANGES_LAZY_SPLIT_VIEW_H -#define _LIBCPP___RANGES_LAZY_SPLIT_VIEW_H - -#include <__algorithm/ranges_find.h> -#include <__algorithm/ranges_mismatch.h> -#include <__assert> -#include <__concepts/constructible.h> -#include <__concepts/convertible_to.h> -#include <__concepts/derived_from.h> -#include <__config> -#include <__functional/bind_back.h> -#include <__functional/ranges_operations.h> -#include <__iterator/concepts.h> -#include <__iterator/default_sentinel.h> -#include <__iterator/incrementable_traits.h> -#include <__iterator/indirectly_comparable.h> -#include <__iterator/iter_move.h> -#include <__iterator/iter_swap.h> -#include <__iterator/iterator_traits.h> -#include <__memory/addressof.h> -#include <__ranges/access.h> -#include <__ranges/all.h> -#include <__ranges/concepts.h> -#include <__ranges/non_propagating_cache.h> -#include <__ranges/range_adaptor.h> -#include <__ranges/single_view.h> -#include <__ranges/subrange.h> -#include <__ranges/view_interface.h> -#include <__type_traits/conditional.h> -#include <__type_traits/decay.h> -#include <__type_traits/is_nothrow_constructible.h> -#include <__type_traits/maybe_const.h> -#include <__type_traits/remove_reference.h> -#include <__utility/forward.h> -#include <__utility/move.h> - -#if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER) -# pragma GCC system_header -#endif - -_LIBCPP_PUSH_MACROS -#include <__undef_macros> - -_LIBCPP_BEGIN_NAMESPACE_STD - -#if _LIBCPP_STD_VER >= 20 - -namespace ranges { - -template -struct __require_constant; - -template -concept __tiny_range = sized_range<_Range> && requires { - typename __require_constant::size()>; -} && (remove_reference_t<_Range>::size() <= 1); - -template - requires view<_View> && view<_Pattern> && - indirectly_comparable, iterator_t<_Pattern>, ranges::equal_to> && - (forward_range<_View> || __tiny_range<_Pattern>) -class lazy_split_view : public view_interface> { - _LIBCPP_NO_UNIQUE_ADDRESS _View __base_ = _View(); - _LIBCPP_NO_UNIQUE_ADDRESS _Pattern __pattern_ = _Pattern(); - - using _MaybeCurrent = _If, __non_propagating_cache>, __empty_cache>; - _LIBCPP_NO_UNIQUE_ADDRESS _MaybeCurrent __current_ = _MaybeCurrent(); - - template - struct __outer_iterator; - template - struct __inner_iterator; - -public: - _LIBCPP_HIDE_FROM_ABI lazy_split_view() - requires default_initializable<_View> && default_initializable<_Pattern> - = default; - - _LIBCPP_HIDE_FROM_ABI constexpr _LIBCPP_EXPLICIT_SINCE_CXX23 lazy_split_view(_View __base, _Pattern __pattern) - : __base_(std::move(__base)), __pattern_(std::move(__pattern)) {} - - template - requires constructible_from<_View, views::all_t<_Range>> && - constructible_from<_Pattern, single_view>> - _LIBCPP_HIDE_FROM_ABI constexpr _LIBCPP_EXPLICIT_SINCE_CXX23 lazy_split_view(_Range&& __r, range_value_t<_Range> __e) - : __base_(views::all(std::forward<_Range>(__r))), __pattern_(views::single(std::move(__e))) {} - - _LIBCPP_HIDE_FROM_ABI constexpr _View base() const& - requires copy_constructible<_View> - { - return __base_; - } - _LIBCPP_HIDE_FROM_ABI constexpr _View base() && { return std::move(__base_); } - - _LIBCPP_HIDE_FROM_ABI constexpr auto begin() { - if constexpr (forward_range<_View>) { - return __outer_iterator < __simple_view<_View> && __simple_view < _Pattern >> {*this, ranges::begin(__base_)}; - } else { - __current_.__emplace(ranges::begin(__base_)); - return __outer_iterator{*this}; - } - } - - _LIBCPP_HIDE_FROM_ABI constexpr auto begin() const - requires forward_range<_View> && forward_range - { - return __outer_iterator{*this, ranges::begin(__base_)}; - } - - _LIBCPP_HIDE_FROM_ABI constexpr auto end() - requires forward_range<_View> && common_range<_View> - { - return __outer_iterator < __simple_view<_View> && __simple_view < _Pattern >> {*this, ranges::end(__base_)}; - } - - _LIBCPP_HIDE_FROM_ABI constexpr auto end() const { - if constexpr (forward_range<_View> && forward_range && common_range) { - return __outer_iterator{*this, ranges::end(__base_)}; - } else { - return default_sentinel; - } - } - -private: - template - struct __outer_iterator_category {}; - - template - struct __outer_iterator_category<_Tp> { - using iterator_category = input_iterator_tag; - }; - - template - struct __outer_iterator : __outer_iterator_category<__maybe_const<_Const, _View>> { - private: - template - friend struct __inner_iterator; - friend __outer_iterator; - - using _Parent = __maybe_const<_Const, lazy_split_view>; - using _Base = __maybe_const<_Const, _View>; - - _Parent* __parent_ = nullptr; - using _MaybeCurrent = _If, iterator_t<_Base>, __empty_cache>; - _LIBCPP_NO_UNIQUE_ADDRESS _MaybeCurrent __current_ = _MaybeCurrent(); - bool __trailing_empty_ = false; - - [[nodiscard]] _LIBCPP_HIDE_FROM_ABI constexpr auto& __current() noexcept { - if constexpr (forward_range<_View>) { - return __current_; - } else { - return *__parent_->__current_; - } - } - - [[nodiscard]] _LIBCPP_HIDE_FROM_ABI constexpr const auto& __current() const noexcept { - if constexpr (forward_range<_View>) { - return __current_; - } else { - return *__parent_->__current_; - } - } - - // Workaround for the GCC issue that doesn't allow calling `__parent_->__base_` from friend functions (because - // `__base_` is private). - [[nodiscard]] _LIBCPP_HIDE_FROM_ABI constexpr auto& __parent_base() const noexcept { return __parent_->__base_; } - - public: - // using iterator_category = inherited; - using iterator_concept = conditional_t, forward_iterator_tag, input_iterator_tag>; - using difference_type = range_difference_t<_Base>; - - struct value_type : view_interface { - private: - __outer_iterator __i_ = __outer_iterator(); - - public: - _LIBCPP_HIDE_FROM_ABI value_type() = default; - _LIBCPP_HIDE_FROM_ABI constexpr explicit value_type(__outer_iterator __i) : __i_(std::move(__i)) {} - - _LIBCPP_HIDE_FROM_ABI constexpr __inner_iterator<_Const> begin() const { return __inner_iterator<_Const>{__i_}; } - _LIBCPP_HIDE_FROM_ABI constexpr default_sentinel_t end() const noexcept { return default_sentinel; } - }; - - _LIBCPP_HIDE_FROM_ABI __outer_iterator() = default; - - _LIBCPP_HIDE_FROM_ABI constexpr explicit __outer_iterator(_Parent& __parent) - requires(!forward_range<_Base>) - : __parent_(std::addressof(__parent)) {} - - _LIBCPP_HIDE_FROM_ABI constexpr __outer_iterator(_Parent& __parent, iterator_t<_Base> __current) - requires forward_range<_Base> - : __parent_(std::addressof(__parent)), __current_(std::move(__current)) {} - - _LIBCPP_HIDE_FROM_ABI constexpr __outer_iterator(__outer_iterator __i) - requires _Const && convertible_to, iterator_t<_Base>> - : __parent_(__i.__parent_), __current_(std::move(__i.__current_)) {} - - _LIBCPP_HIDE_FROM_ABI constexpr value_type operator*() const { return value_type{*this}; } - - _LIBCPP_HIDE_FROM_ABI constexpr __outer_iterator& operator++() { - const auto __end = ranges::end(__parent_->__base_); - if (__current() == __end) { - __trailing_empty_ = false; - return *this; - } - - const auto [__pbegin, __pend] = ranges::subrange{__parent_->__pattern_}; - if (__pbegin == __pend) { - // Empty pattern: split on every element in the input range - ++__current(); - - } else if constexpr (__tiny_range<_Pattern>) { - // One-element pattern: we can use `ranges::find`. - __current() = ranges::find(std::move(__current()), __end, *__pbegin); - if (__current() != __end) { - // Make sure we point to after the separator we just found. - ++__current(); - if (__current() == __end) - __trailing_empty_ = true; - } - - } else { - // General case for n-element pattern. - do { - const auto [__b, __p] = ranges::mismatch(__current(), __end, __pbegin, __pend); - if (__p == __pend) { - __current() = __b; - if (__current() == __end) { - __trailing_empty_ = true; - } - break; // The pattern matched; skip it. - } - } while (++__current() != __end); - } - - return *this; - } - - _LIBCPP_HIDE_FROM_ABI constexpr decltype(auto) operator++(int) { - if constexpr (forward_range<_Base>) { - auto __tmp = *this; - ++*this; - return __tmp; - - } else { - ++*this; - } - } - - _LIBCPP_HIDE_FROM_ABI friend constexpr bool operator==(const __outer_iterator& __x, const __outer_iterator& __y) - requires forward_range<_Base> - { - return __x.__current_ == __y.__current_ && __x.__trailing_empty_ == __y.__trailing_empty_; - } - - _LIBCPP_HIDE_FROM_ABI friend constexpr bool operator==(const __outer_iterator& __x, default_sentinel_t) { - _LIBCPP_ASSERT_NON_NULL(__x.__parent_ != nullptr, "Cannot call comparison on a default-constructed iterator."); - return __x.__current() == ranges::end(__x.__parent_base()) && !__x.__trailing_empty_; - } - }; - - template - struct __inner_iterator_category {}; - - template - struct __inner_iterator_category<_Tp> { - using iterator_category = - _If< derived_from>::iterator_category, forward_iterator_tag>, - forward_iterator_tag, - typename iterator_traits>::iterator_category >; - }; - - template - struct __inner_iterator : __inner_iterator_category<__maybe_const<_Const, _View>> { - private: - using _Base = __maybe_const<_Const, _View>; - // Workaround for a GCC issue. - static constexpr bool _OuterConst = _Const; - __outer_iterator<_Const> __i_ = __outer_iterator<_OuterConst>(); - bool __incremented_ = false; - - // Note: these private functions are necessary because GCC doesn't allow calls to private members of `__i_` from - // free functions that are friends of `inner-iterator`. - - _LIBCPP_HIDE_FROM_ABI constexpr bool __is_done() const { - _LIBCPP_ASSERT_NON_NULL(__i_.__parent_ != nullptr, "Cannot call comparison on a default-constructed iterator."); - - auto [__pcur, __pend] = ranges::subrange{__i_.__parent_->__pattern_}; - auto __end = ranges::end(__i_.__parent_->__base_); - - if constexpr (__tiny_range<_Pattern>) { - const auto& __cur = __i_.__current(); - if (__cur == __end) - return true; - if (__pcur == __pend) - return __incremented_; - - return *__cur == *__pcur; - - } else { - auto __cur = __i_.__current(); - if (__cur == __end) - return true; - if (__pcur == __pend) - return __incremented_; - - do { - if (*__cur != *__pcur) - return false; - if (++__pcur == __pend) - return true; - } while (++__cur != __end); - - return false; - } - } - - [[nodiscard]] _LIBCPP_HIDE_FROM_ABI constexpr auto& __outer_current() noexcept { return __i_.__current(); } - - [[nodiscard]] _LIBCPP_HIDE_FROM_ABI constexpr const auto& __outer_current() const noexcept { - return __i_.__current(); - } - - public: - // using iterator_category = inherited; - using iterator_concept = typename __outer_iterator<_Const>::iterator_concept; - using value_type = range_value_t<_Base>; - using difference_type = range_difference_t<_Base>; - - _LIBCPP_HIDE_FROM_ABI __inner_iterator() = default; - - _LIBCPP_HIDE_FROM_ABI constexpr explicit __inner_iterator(__outer_iterator<_Const> __i) : __i_(std::move(__i)) {} - - _LIBCPP_HIDE_FROM_ABI constexpr const iterator_t<_Base>& base() const& noexcept { return __i_.__current(); } - _LIBCPP_HIDE_FROM_ABI constexpr iterator_t<_Base> base() && - requires forward_range<_View> - { - return std::move(__i_.__current()); - } - - _LIBCPP_HIDE_FROM_ABI constexpr decltype(auto) operator*() const { return *__i_.__current(); } - - _LIBCPP_HIDE_FROM_ABI constexpr __inner_iterator& operator++() { - __incremented_ = true; - - if constexpr (!forward_range<_Base>) { - if constexpr (_Pattern::size() == 0) { - return *this; - } - } - - ++__i_.__current(); - return *this; - } - - _LIBCPP_HIDE_FROM_ABI constexpr decltype(auto) operator++(int) { - if constexpr (forward_range<_Base>) { - auto __tmp = *this; - ++*this; - return __tmp; - - } else { - ++*this; - } - } - - _LIBCPP_HIDE_FROM_ABI friend constexpr bool operator==(const __inner_iterator& __x, const __inner_iterator& __y) - requires forward_range<_Base> - { - return __x.__outer_current() == __y.__outer_current(); - } - - _LIBCPP_HIDE_FROM_ABI friend constexpr bool operator==(const __inner_iterator& __x, default_sentinel_t) { - return __x.__is_done(); - } - - _LIBCPP_HIDE_FROM_ABI friend constexpr decltype(auto) - iter_move(const __inner_iterator& __i) noexcept(noexcept(ranges::iter_move(__i.__outer_current()))) { - return ranges::iter_move(__i.__outer_current()); - } - - _LIBCPP_HIDE_FROM_ABI friend constexpr void iter_swap( - const __inner_iterator& __x, - const __inner_iterator& __y) noexcept(noexcept(ranges::iter_swap(__x.__outer_current(), __y.__outer_current()))) - requires indirectly_swappable> - { - ranges::iter_swap(__x.__outer_current(), __y.__outer_current()); - } - }; -}; - -template -lazy_split_view(_Range&&, _Pattern&&) -> lazy_split_view, views::all_t<_Pattern>>; - -template -lazy_split_view(_Range&&, range_value_t<_Range>) - -> lazy_split_view, single_view>>; - -namespace views { -namespace __lazy_split_view { -struct __fn { - template - [[nodiscard]] _LIBCPP_HIDE_FROM_ABI constexpr auto operator()(_Range&& __range, _Pattern&& __pattern) const - noexcept(noexcept(lazy_split_view(std::forward<_Range>(__range), std::forward<_Pattern>(__pattern)))) - -> decltype(lazy_split_view(std::forward<_Range>(__range), std::forward<_Pattern>(__pattern))) { - return lazy_split_view(std::forward<_Range>(__range), std::forward<_Pattern>(__pattern)); - } - - template - requires constructible_from, _Pattern> - [[nodiscard]] _LIBCPP_HIDE_FROM_ABI constexpr auto operator()(_Pattern&& __pattern) const - noexcept(is_nothrow_constructible_v, _Pattern>) { - return __range_adaptor_closure_t(std::__bind_back(*this, std::forward<_Pattern>(__pattern))); - } -}; -} // namespace __lazy_split_view - -inline namespace __cpo { -inline constexpr auto lazy_split = __lazy_split_view::__fn{}; -} // namespace __cpo -} // namespace views - -} // namespace ranges - -#endif // _LIBCPP_STD_VER >= 20 - -_LIBCPP_END_NAMESPACE_STD - -_LIBCPP_POP_MACROS - -#endif // _LIBCPP___RANGES_LAZY_SPLIT_VIEW_H diff --git a/contrib/libs/cxxsupp/libcxx/include/__ranges/non_propagating_cache.h b/contrib/libs/cxxsupp/libcxx/include/__ranges/non_propagating_cache.h deleted file mode 100644 index b2de2d2ae..000000000 --- a/contrib/libs/cxxsupp/libcxx/include/__ranges/non_propagating_cache.h +++ /dev/null @@ -1,103 +0,0 @@ -// -*- C++ -*- -//===----------------------------------------------------------------------===// -// -// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. -// See https://llvm.org/LICENSE.txt for license information. -// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception -// -//===----------------------------------------------------------------------===// - -#ifndef _LIBCPP___RANGES_NON_PROPAGATING_CACHE_H -#define _LIBCPP___RANGES_NON_PROPAGATING_CACHE_H - -#include <__config> -#include <__iterator/concepts.h> // indirectly_readable -#include <__iterator/iterator_traits.h> // iter_reference_t -#include <__memory/addressof.h> -#include <__utility/forward.h> -#include - -#if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER) -# pragma GCC system_header -#endif - -_LIBCPP_BEGIN_NAMESPACE_STD - -#if _LIBCPP_STD_VER >= 20 - -namespace ranges { -// __non_propagating_cache is a helper type that allows storing an optional value in it, -// but which does not copy the source's value when it is copy constructed/assigned to, -// and which resets the source's value when it is moved-from. -// -// This type is used as an implementation detail of some views that need to cache the -// result of `begin()` in order to provide an amortized O(1) begin() method. Typically, -// we don't want to propagate the value of the cache upon copy because the cached iterator -// may refer to internal details of the source view. -template - requires is_object_v<_Tp> -class _LIBCPP_TEMPLATE_VIS __non_propagating_cache { - struct __from_tag {}; - struct __forward_tag {}; - - // This helper class is needed to perform copy and move elision when - // constructing the contained type from an iterator. - struct __wrapper { - template - _LIBCPP_HIDE_FROM_ABI constexpr explicit __wrapper(__forward_tag, _Args&&... __args) - : __t_(std::forward<_Args>(__args)...) {} - template - _LIBCPP_HIDE_FROM_ABI constexpr explicit __wrapper(__from_tag, _Fn const& __f) : __t_(__f()) {} - _Tp __t_; - }; - - optional<__wrapper> __value_ = nullopt; - -public: - _LIBCPP_HIDE_FROM_ABI __non_propagating_cache() = default; - - _LIBCPP_HIDE_FROM_ABI constexpr __non_propagating_cache(__non_propagating_cache const&) noexcept - : __value_(nullopt) {} - - _LIBCPP_HIDE_FROM_ABI constexpr __non_propagating_cache(__non_propagating_cache&& __other) noexcept - : __value_(nullopt) { - __other.__value_.reset(); - } - - _LIBCPP_HIDE_FROM_ABI constexpr __non_propagating_cache& operator=(__non_propagating_cache const& __other) noexcept { - if (this != std::addressof(__other)) { - __value_.reset(); - } - return *this; - } - - _LIBCPP_HIDE_FROM_ABI constexpr __non_propagating_cache& operator=(__non_propagating_cache&& __other) noexcept { - __value_.reset(); - __other.__value_.reset(); - return *this; - } - - _LIBCPP_HIDE_FROM_ABI constexpr _Tp& operator*() { return __value_->__t_; } - _LIBCPP_HIDE_FROM_ABI constexpr _Tp const& operator*() const { return __value_->__t_; } - - _LIBCPP_HIDE_FROM_ABI constexpr bool __has_value() const { return __value_.has_value(); } - - template - _LIBCPP_HIDE_FROM_ABI constexpr _Tp& __emplace_from(_Fn const& __f) { - return __value_.emplace(__from_tag{}, __f).__t_; - } - - template - _LIBCPP_HIDE_FROM_ABI constexpr _Tp& __emplace(_Args&&... __args) { - return __value_.emplace(__forward_tag{}, std::forward<_Args>(__args)...).__t_; - } -}; - -struct __empty_cache {}; -} // namespace ranges - -#endif // _LIBCPP_STD_VER >= 20 - -_LIBCPP_END_NAMESPACE_STD - -#endif // _LIBCPP___RANGES_NON_PROPAGATING_CACHE_H diff --git a/contrib/libs/cxxsupp/libcxx/include/__ranges/owning_view.h b/contrib/libs/cxxsupp/libcxx/include/__ranges/owning_view.h deleted file mode 100644 index 254bdb432..000000000 --- a/contrib/libs/cxxsupp/libcxx/include/__ranges/owning_view.h +++ /dev/null @@ -1,116 +0,0 @@ -// -*- C++ -*- -//===----------------------------------------------------------------------===// -// -// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. -// See https://llvm.org/LICENSE.txt for license information. -// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception -// -//===----------------------------------------------------------------------===// - -#ifndef _LIBCPP___RANGES_OWNING_VIEW_H -#define _LIBCPP___RANGES_OWNING_VIEW_H - -#include <__concepts/constructible.h> -#include <__concepts/movable.h> -#include <__config> -#include <__ranges/access.h> -#include <__ranges/concepts.h> -#include <__ranges/data.h> -#include <__ranges/empty.h> -#include <__ranges/enable_borrowed_range.h> -#include <__ranges/size.h> -#include <__ranges/view_interface.h> -#include <__type_traits/remove_cvref.h> -#include <__utility/move.h> - -#if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER) -# pragma GCC system_header -#endif - -_LIBCPP_PUSH_MACROS -#include <__undef_macros> - -_LIBCPP_BEGIN_NAMESPACE_STD - -#if _LIBCPP_STD_VER >= 20 - -namespace ranges { -template - requires movable<_Rp> && (!__is_std_initializer_list>) -class owning_view : public view_interface> { - _Rp __r_ = _Rp(); - -public: - _LIBCPP_HIDE_FROM_ABI owning_view() - requires default_initializable<_Rp> - = default; - _LIBCPP_HIDE_FROM_ABI constexpr owning_view(_Rp&& __r) : __r_(std::move(__r)) {} - - _LIBCPP_HIDE_FROM_ABI owning_view(owning_view&&) = default; - _LIBCPP_HIDE_FROM_ABI owning_view& operator=(owning_view&&) = default; - - _LIBCPP_HIDE_FROM_ABI constexpr _Rp& base() & noexcept { return __r_; } - _LIBCPP_HIDE_FROM_ABI constexpr const _Rp& base() const& noexcept { return __r_; } - _LIBCPP_HIDE_FROM_ABI constexpr _Rp&& base() && noexcept { return std::move(__r_); } - _LIBCPP_HIDE_FROM_ABI constexpr const _Rp&& base() const&& noexcept { return std::move(__r_); } - - _LIBCPP_HIDE_FROM_ABI constexpr iterator_t<_Rp> begin() { return ranges::begin(__r_); } - _LIBCPP_HIDE_FROM_ABI constexpr sentinel_t<_Rp> end() { return ranges::end(__r_); } - _LIBCPP_HIDE_FROM_ABI constexpr auto begin() const - requires range - { - return ranges::begin(__r_); - } - _LIBCPP_HIDE_FROM_ABI constexpr auto end() const - requires range - { - return ranges::end(__r_); - } - - _LIBCPP_HIDE_FROM_ABI constexpr bool empty() - requires requires { ranges::empty(__r_); } - { - return ranges::empty(__r_); - } - _LIBCPP_HIDE_FROM_ABI constexpr bool empty() const - requires requires { ranges::empty(__r_); } - { - return ranges::empty(__r_); - } - - _LIBCPP_HIDE_FROM_ABI constexpr auto size() - requires sized_range<_Rp> - { - return ranges::size(__r_); - } - _LIBCPP_HIDE_FROM_ABI constexpr auto size() const - requires sized_range - { - return ranges::size(__r_); - } - - _LIBCPP_HIDE_FROM_ABI constexpr auto data() - requires contiguous_range<_Rp> - { - return ranges::data(__r_); - } - _LIBCPP_HIDE_FROM_ABI constexpr auto data() const - requires contiguous_range - { - return ranges::data(__r_); - } -}; -_LIBCPP_CTAD_SUPPORTED_FOR_TYPE(owning_view); - -template -inline constexpr bool enable_borrowed_range> = enable_borrowed_range<_Tp>; - -} // namespace ranges - -#endif // _LIBCPP_STD_VER >= 20 - -_LIBCPP_END_NAMESPACE_STD - -_LIBCPP_POP_MACROS - -#endif // _LIBCPP___RANGES_OWNING_VIEW_H diff --git a/contrib/libs/cxxsupp/libcxx/include/__ranges/range_adaptor.h b/contrib/libs/cxxsupp/libcxx/include/__ranges/range_adaptor.h deleted file mode 100644 index 726b7eda0..000000000 --- a/contrib/libs/cxxsupp/libcxx/include/__ranges/range_adaptor.h +++ /dev/null @@ -1,82 +0,0 @@ -// -*- C++ -*- -//===----------------------------------------------------------------------===// -// -// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. -// See https://llvm.org/LICENSE.txt for license information. -// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception -// -//===----------------------------------------------------------------------===// - -#ifndef _LIBCPP___RANGES_RANGE_ADAPTOR_H -#define _LIBCPP___RANGES_RANGE_ADAPTOR_H - -#include <__concepts/constructible.h> -#include <__concepts/derived_from.h> -#include <__concepts/invocable.h> -#include <__concepts/same_as.h> -#include <__config> -#include <__functional/compose.h> -#include <__functional/invoke.h> -#include <__ranges/concepts.h> -#include <__type_traits/decay.h> -#include <__type_traits/is_nothrow_constructible.h> -#include <__type_traits/remove_cvref.h> -#include <__utility/forward.h> -#include <__utility/move.h> - -#if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER) -# pragma GCC system_header -#endif - -_LIBCPP_PUSH_MACROS -#include <__undef_macros> - -_LIBCPP_BEGIN_NAMESPACE_STD - -#if _LIBCPP_STD_VER >= 20 - -// CRTP base that one can derive from in order to be considered a range adaptor closure -// by the library. When deriving from this class, a pipe operator will be provided to -// make the following hold: -// - `x | f` is equivalent to `f(x)` -// - `f1 | f2` is an adaptor closure `g` such that `g(x)` is equivalent to `f2(f1(x))` -template -struct __range_adaptor_closure; - -// Type that wraps an arbitrary function object and makes it into a range adaptor closure, -// i.e. something that can be called via the `x | f` notation. -template -struct __range_adaptor_closure_t : _Fn, __range_adaptor_closure<__range_adaptor_closure_t<_Fn>> { - _LIBCPP_HIDE_FROM_ABI constexpr explicit __range_adaptor_closure_t(_Fn&& __f) : _Fn(std::move(__f)) {} -}; -_LIBCPP_CTAD_SUPPORTED_FOR_TYPE(__range_adaptor_closure_t); - -template -concept _RangeAdaptorClosure = derived_from, __range_adaptor_closure>>; - -template -struct __range_adaptor_closure { - template - requires same_as<_Tp, remove_cvref_t<_Closure>> && invocable<_Closure, _View> - [[nodiscard]] _LIBCPP_HIDE_FROM_ABI friend constexpr decltype(auto) - operator|(_View&& __view, _Closure&& __closure) noexcept(is_nothrow_invocable_v<_Closure, _View>) { - return std::invoke(std::forward<_Closure>(__closure), std::forward<_View>(__view)); - } - - template <_RangeAdaptorClosure _Closure, _RangeAdaptorClosure _OtherClosure> - requires same_as<_Tp, remove_cvref_t<_Closure>> && constructible_from, _Closure> && - constructible_from, _OtherClosure> - [[nodiscard]] _LIBCPP_HIDE_FROM_ABI friend constexpr auto operator|(_Closure&& __c1, _OtherClosure&& __c2) noexcept( - is_nothrow_constructible_v, _Closure> && - is_nothrow_constructible_v, _OtherClosure>) { - return __range_adaptor_closure_t(std::__compose(std::forward<_OtherClosure>(__c2), std::forward<_Closure>(__c1))); - } -}; - -#endif // _LIBCPP_STD_VER >= 20 - -_LIBCPP_END_NAMESPACE_STD - -_LIBCPP_POP_MACROS - -#endif // _LIBCPP___RANGES_RANGE_ADAPTOR_H diff --git a/contrib/libs/cxxsupp/libcxx/include/__ranges/rbegin.h b/contrib/libs/cxxsupp/libcxx/include/__ranges/rbegin.h deleted file mode 100644 index 12e739e1a..000000000 --- a/contrib/libs/cxxsupp/libcxx/include/__ranges/rbegin.h +++ /dev/null @@ -1,120 +0,0 @@ -// -*- C++ -*- -//===----------------------------------------------------------------------===// -// -// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. -// See https://llvm.org/LICENSE.txt for license information. -// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception -// -//===----------------------------------------------------------------------===// - -#ifndef _LIBCPP___RANGES_RBEGIN_H -#define _LIBCPP___RANGES_RBEGIN_H - -#include <__concepts/class_or_enum.h> -#include <__concepts/same_as.h> -#include <__config> -#include <__iterator/concepts.h> -#include <__iterator/readable_traits.h> -#include <__iterator/reverse_iterator.h> -#include <__ranges/access.h> -#include <__type_traits/decay.h> -#include <__type_traits/is_reference.h> -#include <__type_traits/remove_cvref.h> -#include <__type_traits/remove_reference.h> -#include <__utility/auto_cast.h> - -#if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER) -# pragma GCC system_header -#endif - -_LIBCPP_BEGIN_NAMESPACE_STD - -#if _LIBCPP_STD_VER >= 20 - -// [ranges.access.rbegin] - -namespace ranges { -namespace __rbegin { -template -concept __member_rbegin = __can_borrow<_Tp> && requires(_Tp&& __t) { - { _LIBCPP_AUTO_CAST(__t.rbegin()) } -> input_or_output_iterator; -}; - -void rbegin() = delete; - -template -concept __unqualified_rbegin = - !__member_rbegin<_Tp> && __can_borrow<_Tp> && __class_or_enum> && requires(_Tp&& __t) { - { _LIBCPP_AUTO_CAST(rbegin(__t)) } -> input_or_output_iterator; - }; - -template -concept __can_reverse = - __can_borrow<_Tp> && !__member_rbegin<_Tp> && !__unqualified_rbegin<_Tp> && requires(_Tp&& __t) { - { ranges::begin(__t) } -> same_as; - { ranges::begin(__t) } -> bidirectional_iterator; - }; - -struct __fn { - template - requires __member_rbegin<_Tp> - [[nodiscard]] _LIBCPP_HIDE_FROM_ABI constexpr auto operator()(_Tp&& __t) const - noexcept(noexcept(_LIBCPP_AUTO_CAST(__t.rbegin()))) { - return _LIBCPP_AUTO_CAST(__t.rbegin()); - } - - template - requires __unqualified_rbegin<_Tp> - [[nodiscard]] _LIBCPP_HIDE_FROM_ABI constexpr auto operator()(_Tp&& __t) const - noexcept(noexcept(_LIBCPP_AUTO_CAST(rbegin(__t)))) { - return _LIBCPP_AUTO_CAST(rbegin(__t)); - } - - template - requires __can_reverse<_Tp> - [[nodiscard]] _LIBCPP_HIDE_FROM_ABI constexpr auto operator()(_Tp&& __t) const noexcept(noexcept(ranges::end(__t))) { - return std::make_reverse_iterator(ranges::end(__t)); - } - - void operator()(auto&&) const = delete; -}; -} // namespace __rbegin - -inline namespace __cpo { -inline constexpr auto rbegin = __rbegin::__fn{}; -} // namespace __cpo -} // namespace ranges - -// [range.access.crbegin] - -namespace ranges { -namespace __crbegin { -struct __fn { - template - requires is_lvalue_reference_v<_Tp&&> - [[nodiscard]] _LIBCPP_HIDE_FROM_ABI constexpr auto operator()(_Tp&& __t) const - noexcept(noexcept(ranges::rbegin(static_cast&>(__t)))) - -> decltype(ranges::rbegin(static_cast&>(__t))) { - return ranges::rbegin(static_cast&>(__t)); - } - - template - requires is_rvalue_reference_v<_Tp&&> - [[nodiscard]] _LIBCPP_HIDE_FROM_ABI constexpr auto operator()(_Tp&& __t) const - noexcept(noexcept(ranges::rbegin(static_cast(__t)))) - -> decltype(ranges::rbegin(static_cast(__t))) { - return ranges::rbegin(static_cast(__t)); - } -}; -} // namespace __crbegin - -inline namespace __cpo { -inline constexpr auto crbegin = __crbegin::__fn{}; -} // namespace __cpo -} // namespace ranges - -#endif // _LIBCPP_STD_VER >= 20 - -_LIBCPP_END_NAMESPACE_STD - -#endif // _LIBCPP___RANGES_RBEGIN_H diff --git a/contrib/libs/cxxsupp/libcxx/include/__ranges/rend.h b/contrib/libs/cxxsupp/libcxx/include/__ranges/rend.h deleted file mode 100644 index 5edbc4e31..000000000 --- a/contrib/libs/cxxsupp/libcxx/include/__ranges/rend.h +++ /dev/null @@ -1,124 +0,0 @@ -// -*- C++ -*- -//===----------------------------------------------------------------------===// -// -// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. -// See https://llvm.org/LICENSE.txt for license information. -// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception -// -//===----------------------------------------------------------------------===// - -#ifndef _LIBCPP___RANGES_REND_H -#define _LIBCPP___RANGES_REND_H - -#include <__concepts/class_or_enum.h> -#include <__concepts/same_as.h> -#include <__config> -#include <__iterator/concepts.h> -#include <__iterator/readable_traits.h> -#include <__iterator/reverse_iterator.h> -#include <__ranges/access.h> -#include <__ranges/rbegin.h> -#include <__type_traits/decay.h> -#include <__type_traits/is_reference.h> -#include <__type_traits/remove_cvref.h> -#include <__type_traits/remove_reference.h> -#include <__utility/auto_cast.h> - -#if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER) -# pragma GCC system_header -#endif - -_LIBCPP_BEGIN_NAMESPACE_STD - -#if _LIBCPP_STD_VER >= 20 - -// [range.access.rend] - -namespace ranges { -namespace __rend { -template -concept __member_rend = __can_borrow<_Tp> && requires(_Tp&& __t) { - ranges::rbegin(__t); - { _LIBCPP_AUTO_CAST(__t.rend()) } -> sentinel_for; -}; - -void rend() = delete; - -template -concept __unqualified_rend = - !__member_rend<_Tp> && __can_borrow<_Tp> && __class_or_enum> && requires(_Tp&& __t) { - ranges::rbegin(__t); - { _LIBCPP_AUTO_CAST(rend(__t)) } -> sentinel_for; - }; - -template -concept __can_reverse = __can_borrow<_Tp> && !__member_rend<_Tp> && !__unqualified_rend<_Tp> && requires(_Tp&& __t) { - { ranges::begin(__t) } -> same_as; - { ranges::begin(__t) } -> bidirectional_iterator; -}; - -class __fn { -public: - template - requires __member_rend<_Tp> - [[nodiscard]] _LIBCPP_HIDE_FROM_ABI constexpr auto operator()(_Tp&& __t) const - noexcept(noexcept(_LIBCPP_AUTO_CAST(__t.rend()))) { - return _LIBCPP_AUTO_CAST(__t.rend()); - } - - template - requires __unqualified_rend<_Tp> - [[nodiscard]] _LIBCPP_HIDE_FROM_ABI constexpr auto operator()(_Tp&& __t) const - noexcept(noexcept(_LIBCPP_AUTO_CAST(rend(__t)))) { - return _LIBCPP_AUTO_CAST(rend(__t)); - } - - template - requires __can_reverse<_Tp> - [[nodiscard]] _LIBCPP_HIDE_FROM_ABI constexpr auto operator()(_Tp&& __t) const - noexcept(noexcept(ranges::begin(__t))) { - return std::make_reverse_iterator(ranges::begin(__t)); - } - - void operator()(auto&&) const = delete; -}; -} // namespace __rend - -inline namespace __cpo { -inline constexpr auto rend = __rend::__fn{}; -} // namespace __cpo -} // namespace ranges - -// [range.access.crend] - -namespace ranges { -namespace __crend { -struct __fn { - template - requires is_lvalue_reference_v<_Tp&&> - [[nodiscard]] _LIBCPP_HIDE_FROM_ABI constexpr auto operator()(_Tp&& __t) const - noexcept(noexcept(ranges::rend(static_cast&>(__t)))) - -> decltype(ranges::rend(static_cast&>(__t))) { - return ranges::rend(static_cast&>(__t)); - } - - template - requires is_rvalue_reference_v<_Tp&&> - [[nodiscard]] _LIBCPP_HIDE_FROM_ABI constexpr auto operator()(_Tp&& __t) const - noexcept(noexcept(ranges::rend(static_cast(__t)))) - -> decltype(ranges::rend(static_cast(__t))) { - return ranges::rend(static_cast(__t)); - } -}; -} // namespace __crend - -inline namespace __cpo { -inline constexpr auto crend = __crend::__fn{}; -} // namespace __cpo -} // namespace ranges - -#endif // _LIBCPP_STD_VER >= 20 - -_LIBCPP_END_NAMESPACE_STD - -#endif // _LIBCPP___RANGES_REND_H diff --git a/contrib/libs/cxxsupp/libcxx/include/__ranges/repeat_view.h b/contrib/libs/cxxsupp/libcxx/include/__ranges/repeat_view.h deleted file mode 100644 index 5caea757a..000000000 --- a/contrib/libs/cxxsupp/libcxx/include/__ranges/repeat_view.h +++ /dev/null @@ -1,265 +0,0 @@ -// -*- C++ -*- -//===----------------------------------------------------------------------===// -// -// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. -// See https://llvm.org/LICENSE.txt for license information. -// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception -// -//===----------------------------------------------------------------------===// - -#ifndef _LIBCPP___RANGES_REPEAT_VIEW_H -#define _LIBCPP___RANGES_REPEAT_VIEW_H - -#include <__assert> -#include <__concepts/constructible.h> -#include <__concepts/same_as.h> -#include <__concepts/semiregular.h> -#include <__config> -#include <__iterator/concepts.h> -#include <__iterator/iterator_traits.h> -#include <__iterator/unreachable_sentinel.h> -#include <__memory/addressof.h> -#include <__ranges/iota_view.h> -#include <__ranges/movable_box.h> -#include <__ranges/view_interface.h> -#include <__type_traits/is_object.h> -#include <__type_traits/make_unsigned.h> -#include <__type_traits/remove_cv.h> -#include <__utility/forward.h> -#include <__utility/in_place.h> -#include <__utility/move.h> -#include <__utility/piecewise_construct.h> -#include - -#if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER) -# pragma GCC system_header -#endif - -_LIBCPP_PUSH_MACROS -#include <__undef_macros> - -_LIBCPP_BEGIN_NAMESPACE_STD - -#if _LIBCPP_STD_VER >= 23 - -namespace ranges { - -template -concept __integer_like_with_usable_difference_type = - __signed_integer_like<_Tp> || (__integer_like<_Tp> && weakly_incrementable<_Tp>); - -template -struct __repeat_view_iterator_difference { - using type = _IotaDiffT<_Tp>; -}; - -template <__signed_integer_like _Tp> -struct __repeat_view_iterator_difference<_Tp> { - using type = _Tp; -}; - -template -using __repeat_view_iterator_difference_t = typename __repeat_view_iterator_difference<_Tp>::type; - -namespace views::__drop { -struct __fn; -} // namespace views::__drop - -namespace views::__take { -struct __fn; -} // namespace views::__take - -template - requires(is_object_v<_Tp> && same_as<_Tp, remove_cv_t<_Tp>> && - (__integer_like_with_usable_difference_type<_Bound> || same_as<_Bound, unreachable_sentinel_t>)) -class _LIBCPP_ABI_LLVM18_NO_UNIQUE_ADDRESS repeat_view : public view_interface> { - friend struct views::__take::__fn; - friend struct views::__drop::__fn; - class __iterator; - -public: - _LIBCPP_HIDE_FROM_ABI repeat_view() - requires default_initializable<_Tp> - = default; - - _LIBCPP_HIDE_FROM_ABI constexpr explicit repeat_view(const _Tp& __value, _Bound __bound_sentinel = _Bound()) - requires copy_constructible<_Tp> - : __value_(in_place, __value), __bound_(__bound_sentinel) { - if constexpr (!same_as<_Bound, unreachable_sentinel_t>) - _LIBCPP_ASSERT_UNCATEGORIZED(__bound_ >= 0, "The value of bound must be greater than or equal to 0"); - } - - _LIBCPP_HIDE_FROM_ABI constexpr explicit repeat_view(_Tp&& __value, _Bound __bound_sentinel = _Bound()) - : __value_(in_place, std::move(__value)), __bound_(__bound_sentinel) { - if constexpr (!same_as<_Bound, unreachable_sentinel_t>) - _LIBCPP_ASSERT_UNCATEGORIZED(__bound_ >= 0, "The value of bound must be greater than or equal to 0"); - } - - template - requires(constructible_from<_Tp, _TpArgs...> && constructible_from<_Bound, _BoundArgs...>) - _LIBCPP_HIDE_FROM_ABI constexpr explicit repeat_view( - piecewise_construct_t, tuple<_TpArgs...> __value_args, tuple<_BoundArgs...> __bound_args = tuple<>{}) - : __value_(in_place, std::make_from_tuple<_Tp>(std::move(__value_args))), - __bound_(std::make_from_tuple<_Bound>(std::move(__bound_args))) { - if constexpr (!same_as<_Bound, unreachable_sentinel_t>) - _LIBCPP_ASSERT_UNCATEGORIZED( - __bound_ >= 0, "The behavior is undefined if Bound is not unreachable_sentinel_t and bound is negative"); - } - - _LIBCPP_HIDE_FROM_ABI constexpr __iterator begin() const { return __iterator(std::addressof(*__value_)); } - - _LIBCPP_HIDE_FROM_ABI constexpr __iterator end() const - requires(!same_as<_Bound, unreachable_sentinel_t>) - { - return __iterator(std::addressof(*__value_), __bound_); - } - - _LIBCPP_HIDE_FROM_ABI constexpr unreachable_sentinel_t end() const noexcept { return unreachable_sentinel; } - - _LIBCPP_HIDE_FROM_ABI constexpr auto size() const - requires(!same_as<_Bound, unreachable_sentinel_t>) - { - return std::__to_unsigned_like(__bound_); - } - -private: - _LIBCPP_NO_UNIQUE_ADDRESS __movable_box<_Tp> __value_; - _LIBCPP_NO_UNIQUE_ADDRESS _Bound __bound_ = _Bound(); -}; - -template -repeat_view(_Tp, _Bound) -> repeat_view<_Tp, _Bound>; - -// [range.repeat.iterator] -template - requires(is_object_v<_Tp> && same_as<_Tp, remove_cv_t<_Tp>> && - (__integer_like_with_usable_difference_type<_Bound> || same_as<_Bound, unreachable_sentinel_t>)) -class repeat_view<_Tp, _Bound>::__iterator { - friend class repeat_view; - - using _IndexT = conditional_t, ptrdiff_t, _Bound>; - - _LIBCPP_HIDE_FROM_ABI constexpr explicit __iterator(const _Tp* __value, _IndexT __bound_sentinel = _IndexT()) - : __value_(__value), __current_(__bound_sentinel) {} - -public: - using iterator_concept = random_access_iterator_tag; - using iterator_category = random_access_iterator_tag; - using value_type = _Tp; - using difference_type = __repeat_view_iterator_difference_t<_IndexT>; - - _LIBCPP_HIDE_FROM_ABI __iterator() = default; - - _LIBCPP_HIDE_FROM_ABI constexpr const _Tp& operator*() const noexcept { return *__value_; } - - _LIBCPP_HIDE_FROM_ABI constexpr __iterator& operator++() { - ++__current_; - return *this; - } - - _LIBCPP_HIDE_FROM_ABI constexpr __iterator operator++(int) { - auto __tmp = *this; - ++*this; - return __tmp; - } - - _LIBCPP_HIDE_FROM_ABI constexpr __iterator& operator--() { - if constexpr (!same_as<_Bound, unreachable_sentinel_t>) - _LIBCPP_ASSERT_UNCATEGORIZED(__current_ > 0, "The value of bound must be greater than or equal to 0"); - --__current_; - return *this; - } - - _LIBCPP_HIDE_FROM_ABI constexpr __iterator operator--(int) { - auto __tmp = *this; - --*this; - return __tmp; - } - - _LIBCPP_HIDE_FROM_ABI constexpr __iterator& operator+=(difference_type __n) { - if constexpr (!same_as<_Bound, unreachable_sentinel_t>) - _LIBCPP_ASSERT_UNCATEGORIZED(__current_ + __n >= 0, "The value of bound must be greater than or equal to 0"); - __current_ += __n; - return *this; - } - - _LIBCPP_HIDE_FROM_ABI constexpr __iterator& operator-=(difference_type __n) { - if constexpr (!same_as<_Bound, unreachable_sentinel_t>) - _LIBCPP_ASSERT_UNCATEGORIZED(__current_ - __n >= 0, "The value of bound must be greater than or equal to 0"); - __current_ -= __n; - return *this; - } - - _LIBCPP_HIDE_FROM_ABI constexpr const _Tp& operator[](difference_type __n) const noexcept { return *(*this + __n); } - - _LIBCPP_HIDE_FROM_ABI friend constexpr bool operator==(const __iterator& __x, const __iterator& __y) { - return __x.__current_ == __y.__current_; - } - - _LIBCPP_HIDE_FROM_ABI friend constexpr auto operator<=>(const __iterator& __x, const __iterator& __y) { - return __x.__current_ <=> __y.__current_; - } - - _LIBCPP_HIDE_FROM_ABI friend constexpr __iterator operator+(__iterator __i, difference_type __n) { - __i += __n; - return __i; - } - - _LIBCPP_HIDE_FROM_ABI friend constexpr __iterator operator+(difference_type __n, __iterator __i) { - __i += __n; - return __i; - } - - _LIBCPP_HIDE_FROM_ABI friend constexpr __iterator operator-(__iterator __i, difference_type __n) { - __i -= __n; - return __i; - } - - _LIBCPP_HIDE_FROM_ABI friend constexpr difference_type operator-(const __iterator& __x, const __iterator& __y) { - return static_cast(__x.__current_) - static_cast(__y.__current_); - } - -private: - const _Tp* __value_ = nullptr; - _IndexT __current_ = _IndexT(); -}; - -// clang-format off -namespace views { -namespace __repeat { -struct __fn { - template - _LIBCPP_NODISCARD_EXT _LIBCPP_HIDE_FROM_ABI static constexpr auto operator()(_Tp&& __value) - noexcept(noexcept(ranges::repeat_view(std::forward<_Tp>(__value)))) - -> decltype( ranges::repeat_view(std::forward<_Tp>(__value))) - { return ranges::repeat_view(std::forward<_Tp>(__value)); } - - template - _LIBCPP_NODISCARD_EXT _LIBCPP_HIDE_FROM_ABI static constexpr auto operator()(_Tp&& __value, _Bound&& __bound_sentinel) - noexcept(noexcept(ranges::repeat_view(std::forward<_Tp>(__value), std::forward<_Bound>(__bound_sentinel)))) - -> decltype( ranges::repeat_view(std::forward<_Tp>(__value), std::forward<_Bound>(__bound_sentinel))) - { return ranges::repeat_view(std::forward<_Tp>(__value), std::forward<_Bound>(__bound_sentinel)); } -}; -} // namespace __repeat -// clang-format on - -inline namespace __cpo { -inline constexpr auto repeat = __repeat::__fn{}; -} // namespace __cpo -} // namespace views - -template -inline constexpr bool __is_repeat_specialization = false; - -template -inline constexpr bool __is_repeat_specialization> = true; - -} // namespace ranges - -#endif // _LIBCPP_STD_VER >= 23 - -_LIBCPP_END_NAMESPACE_STD - -_LIBCPP_POP_MACROS - -#endif // _LIBCPP___RANGES_REPEAT_VIEW_H diff --git a/contrib/libs/cxxsupp/libcxx/include/__ranges/reverse_view.h b/contrib/libs/cxxsupp/libcxx/include/__ranges/reverse_view.h deleted file mode 100644 index ddbe89084..000000000 --- a/contrib/libs/cxxsupp/libcxx/include/__ranges/reverse_view.h +++ /dev/null @@ -1,204 +0,0 @@ -// -*- C++ -*- -//===----------------------------------------------------------------------===// -// -// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. -// See https://llvm.org/LICENSE.txt for license information. -// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception -// -//===----------------------------------------------------------------------===// - -#ifndef _LIBCPP___RANGES_REVERSE_VIEW_H -#define _LIBCPP___RANGES_REVERSE_VIEW_H - -#include <__concepts/constructible.h> -#include <__config> -#include <__iterator/concepts.h> -#include <__iterator/next.h> -#include <__iterator/reverse_iterator.h> -#include <__ranges/access.h> -#include <__ranges/all.h> -#include <__ranges/concepts.h> -#include <__ranges/enable_borrowed_range.h> -#include <__ranges/non_propagating_cache.h> -#include <__ranges/range_adaptor.h> -#include <__ranges/size.h> -#include <__ranges/subrange.h> -#include <__ranges/view_interface.h> -#include <__type_traits/conditional.h> -#include <__type_traits/remove_cvref.h> -#include <__utility/forward.h> -#include <__utility/move.h> - -#if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER) -# pragma GCC system_header -#endif - -_LIBCPP_PUSH_MACROS -#include <__undef_macros> - -_LIBCPP_BEGIN_NAMESPACE_STD - -#if _LIBCPP_STD_VER >= 20 - -namespace ranges { -template - requires bidirectional_range<_View> -class reverse_view : public view_interface> { - // We cache begin() whenever ranges::next is not guaranteed O(1) to provide an - // amortized O(1) begin() method. - static constexpr bool _UseCache = !random_access_range<_View> && !common_range<_View>; - using _Cache = _If<_UseCache, __non_propagating_cache>>, __empty_cache>; - _LIBCPP_NO_UNIQUE_ADDRESS _Cache __cached_begin_ = _Cache(); - _LIBCPP_NO_UNIQUE_ADDRESS _View __base_ = _View(); - -public: - _LIBCPP_HIDE_FROM_ABI reverse_view() - requires default_initializable<_View> - = default; - - _LIBCPP_HIDE_FROM_ABI constexpr explicit reverse_view(_View __view) : __base_(std::move(__view)) {} - - _LIBCPP_HIDE_FROM_ABI constexpr _View base() const& - requires copy_constructible<_View> - { - return __base_; - } - - _LIBCPP_HIDE_FROM_ABI constexpr _View base() && { return std::move(__base_); } - - _LIBCPP_HIDE_FROM_ABI constexpr reverse_iterator> begin() { - if constexpr (_UseCache) - if (__cached_begin_.__has_value()) - return *__cached_begin_; - - auto __tmp = std::make_reverse_iterator(ranges::next(ranges::begin(__base_), ranges::end(__base_))); - if constexpr (_UseCache) - __cached_begin_.__emplace(__tmp); - return __tmp; - } - - _LIBCPP_HIDE_FROM_ABI constexpr reverse_iterator> begin() - requires common_range<_View> - { - return std::make_reverse_iterator(ranges::end(__base_)); - } - - _LIBCPP_HIDE_FROM_ABI constexpr auto begin() const - requires common_range - { - return std::make_reverse_iterator(ranges::end(__base_)); - } - - _LIBCPP_HIDE_FROM_ABI constexpr reverse_iterator> end() { - return std::make_reverse_iterator(ranges::begin(__base_)); - } - - _LIBCPP_HIDE_FROM_ABI constexpr auto end() const - requires common_range - { - return std::make_reverse_iterator(ranges::begin(__base_)); - } - - _LIBCPP_HIDE_FROM_ABI constexpr auto size() - requires sized_range<_View> - { - return ranges::size(__base_); - } - - _LIBCPP_HIDE_FROM_ABI constexpr auto size() const - requires sized_range - { - return ranges::size(__base_); - } -}; - -template -reverse_view(_Range&&) -> reverse_view>; - -template -inline constexpr bool enable_borrowed_range> = enable_borrowed_range<_Tp>; - -namespace views { -namespace __reverse { -template -inline constexpr bool __is_reverse_view = false; - -template -inline constexpr bool __is_reverse_view> = true; - -template -inline constexpr bool __is_sized_reverse_subrange = false; - -template -inline constexpr bool - __is_sized_reverse_subrange, reverse_iterator<_Iter>, subrange_kind::sized>> = - true; - -template -inline constexpr bool __is_unsized_reverse_subrange = false; - -template -inline constexpr bool __is_unsized_reverse_subrange, reverse_iterator<_Iter>, _Kind>> = - _Kind == subrange_kind::unsized; - -template -struct __unwrapped_reverse_subrange { - using type = - void; // avoid SFINAE-ing out the overload below -- let the concept requirements do it for better diagnostics -}; - -template -struct __unwrapped_reverse_subrange, reverse_iterator<_Iter>, _Kind>> { - using type = subrange<_Iter, _Iter, _Kind>; -}; - -struct __fn : __range_adaptor_closure<__fn> { - template - requires __is_reverse_view> - [[nodiscard]] _LIBCPP_HIDE_FROM_ABI constexpr auto operator()(_Range&& __range) const - noexcept(noexcept(std::forward<_Range>(__range).base())) -> decltype(std::forward<_Range>(__range).base()) { - return std::forward<_Range>(__range).base(); - } - - template >::type> - requires __is_sized_reverse_subrange> - [[nodiscard]] _LIBCPP_HIDE_FROM_ABI constexpr auto operator()(_Range&& __range) const - noexcept(noexcept(_UnwrappedSubrange(__range.end().base(), __range.begin().base(), __range.size()))) - -> decltype(_UnwrappedSubrange(__range.end().base(), __range.begin().base(), __range.size())) { - return _UnwrappedSubrange(__range.end().base(), __range.begin().base(), __range.size()); - } - - template >::type> - requires __is_unsized_reverse_subrange> - [[nodiscard]] _LIBCPP_HIDE_FROM_ABI constexpr auto operator()(_Range&& __range) const - noexcept(noexcept(_UnwrappedSubrange(__range.end().base(), __range.begin().base()))) - -> decltype(_UnwrappedSubrange(__range.end().base(), __range.begin().base())) { - return _UnwrappedSubrange(__range.end().base(), __range.begin().base()); - } - - template - requires(!__is_reverse_view> && !__is_sized_reverse_subrange> && - !__is_unsized_reverse_subrange>) - [[nodiscard]] _LIBCPP_HIDE_FROM_ABI constexpr auto operator()(_Range&& __range) const - noexcept(noexcept(reverse_view{std::forward<_Range>(__range)})) - -> decltype(reverse_view{std::forward<_Range>(__range)}) { - return reverse_view{std::forward<_Range>(__range)}; - } -}; -} // namespace __reverse - -inline namespace __cpo { -inline constexpr auto reverse = __reverse::__fn{}; -} // namespace __cpo -} // namespace views -} // namespace ranges - -#endif // _LIBCPP_STD_VER >= 20 - -_LIBCPP_END_NAMESPACE_STD - -_LIBCPP_POP_MACROS - -#endif // _LIBCPP___RANGES_REVERSE_VIEW_H diff --git a/contrib/libs/cxxsupp/libcxx/include/__ranges/single_view.h b/contrib/libs/cxxsupp/libcxx/include/__ranges/single_view.h deleted file mode 100644 index f91c7c352..000000000 --- a/contrib/libs/cxxsupp/libcxx/include/__ranges/single_view.h +++ /dev/null @@ -1,109 +0,0 @@ -// -*- C++ -*- -//===----------------------------------------------------------------------===// -// -// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. -// See https://llvm.org/LICENSE.txt for license information. -// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception -// -//===----------------------------------------------------------------------===// - -#ifndef _LIBCPP___RANGES_SINGLE_VIEW_H -#define _LIBCPP___RANGES_SINGLE_VIEW_H - -#include <__concepts/constructible.h> -#include <__config> -#include <__ranges/movable_box.h> -#include <__ranges/range_adaptor.h> -#include <__ranges/view_interface.h> -#include <__type_traits/decay.h> -#include <__type_traits/is_object.h> -#include <__utility/forward.h> -#include <__utility/in_place.h> -#include <__utility/move.h> -#include - -#if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER) -# pragma GCC system_header -#endif - -_LIBCPP_PUSH_MACROS -#include <__undef_macros> - -_LIBCPP_BEGIN_NAMESPACE_STD - -#if _LIBCPP_STD_VER >= 20 - -namespace ranges { -# if _LIBCPP_STD_VER >= 23 -template -# else -template -# endif - requires is_object_v<_Tp> -class _LIBCPP_ABI_LLVM18_NO_UNIQUE_ADDRESS single_view : public view_interface> { - _LIBCPP_NO_UNIQUE_ADDRESS __movable_box<_Tp> __value_; - -public: - _LIBCPP_HIDE_FROM_ABI single_view() - requires default_initializable<_Tp> - = default; - - _LIBCPP_HIDE_FROM_ABI constexpr explicit single_view(const _Tp& __t) -# if _LIBCPP_STD_VER >= 23 - requires copy_constructible<_Tp> -# endif - : __value_(in_place, __t) { - } - - _LIBCPP_HIDE_FROM_ABI constexpr explicit single_view(_Tp&& __t) : __value_(in_place, std::move(__t)) {} - - template - requires constructible_from<_Tp, _Args...> - _LIBCPP_HIDE_FROM_ABI constexpr explicit single_view(in_place_t, _Args&&... __args) - : __value_{in_place, std::forward<_Args>(__args)...} {} - - _LIBCPP_HIDE_FROM_ABI constexpr _Tp* begin() noexcept { return data(); } - - _LIBCPP_HIDE_FROM_ABI constexpr const _Tp* begin() const noexcept { return data(); } - - _LIBCPP_HIDE_FROM_ABI constexpr _Tp* end() noexcept { return data() + 1; } - - _LIBCPP_HIDE_FROM_ABI constexpr const _Tp* end() const noexcept { return data() + 1; } - - _LIBCPP_HIDE_FROM_ABI static constexpr size_t size() noexcept { return 1; } - - _LIBCPP_HIDE_FROM_ABI constexpr _Tp* data() noexcept { return __value_.operator->(); } - - _LIBCPP_HIDE_FROM_ABI constexpr const _Tp* data() const noexcept { return __value_.operator->(); } -}; - -template -single_view(_Tp) -> single_view<_Tp>; - -namespace views { -namespace __single_view { - -struct __fn : __range_adaptor_closure<__fn> { - template - [[nodiscard]] _LIBCPP_HIDE_FROM_ABI constexpr auto operator()(_Range&& __range) const - noexcept(noexcept(single_view>(std::forward<_Range>(__range)))) - -> decltype(single_view>(std::forward<_Range>(__range))) { - return single_view>(std::forward<_Range>(__range)); - } -}; -} // namespace __single_view - -inline namespace __cpo { -inline constexpr auto single = __single_view::__fn{}; -} // namespace __cpo - -} // namespace views -} // namespace ranges - -#endif // _LIBCPP_STD_VER >= 20 - -_LIBCPP_END_NAMESPACE_STD - -_LIBCPP_POP_MACROS - -#endif // _LIBCPP___RANGES_SINGLE_VIEW_H diff --git a/contrib/libs/cxxsupp/libcxx/include/__ranges/split_view.h b/contrib/libs/cxxsupp/libcxx/include/__ranges/split_view.h deleted file mode 100644 index 98f17be04..000000000 --- a/contrib/libs/cxxsupp/libcxx/include/__ranges/split_view.h +++ /dev/null @@ -1,232 +0,0 @@ -// -*- C++ -*- -//===----------------------------------------------------------------------===// -// -// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. -// See https://llvm.org/LICENSE.txt for license information. -// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception -// -//===----------------------------------------------------------------------===// - -#ifndef _LIBCPP___RANGES_SPLIT_VIEW_H -#define _LIBCPP___RANGES_SPLIT_VIEW_H - -#include <__algorithm/ranges_search.h> -#include <__concepts/constructible.h> -#include <__config> -#include <__functional/bind_back.h> -#include <__functional/ranges_operations.h> -#include <__iterator/indirectly_comparable.h> -#include <__iterator/iterator_traits.h> -#include <__memory/addressof.h> -#include <__ranges/access.h> -#include <__ranges/all.h> -#include <__ranges/concepts.h> -#include <__ranges/empty.h> -#include <__ranges/non_propagating_cache.h> -#include <__ranges/range_adaptor.h> -#include <__ranges/single_view.h> -#include <__ranges/subrange.h> -#include <__ranges/view_interface.h> -#include <__type_traits/decay.h> -#include <__type_traits/is_nothrow_constructible.h> -#include <__utility/forward.h> -#include <__utility/move.h> - -#if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER) -# pragma GCC system_header -#endif - -_LIBCPP_PUSH_MACROS -#include <__undef_macros> - -_LIBCPP_BEGIN_NAMESPACE_STD - -#if _LIBCPP_STD_VER >= 20 - -namespace ranges { - -template - requires view<_View> && view<_Pattern> && - indirectly_comparable, iterator_t<_Pattern>, ranges::equal_to> -class split_view : public view_interface> { -private: - _LIBCPP_NO_UNIQUE_ADDRESS _View __base_ = _View(); - _LIBCPP_NO_UNIQUE_ADDRESS _Pattern __pattern_ = _Pattern(); - using _Cache = __non_propagating_cache>>; - _Cache __cached_begin_ = _Cache(); - - template - friend struct __iterator; - - template - friend struct __sentinel; - - struct __iterator; - struct __sentinel; - - _LIBCPP_HIDE_FROM_ABI constexpr subrange> __find_next(iterator_t<_View> __it) { - auto [__begin, __end] = ranges::search(subrange(__it, ranges::end(__base_)), __pattern_); - if (__begin != ranges::end(__base_) && ranges::empty(__pattern_)) { - ++__begin; - ++__end; - } - return {__begin, __end}; - } - -public: - _LIBCPP_HIDE_FROM_ABI split_view() - requires default_initializable<_View> && default_initializable<_Pattern> - = default; - - _LIBCPP_HIDE_FROM_ABI constexpr _LIBCPP_EXPLICIT_SINCE_CXX23 split_view(_View __base, _Pattern __pattern) - : __base_(std::move(__base)), __pattern_(std::move((__pattern))) {} - - template - requires constructible_from<_View, views::all_t<_Range>> && - constructible_from<_Pattern, single_view>> - _LIBCPP_HIDE_FROM_ABI constexpr _LIBCPP_EXPLICIT_SINCE_CXX23 - split_view(_Range&& __range, range_value_t<_Range> __elem) - : __base_(views::all(std::forward<_Range>(__range))), __pattern_(views::single(std::move(__elem))) {} - - _LIBCPP_HIDE_FROM_ABI constexpr _View base() const& - requires copy_constructible<_View> - { - return __base_; - } - - _LIBCPP_HIDE_FROM_ABI constexpr _View base() && { return std::move(__base_); } - - _LIBCPP_HIDE_FROM_ABI constexpr __iterator begin() { - if (!__cached_begin_.__has_value()) { - __cached_begin_.__emplace(__find_next(ranges::begin(__base_))); - } - return {*this, ranges::begin(__base_), *__cached_begin_}; - } - - _LIBCPP_HIDE_FROM_ABI constexpr auto end() { - if constexpr (common_range<_View>) { - return __iterator{*this, ranges::end(__base_), {}}; - } else { - return __sentinel{*this}; - } - } -}; - -template -split_view(_Range&&, _Pattern&&) -> split_view, views::all_t<_Pattern>>; - -template -split_view(_Range&&, range_value_t<_Range>) -> split_view, single_view>>; - -template - requires view<_View> && view<_Pattern> && - indirectly_comparable, iterator_t<_Pattern>, ranges::equal_to> -struct split_view<_View, _Pattern>::__iterator { -private: - split_view* __parent_ = nullptr; - _LIBCPP_NO_UNIQUE_ADDRESS iterator_t<_View> __cur_ = iterator_t<_View>(); - _LIBCPP_NO_UNIQUE_ADDRESS subrange> __next_ = subrange>(); - bool __trailing_empty_ = false; - - friend struct __sentinel; - -public: - using iterator_concept = forward_iterator_tag; - using iterator_category = input_iterator_tag; - using value_type = subrange>; - using difference_type = range_difference_t<_View>; - - _LIBCPP_HIDE_FROM_ABI __iterator() = default; - - _LIBCPP_HIDE_FROM_ABI constexpr __iterator( - split_view<_View, _Pattern>& __parent, iterator_t<_View> __current, subrange> __next) - : __parent_(std::addressof(__parent)), __cur_(std::move(__current)), __next_(std::move(__next)) {} - - _LIBCPP_HIDE_FROM_ABI constexpr iterator_t<_View> base() const { return __cur_; } - - _LIBCPP_HIDE_FROM_ABI constexpr value_type operator*() const { return {__cur_, __next_.begin()}; } - - _LIBCPP_HIDE_FROM_ABI constexpr __iterator& operator++() { - __cur_ = __next_.begin(); - if (__cur_ != ranges::end(__parent_->__base_)) { - __cur_ = __next_.end(); - if (__cur_ == ranges::end(__parent_->__base_)) { - __trailing_empty_ = true; - __next_ = {__cur_, __cur_}; - } else { - __next_ = __parent_->__find_next(__cur_); - } - } else { - __trailing_empty_ = false; - } - return *this; - } - - _LIBCPP_HIDE_FROM_ABI constexpr __iterator operator++(int) { - auto __tmp = *this; - ++*this; - return __tmp; - } - - _LIBCPP_HIDE_FROM_ABI friend constexpr bool operator==(const __iterator& __x, const __iterator& __y) { - return __x.__cur_ == __y.__cur_ && __x.__trailing_empty_ == __y.__trailing_empty_; - } -}; - -template - requires view<_View> && view<_Pattern> && - indirectly_comparable, iterator_t<_Pattern>, ranges::equal_to> -struct split_view<_View, _Pattern>::__sentinel { -private: - _LIBCPP_NO_UNIQUE_ADDRESS sentinel_t<_View> __end_ = sentinel_t<_View>(); - - _LIBCPP_HIDE_FROM_ABI static constexpr bool __equals(const __iterator& __x, const __sentinel& __y) { - return __x.__cur_ == __y.__end_ && !__x.__trailing_empty_; - } - -public: - _LIBCPP_HIDE_FROM_ABI __sentinel() = default; - - _LIBCPP_HIDE_FROM_ABI constexpr explicit __sentinel(split_view<_View, _Pattern>& __parent) - : __end_(ranges::end(__parent.__base_)) {} - - _LIBCPP_HIDE_FROM_ABI friend constexpr bool operator==(const __iterator& __x, const __sentinel& __y) { - return __equals(__x, __y); - } -}; - -namespace views { -namespace __split_view { -struct __fn { - // clang-format off - template - _LIBCPP_NODISCARD_EXT _LIBCPP_HIDE_FROM_ABI - constexpr auto operator()(_Range&& __range, _Pattern&& __pattern) const - noexcept(noexcept(split_view(std::forward<_Range>(__range), std::forward<_Pattern>(__pattern)))) - -> decltype( split_view(std::forward<_Range>(__range), std::forward<_Pattern>(__pattern))) - { return split_view(std::forward<_Range>(__range), std::forward<_Pattern>(__pattern)); } - // clang-format on - - template - requires constructible_from, _Pattern> - _LIBCPP_NODISCARD_EXT _LIBCPP_HIDE_FROM_ABI constexpr auto operator()(_Pattern&& __pattern) const - noexcept(is_nothrow_constructible_v, _Pattern>) { - return __range_adaptor_closure_t(std::__bind_back(*this, std::forward<_Pattern>(__pattern))); - } -}; -} // namespace __split_view - -inline namespace __cpo { -inline constexpr auto split = __split_view::__fn{}; -} // namespace __cpo -} // namespace views - -} // namespace ranges - -#endif // _LIBCPP_STD_VER >= 20 - -_LIBCPP_END_NAMESPACE_STD - -_LIBCPP_POP_MACROS - -#endif // _LIBCPP___RANGES_SPLIT_VIEW_H diff --git a/contrib/libs/cxxsupp/libcxx/include/__ranges/take_view.h b/contrib/libs/cxxsupp/libcxx/include/__ranges/take_view.h deleted file mode 100644 index 83ed5ca0e..000000000 --- a/contrib/libs/cxxsupp/libcxx/include/__ranges/take_view.h +++ /dev/null @@ -1,369 +0,0 @@ -// -*- C++ -*- -//===----------------------------------------------------------------------===// -// -// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. -// See https://llvm.org/LICENSE.txt for license information. -// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception -// -//===----------------------------------------------------------------------===// - -#ifndef _LIBCPP___RANGES_TAKE_VIEW_H -#define _LIBCPP___RANGES_TAKE_VIEW_H - -#include <__algorithm/min.h> -#include <__algorithm/ranges_min.h> -#include <__assert> -#include <__concepts/constructible.h> -#include <__concepts/convertible_to.h> -#include <__config> -#include <__functional/bind_back.h> -#include <__fwd/span.h> -#include <__fwd/string_view.h> -#include <__iterator/concepts.h> -#include <__iterator/counted_iterator.h> -#include <__iterator/default_sentinel.h> -#include <__iterator/distance.h> -#include <__iterator/iterator_traits.h> -#include <__ranges/access.h> -#include <__ranges/all.h> -#include <__ranges/concepts.h> -#include <__ranges/empty_view.h> -#include <__ranges/enable_borrowed_range.h> -#include <__ranges/iota_view.h> -#include <__ranges/range_adaptor.h> -#include <__ranges/repeat_view.h> -#include <__ranges/size.h> -#include <__ranges/subrange.h> -#include <__ranges/view_interface.h> -#include <__type_traits/decay.h> -#include <__type_traits/is_nothrow_constructible.h> -#include <__type_traits/maybe_const.h> -#include <__type_traits/remove_cvref.h> -#include <__utility/auto_cast.h> -#include <__utility/forward.h> -#include <__utility/move.h> -#include - -#if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER) -# pragma GCC system_header -#endif - -_LIBCPP_PUSH_MACROS -#include <__undef_macros> - -_LIBCPP_BEGIN_NAMESPACE_STD - -#if _LIBCPP_STD_VER >= 20 - -namespace ranges { - -template -class take_view : public view_interface> { - _LIBCPP_NO_UNIQUE_ADDRESS _View __base_ = _View(); - range_difference_t<_View> __count_ = 0; - - template - class __sentinel; - -public: - _LIBCPP_HIDE_FROM_ABI take_view() - requires default_initializable<_View> - = default; - - _LIBCPP_HIDE_FROM_ABI constexpr _LIBCPP_EXPLICIT_SINCE_CXX23 - take_view(_View __base, range_difference_t<_View> __count) - : __base_(std::move(__base)), __count_(__count) { - _LIBCPP_ASSERT_UNCATEGORIZED(__count >= 0, "count has to be greater than or equal to zero"); - } - - _LIBCPP_HIDE_FROM_ABI constexpr _View base() const& - requires copy_constructible<_View> - { - return __base_; - } - - _LIBCPP_HIDE_FROM_ABI constexpr _View base() && { return std::move(__base_); } - - _LIBCPP_HIDE_FROM_ABI constexpr auto begin() - requires(!__simple_view<_View>) - { - if constexpr (sized_range<_View>) { - if constexpr (random_access_range<_View>) { - return ranges::begin(__base_); - } else { - using _DifferenceT = range_difference_t<_View>; - auto __size = size(); - return counted_iterator(ranges::begin(__base_), static_cast<_DifferenceT>(__size)); - } - } else { - return counted_iterator(ranges::begin(__base_), __count_); - } - } - - _LIBCPP_HIDE_FROM_ABI constexpr auto begin() const - requires range - { - if constexpr (sized_range) { - if constexpr (random_access_range) { - return ranges::begin(__base_); - } else { - using _DifferenceT = range_difference_t; - auto __size = size(); - return counted_iterator(ranges::begin(__base_), static_cast<_DifferenceT>(__size)); - } - } else { - return counted_iterator(ranges::begin(__base_), __count_); - } - } - - _LIBCPP_HIDE_FROM_ABI constexpr auto end() - requires(!__simple_view<_View>) - { - if constexpr (sized_range<_View>) { - if constexpr (random_access_range<_View>) { - return ranges::begin(__base_) + size(); - } else { - return default_sentinel; - } - } else { - return __sentinel{ranges::end(__base_)}; - } - } - - _LIBCPP_HIDE_FROM_ABI constexpr auto end() const - requires range - { - if constexpr (sized_range) { - if constexpr (random_access_range) { - return ranges::begin(__base_) + size(); - } else { - return default_sentinel; - } - } else { - return __sentinel{ranges::end(__base_)}; - } - } - - _LIBCPP_HIDE_FROM_ABI constexpr auto size() - requires sized_range<_View> - { - auto __n = ranges::size(__base_); - return ranges::min(__n, static_cast(__count_)); - } - - _LIBCPP_HIDE_FROM_ABI constexpr auto size() const - requires sized_range - { - auto __n = ranges::size(__base_); - return ranges::min(__n, static_cast(__count_)); - } -}; - -template -template -class take_view<_View>::__sentinel { - using _Base = __maybe_const<_Const, _View>; - template - using _Iter = counted_iterator>>; - _LIBCPP_NO_UNIQUE_ADDRESS sentinel_t<_Base> __end_ = sentinel_t<_Base>(); - - template - friend class take_view<_View>::__sentinel; - -public: - _LIBCPP_HIDE_FROM_ABI __sentinel() = default; - - _LIBCPP_HIDE_FROM_ABI constexpr explicit __sentinel(sentinel_t<_Base> __end) : __end_(std::move(__end)) {} - - _LIBCPP_HIDE_FROM_ABI constexpr __sentinel(__sentinel __s) - requires _Const && convertible_to, sentinel_t<_Base>> - : __end_(std::move(__s.__end_)) {} - - _LIBCPP_HIDE_FROM_ABI constexpr sentinel_t<_Base> base() const { return __end_; } - - _LIBCPP_HIDE_FROM_ABI friend constexpr bool operator==(const _Iter<_Const>& __lhs, const __sentinel& __rhs) { - return __lhs.count() == 0 || __lhs.base() == __rhs.__end_; - } - - template - requires sentinel_for, iterator_t<__maybe_const<_OtherConst, _View>>> - _LIBCPP_HIDE_FROM_ABI friend constexpr bool operator==(const _Iter<_OtherConst>& __lhs, const __sentinel& __rhs) { - return __lhs.count() == 0 || __lhs.base() == __rhs.__end_; - } -}; - -template -take_view(_Range&&, range_difference_t<_Range>) -> take_view>; - -template -inline constexpr bool enable_borrowed_range> = enable_borrowed_range<_Tp>; - -namespace views { -namespace __take { - -template -inline constexpr bool __is_empty_view = false; - -template -inline constexpr bool __is_empty_view> = true; - -template -inline constexpr bool __is_passthrough_specialization = false; - -template -inline constexpr bool __is_passthrough_specialization> = true; - -template -inline constexpr bool __is_passthrough_specialization> = true; - -template -inline constexpr bool __is_passthrough_specialization> = true; - -template -inline constexpr bool __is_iota_specialization = false; - -template -inline constexpr bool __is_iota_specialization> = true; - -template -struct __passthrough_type; - -template -struct __passthrough_type> { - using type = span<_Tp>; -}; - -template -struct __passthrough_type> { - using type = basic_string_view<_CharT, _Traits>; -}; - -template - requires requires { typename subrange<_Iter>; } -struct __passthrough_type> { - using type = subrange<_Iter>; -}; - -template -using __passthrough_type_t = typename __passthrough_type<_Tp>::type; - -struct __fn { - // [range.take.overview]: the `empty_view` case. - template > _Np> - requires __is_empty_view> - [[nodiscard]] _LIBCPP_HIDE_FROM_ABI constexpr auto operator()(_Range&& __range, _Np&&) const - noexcept(noexcept(_LIBCPP_AUTO_CAST(std::forward<_Range>(__range)))) - -> decltype(_LIBCPP_AUTO_CAST(std::forward<_Range>(__range))) { - return _LIBCPP_AUTO_CAST(std::forward<_Range>(__range)); - } - - // [range.take.overview]: the `span | basic_string_view | subrange` case. - template > _Np, - class _RawRange = remove_cvref_t<_Range>, - class _Dist = range_difference_t<_Range>> - requires(!__is_empty_view<_RawRange> && random_access_range<_RawRange> && sized_range<_RawRange> && - __is_passthrough_specialization<_RawRange>) - [[nodiscard]] _LIBCPP_HIDE_FROM_ABI constexpr auto - operator()(_Range&& __rng, _Np&& __n) const noexcept(noexcept(__passthrough_type_t<_RawRange>( - ranges::begin(__rng), ranges::begin(__rng) + std::min<_Dist>(ranges::distance(__rng), std::forward<_Np>(__n))))) - -> decltype(__passthrough_type_t<_RawRange>( - // Note: deliberately not forwarding `__rng` to guard against double moves. - ranges::begin(__rng), - ranges::begin(__rng) + std::min<_Dist>(ranges::distance(__rng), std::forward<_Np>(__n)))) { - return __passthrough_type_t<_RawRange>( - ranges::begin(__rng), ranges::begin(__rng) + std::min<_Dist>(ranges::distance(__rng), std::forward<_Np>(__n))); - } - - // [range.take.overview]: the `iota_view` case. - // clang-format off - template > _Np, - class _RawRange = remove_cvref_t<_Range>, - class _Dist = range_difference_t<_Range>> - requires (!__is_empty_view<_RawRange> && - random_access_range<_RawRange> && - sized_range<_RawRange> && - __is_iota_specialization<_RawRange>) - [[nodiscard]] _LIBCPP_HIDE_FROM_ABI - constexpr auto operator()(_Range&& __rng, _Np&& __n) const - noexcept(noexcept(ranges::iota_view( - *ranges::begin(__rng), - *(ranges::begin(__rng) + std::min<_Dist>(ranges::distance(__rng), std::forward<_Np>(__n))) - ))) - -> decltype( ranges::iota_view( - // Note: deliberately not forwarding `__rng` to guard against double moves. - *ranges::begin(__rng), - *(ranges::begin(__rng) + std::min<_Dist>(ranges::distance(__rng), std::forward<_Np>(__n))) - )) - { return ranges::iota_view( - *ranges::begin(__rng), - *(ranges::begin(__rng) + std::min<_Dist>(ranges::distance(__rng), std::forward<_Np>(__n))) - ); } - -#if _LIBCPP_STD_VER >= 23 - // [range.take.overview]: the `repeat_view` "_RawRange models sized_range" case. - template > _Np, - class _RawRange = remove_cvref_t<_Range>, - class _Dist = range_difference_t<_Range>> - requires(__is_repeat_specialization<_RawRange> && sized_range<_RawRange>) - _LIBCPP_NODISCARD_EXT _LIBCPP_HIDE_FROM_ABI constexpr auto operator()(_Range&& __range, _Np&& __n) const - noexcept(noexcept(views::repeat(*__range.__value_, std::min<_Dist>(ranges::distance(__range), std::forward<_Np>(__n))))) - -> decltype( views::repeat(*__range.__value_, std::min<_Dist>(ranges::distance(__range), std::forward<_Np>(__n)))) - { return views::repeat(*__range.__value_, std::min<_Dist>(ranges::distance(__range), std::forward<_Np>(__n))); } - - // [range.take.overview]: the `repeat_view` "otherwise" case. - template > _Np, - class _RawRange = remove_cvref_t<_Range>, - class _Dist = range_difference_t<_Range>> - requires(__is_repeat_specialization<_RawRange> && !sized_range<_RawRange>) - _LIBCPP_NODISCARD_EXT _LIBCPP_HIDE_FROM_ABI constexpr auto operator()(_Range&& __range, _Np&& __n) const - noexcept(noexcept(views::repeat(*__range.__value_, static_cast<_Dist>(__n)))) - -> decltype( views::repeat(*__range.__value_, static_cast<_Dist>(__n))) - { return views::repeat(*__range.__value_, static_cast<_Dist>(__n)); } -#endif - // clang-format on - - // [range.take.overview]: the "otherwise" case. - template > _Np, class _RawRange = remove_cvref_t<_Range>> - // Note: without specifically excluding the other cases, GCC sees this overload as ambiguous with the other - // overloads. - requires(!(__is_empty_view<_RawRange> || -# if _LIBCPP_STD_VER >= 23 - __is_repeat_specialization<_RawRange> || -# endif - (__is_iota_specialization<_RawRange> && sized_range<_RawRange> && random_access_range<_RawRange>) || - (__is_passthrough_specialization<_RawRange> && sized_range<_RawRange> && - random_access_range<_RawRange>))) - [[nodiscard]] _LIBCPP_HIDE_FROM_ABI constexpr auto operator()(_Range&& __range, _Np&& __n) const - noexcept(noexcept(take_view(std::forward<_Range>(__range), std::forward<_Np>(__n)))) - -> decltype(take_view(std::forward<_Range>(__range), std::forward<_Np>(__n))) { - return take_view(std::forward<_Range>(__range), std::forward<_Np>(__n)); - } - - template - requires constructible_from, _Np> - [[nodiscard]] _LIBCPP_HIDE_FROM_ABI constexpr auto operator()(_Np&& __n) const - noexcept(is_nothrow_constructible_v, _Np>) { - return __range_adaptor_closure_t(std::__bind_back(*this, std::forward<_Np>(__n))); - } -}; - -} // namespace __take - -inline namespace __cpo { -inline constexpr auto take = __take::__fn{}; -} // namespace __cpo -} // namespace views - -} // namespace ranges - -#endif // _LIBCPP_STD_VER >= 20 - -_LIBCPP_END_NAMESPACE_STD - -_LIBCPP_POP_MACROS - -#endif // _LIBCPP___RANGES_TAKE_VIEW_H diff --git a/contrib/libs/cxxsupp/libcxx/include/__ranges/take_while_view.h b/contrib/libs/cxxsupp/libcxx/include/__ranges/take_while_view.h deleted file mode 100644 index 77ea9f7bb..000000000 --- a/contrib/libs/cxxsupp/libcxx/include/__ranges/take_while_view.h +++ /dev/null @@ -1,170 +0,0 @@ -// -*- C++ -*- -//===----------------------------------------------------------------------===// -// -// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. -// See https://llvm.org/LICENSE.txt for license information. -// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception -// -//===----------------------------------------------------------------------===// - -#ifndef _LIBCPP___RANGES_TAKE_WHILE_VIEW_H -#define _LIBCPP___RANGES_TAKE_WHILE_VIEW_H - -#include <__concepts/constructible.h> -#include <__concepts/convertible_to.h> -#include <__config> -#include <__functional/bind_back.h> -#include <__functional/invoke.h> -#include <__iterator/concepts.h> -#include <__memory/addressof.h> -#include <__ranges/access.h> -#include <__ranges/all.h> -#include <__ranges/concepts.h> -#include <__ranges/movable_box.h> -#include <__ranges/range_adaptor.h> -#include <__ranges/view_interface.h> -#include <__type_traits/decay.h> -#include <__type_traits/is_nothrow_constructible.h> -#include <__type_traits/is_object.h> -#include <__type_traits/maybe_const.h> -#include <__utility/forward.h> -#include <__utility/in_place.h> -#include <__utility/move.h> - -#if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER) -# pragma GCC system_header -#endif - -_LIBCPP_PUSH_MACROS -#include <__undef_macros> - -_LIBCPP_BEGIN_NAMESPACE_STD - -#if _LIBCPP_STD_VER >= 20 - -namespace ranges { - -template - requires input_range<_View> && is_object_v<_Pred> && indirect_unary_predicate> -class _LIBCPP_ABI_LLVM18_NO_UNIQUE_ADDRESS take_while_view : public view_interface> { - template - class __sentinel; - - _LIBCPP_NO_UNIQUE_ADDRESS _View __base_ = _View(); - _LIBCPP_NO_UNIQUE_ADDRESS __movable_box<_Pred> __pred_; - -public: - _LIBCPP_HIDE_FROM_ABI take_while_view() - requires default_initializable<_View> && default_initializable<_Pred> - = default; - - _LIBCPP_HIDE_FROM_ABI constexpr _LIBCPP_EXPLICIT_SINCE_CXX23 take_while_view(_View __base, _Pred __pred) - : __base_(std::move(__base)), __pred_(std::in_place, std::move(__pred)) {} - - _LIBCPP_HIDE_FROM_ABI constexpr _View base() const& - requires copy_constructible<_View> - { - return __base_; - } - - _LIBCPP_HIDE_FROM_ABI constexpr _View base() && { return std::move(__base_); } - - _LIBCPP_HIDE_FROM_ABI constexpr const _Pred& pred() const { return *__pred_; } - - _LIBCPP_HIDE_FROM_ABI constexpr auto begin() - requires(!__simple_view<_View>) - { - return ranges::begin(__base_); - } - - _LIBCPP_HIDE_FROM_ABI constexpr auto begin() const - requires range && indirect_unary_predicate> - { - return ranges::begin(__base_); - } - - _LIBCPP_HIDE_FROM_ABI constexpr auto end() - requires(!__simple_view<_View>) - { - return __sentinel(ranges::end(__base_), std::addressof(*__pred_)); - } - - _LIBCPP_HIDE_FROM_ABI constexpr auto end() const - requires range && indirect_unary_predicate> - { - return __sentinel(ranges::end(__base_), std::addressof(*__pred_)); - } -}; - -template -take_while_view(_Range&&, _Pred) -> take_while_view, _Pred>; - -template - requires input_range<_View> && is_object_v<_Pred> && indirect_unary_predicate> -template -class take_while_view<_View, _Pred>::__sentinel { - using _Base = __maybe_const<_Const, _View>; - - sentinel_t<_Base> __end_ = sentinel_t<_Base>(); - const _Pred* __pred_ = nullptr; - - friend class __sentinel; - -public: - _LIBCPP_HIDE_FROM_ABI __sentinel() = default; - - _LIBCPP_HIDE_FROM_ABI constexpr explicit __sentinel(sentinel_t<_Base> __end, const _Pred* __pred) - : __end_(std::move(__end)), __pred_(__pred) {} - - _LIBCPP_HIDE_FROM_ABI constexpr __sentinel(__sentinel __s) - requires _Const && convertible_to, sentinel_t<_Base>> - : __end_(std::move(__s.__end_)), __pred_(__s.__pred_) {} - - _LIBCPP_HIDE_FROM_ABI constexpr sentinel_t<_Base> base() const { return __end_; } - - _LIBCPP_HIDE_FROM_ABI friend constexpr bool operator==(const iterator_t<_Base>& __x, const __sentinel& __y) { - return __x == __y.__end_ || !std::invoke(*__y.__pred_, *__x); - } - - template - requires sentinel_for, iterator_t<__maybe_const<_OtherConst, _View>>> - _LIBCPP_HIDE_FROM_ABI friend constexpr bool - operator==(const iterator_t<__maybe_const<_OtherConst, _View>>& __x, const __sentinel& __y) { - return __x == __y.__end_ || !std::invoke(*__y.__pred_, *__x); - } -}; - -namespace views { -namespace __take_while { - -struct __fn { - template - [[nodiscard]] _LIBCPP_HIDE_FROM_ABI constexpr auto operator()(_Range&& __range, _Pred&& __pred) const - noexcept(noexcept(/**/ take_while_view(std::forward<_Range>(__range), std::forward<_Pred>(__pred)))) - -> decltype(/*--*/ take_while_view(std::forward<_Range>(__range), std::forward<_Pred>(__pred))) { - return /*-------------*/ take_while_view(std::forward<_Range>(__range), std::forward<_Pred>(__pred)); - } - - template - requires constructible_from, _Pred> - [[nodiscard]] _LIBCPP_HIDE_FROM_ABI constexpr auto operator()(_Pred&& __pred) const - noexcept(is_nothrow_constructible_v, _Pred>) { - return __range_adaptor_closure_t(std::__bind_back(*this, std::forward<_Pred>(__pred))); - } -}; - -} // namespace __take_while - -inline namespace __cpo { -inline constexpr auto take_while = __take_while::__fn{}; -} // namespace __cpo -} // namespace views -} // namespace ranges - -#endif // _LIBCPP_STD_VER >= 20 - -_LIBCPP_END_NAMESPACE_STD - -_LIBCPP_POP_MACROS - -#endif // _LIBCPP___RANGES_TAKE_WHILE_VIEW_H diff --git a/contrib/libs/cxxsupp/libcxx/include/__ranges/to.h b/contrib/libs/cxxsupp/libcxx/include/__ranges/to.h deleted file mode 100644 index 67818c521..000000000 --- a/contrib/libs/cxxsupp/libcxx/include/__ranges/to.h +++ /dev/null @@ -1,244 +0,0 @@ -// -*- C++ -*- -//===----------------------------------------------------------------------===// -// -// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. -// See https://llvm.org/LICENSE.txt for license information. -// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception -// -//===----------------------------------------------------------------------===// - -#ifndef _LIBCPP___RANGES_TO_H -#define _LIBCPP___RANGES_TO_H - -#include <__algorithm/ranges_copy.h> -#include <__concepts/constructible.h> -#include <__concepts/convertible_to.h> -#include <__concepts/derived_from.h> -#include <__concepts/same_as.h> -#include <__config> -#include <__functional/bind_back.h> -#include <__iterator/back_insert_iterator.h> -#include <__iterator/insert_iterator.h> -#include <__iterator/iterator_traits.h> -#include <__ranges/access.h> -#include <__ranges/concepts.h> -#include <__ranges/from_range.h> -#include <__ranges/range_adaptor.h> -#include <__ranges/size.h> -#include <__ranges/transform_view.h> -#include <__type_traits/add_pointer.h> -#include <__type_traits/is_const.h> -#include <__type_traits/is_volatile.h> -#include <__type_traits/type_identity.h> -#include <__utility/declval.h> -#include <__utility/forward.h> -#include - -#if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER) -# pragma GCC system_header -#endif - -_LIBCPP_BEGIN_NAMESPACE_STD - -#if _LIBCPP_STD_VER >= 23 - -namespace ranges { - -template -constexpr bool __reservable_container = - sized_range<_Container> && requires(_Container& __c, range_size_t<_Container> __n) { - __c.reserve(__n); - { __c.capacity() } -> same_as; - { __c.max_size() } -> same_as; - }; - -template -constexpr bool __container_insertable = requires(_Container& __c, _Ref&& __ref) { - requires( - requires { __c.push_back(std::forward<_Ref>(__ref)); } || - requires { __c.insert(__c.end(), std::forward<_Ref>(__ref)); }); -}; - -template -_LIBCPP_HIDE_FROM_ABI constexpr auto __container_inserter(_Container& __c) { - if constexpr (requires { __c.push_back(std::declval<_Ref>()); }) { - return std::back_inserter(__c); - } else { - return std::inserter(__c, __c.end()); - } -} - -// Note: making this a concept allows short-circuiting the second condition. -template -concept __try_non_recursive_conversion = - !input_range<_Container> || convertible_to, range_value_t<_Container>>; - -template -concept __constructible_from_iter_pair = - common_range<_Range> && requires { typename iterator_traits>::iterator_category; } && - derived_from>::iterator_category, input_iterator_tag> && - constructible_from<_Container, iterator_t<_Range>, sentinel_t<_Range>, _Args...>; - -template -concept __always_false = false; - -// `ranges::to` base template -- the `_Container` type is a simple type template parameter. -template - requires(!view<_Container>) -_LIBCPP_NODISCARD_EXT _LIBCPP_HIDE_FROM_ABI constexpr _Container to(_Range&& __range, _Args&&... __args) { - // Mandates: C is a cv-unqualified class type. - static_assert(!is_const_v<_Container>, "The target container cannot be const-qualified, please remove the const"); - static_assert( - !is_volatile_v<_Container>, "The target container cannot be volatile-qualified, please remove the volatile"); - - // First see if the non-recursive case applies -- the conversion target is either: - // - a range with a convertible value type; - // - a non-range type which might support being created from the input argument(s) (e.g. an `optional`). - if constexpr (__try_non_recursive_conversion<_Container, _Range>) { - // Case 1 -- construct directly from the given range. - if constexpr (constructible_from<_Container, _Range, _Args...>) { - return _Container(std::forward<_Range>(__range), std::forward<_Args>(__args)...); - } - - // Case 2 -- construct using the `from_range_t` tagged constructor. - else if constexpr (constructible_from<_Container, from_range_t, _Range, _Args...>) { - return _Container(from_range, std::forward<_Range>(__range), std::forward<_Args>(__args)...); - } - - // Case 3 -- construct from a begin-end iterator pair. - else if constexpr (__constructible_from_iter_pair<_Container, _Range, _Args...>) { - return _Container(ranges::begin(__range), ranges::end(__range), std::forward<_Args>(__args)...); - } - - // Case 4 -- default-construct (or construct from the extra arguments) and insert, reserving the size if possible. - else if constexpr (constructible_from<_Container, _Args...> && - __container_insertable<_Container, range_reference_t<_Range>>) { - _Container __result(std::forward<_Args>(__args)...); - if constexpr (sized_range<_Range> && __reservable_container<_Container>) { - __result.reserve(static_cast>(ranges::size(__range))); - } - - ranges::copy(__range, ranges::__container_inserter>(__result)); - - return __result; - - } else { - static_assert(__always_false<_Container>, "ranges::to: unable to convert to the given container type."); - } - - // Try the recursive case. - } else if constexpr (input_range>) { - return ranges::to<_Container>( - __range | views::transform([](auto&& __elem) { - return ranges::to>(std::forward(__elem)); - }), - std::forward<_Args>(__args)...); - - } else { - static_assert(__always_false<_Container>, "ranges::to: unable to convert to the given container type."); - } -} - -template -struct __minimal_input_iterator { - using iterator_category = input_iterator_tag; - using value_type = range_value_t<_Range>; - using difference_type = ptrdiff_t; - using pointer = add_pointer_t>; - using reference = range_reference_t<_Range>; - - reference operator*() const; - pointer operator->() const; - __minimal_input_iterator& operator++(); - __minimal_input_iterator operator++(int); - bool operator==(const __minimal_input_iterator&) const; -}; - -// Deduces the full type of the container from the given template template parameter. -template