couchbase 3.5.0 → 3.5.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (1373) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +1 -1
  3. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/any_completion_executor.hpp +336 -0
  4. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/any_completion_handler.hpp +812 -0
  5. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/any_io_executor.hpp +351 -0
  6. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/append.hpp +65 -0
  7. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/as_tuple.hpp +126 -0
  8. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/associated_allocator.hpp +214 -0
  9. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/associated_cancellation_slot.hpp +221 -0
  10. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/associated_executor.hpp +235 -0
  11. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/associated_immediate_executor.hpp +280 -0
  12. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/async_result.hpp +893 -0
  13. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/basic_datagram_socket.hpp +1362 -0
  14. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/basic_deadline_timer.hpp +710 -0
  15. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/basic_file.hpp +824 -0
  16. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/basic_io_object.hpp +286 -0
  17. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/basic_random_access_file.hpp +689 -0
  18. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/basic_raw_socket.hpp +1356 -0
  19. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/basic_readable_pipe.hpp +626 -0
  20. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/basic_seq_packet_socket.hpp +823 -0
  21. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/basic_serial_port.hpp +987 -0
  22. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/basic_signal_set.hpp +648 -0
  23. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/basic_socket.hpp +1936 -0
  24. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/basic_socket_acceptor.hpp +2708 -0
  25. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/basic_socket_iostream.hpp +331 -0
  26. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/basic_socket_streambuf.hpp +642 -0
  27. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/basic_stream_file.hpp +744 -0
  28. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/basic_stream_socket.hpp +1163 -0
  29. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/basic_streambuf.hpp +450 -0
  30. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/basic_streambuf_fwd.hpp +36 -0
  31. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/basic_waitable_timer.hpp +824 -0
  32. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/basic_writable_pipe.hpp +622 -0
  33. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/bind_allocator.hpp +524 -0
  34. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/bind_cancellation_slot.hpp +536 -0
  35. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/bind_executor.hpp +576 -0
  36. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/bind_immediate_executor.hpp +543 -0
  37. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/buffer.hpp +2751 -0
  38. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/buffer_registration.hpp +318 -0
  39. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/buffered_read_stream.hpp +273 -0
  40. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/buffered_stream.hpp +292 -0
  41. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/buffered_write_stream.hpp +265 -0
  42. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/buffers_iterator.hpp +521 -0
  43. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/cancellation_signal.hpp +245 -0
  44. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/cancellation_state.hpp +235 -0
  45. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/cancellation_type.hpp +157 -0
  46. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/co_spawn.hpp +523 -0
  47. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/compose.hpp +319 -0
  48. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/connect.hpp +1180 -0
  49. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/consign.hpp +75 -0
  50. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/defer.hpp +218 -0
  51. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/deferred.hpp +715 -0
  52. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/detached.hpp +105 -0
  53. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/detail/array.hpp +30 -0
  54. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/detail/array_fwd.hpp +32 -0
  55. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/detail/atomic_count.hpp +59 -0
  56. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/detail/base_from_cancellation_state.hpp +164 -0
  57. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/detail/base_from_completion_cond.hpp +69 -0
  58. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/detail/bind_handler.hpp +711 -0
  59. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/detail/blocking_executor_op.hpp +107 -0
  60. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/detail/buffer_sequence_adapter.hpp +837 -0
  61. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/detail/chrono.hpp +45 -0
  62. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/detail/completion_handler.hpp +88 -0
  63. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/detail/composed_work.hpp +252 -0
  64. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/detail/config.hpp +1422 -0
  65. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/detail/consuming_buffers.hpp +443 -0
  66. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/detail/cstddef.hpp +27 -0
  67. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/detail/cstdint.hpp +40 -0
  68. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/detail/deadline_timer_service.hpp +335 -0
  69. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/detail/descriptor_read_op.hpp +188 -0
  70. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/detail/descriptor_write_op.hpp +187 -0
  71. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/detail/event.hpp +46 -0
  72. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/detail/exception.hpp +29 -0
  73. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/detail/executor_function.hpp +152 -0
  74. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/detail/executor_op.hpp +84 -0
  75. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/detail/fenced_block.hpp +40 -0
  76. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/detail/functional.hpp +33 -0
  77. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/detail/future.hpp +32 -0
  78. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/detail/global.hpp +50 -0
  79. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/detail/handler_alloc_helpers.hpp +225 -0
  80. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/detail/handler_tracking.hpp +264 -0
  81. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/detail/handler_type_requirements.hpp +553 -0
  82. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/detail/handler_work.hpp +511 -0
  83. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/detail/impl/handler_tracking.ipp +398 -0
  84. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/detail/impl/io_uring_descriptor_service.ipp +205 -0
  85. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/detail/impl/io_uring_socket_service_base.ipp +249 -0
  86. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/detail/impl/reactive_descriptor_service.ipp +230 -0
  87. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/detail/impl/reactive_socket_service_base.ipp +310 -0
  88. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/detail/impl/resolver_service_base.ipp +158 -0
  89. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/detail/impl/service_registry.hpp +93 -0
  90. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/detail/impl/strand_executor_service.hpp +346 -0
  91. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/detail/impl/strand_service.hpp +86 -0
  92. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/detail/impl/throw_error.ipp +49 -0
  93. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/detail/impl/timer_queue_ptime.ipp +97 -0
  94. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/detail/impl/win_iocp_io_context.hpp +119 -0
  95. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/detail/impl/win_iocp_io_context.ipp +614 -0
  96. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/detail/impl/win_iocp_socket_service_base.ipp +821 -0
  97. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/detail/impl/winrt_ssocket_service_base.ipp +626 -0
  98. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/detail/initiate_defer.hpp +207 -0
  99. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/detail/initiate_dispatch.hpp +193 -0
  100. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/detail/initiate_post.hpp +207 -0
  101. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/detail/io_object_impl.hpp +177 -0
  102. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/detail/io_uring_descriptor_read_at_op.hpp +195 -0
  103. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/detail/io_uring_descriptor_read_op.hpp +190 -0
  104. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/detail/io_uring_descriptor_service.hpp +687 -0
  105. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/detail/io_uring_descriptor_write_at_op.hpp +189 -0
  106. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/detail/io_uring_descriptor_write_op.hpp +185 -0
  107. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/detail/io_uring_null_buffers_op.hpp +114 -0
  108. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/detail/io_uring_socket_accept_op.hpp +280 -0
  109. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/detail/io_uring_socket_connect_op.hpp +140 -0
  110. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/detail/io_uring_socket_recv_op.hpp +205 -0
  111. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/detail/io_uring_socket_recvfrom_op.hpp +206 -0
  112. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/detail/io_uring_socket_recvmsg_op.hpp +192 -0
  113. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/detail/io_uring_socket_send_op.hpp +191 -0
  114. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/detail/io_uring_socket_sendto_op.hpp +194 -0
  115. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/detail/io_uring_socket_service.hpp +629 -0
  116. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/detail/io_uring_socket_service_base.hpp +663 -0
  117. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/detail/io_uring_wait_op.hpp +112 -0
  118. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/detail/is_buffer_sequence.hpp +296 -0
  119. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/detail/limits.hpp +21 -0
  120. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/detail/memory.hpp +126 -0
  121. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/detail/mutex.hpp +46 -0
  122. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/detail/non_const_lvalue.hpp +43 -0
  123. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/detail/null_socket_service.hpp +519 -0
  124. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/detail/reactive_descriptor_service.hpp +566 -0
  125. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/detail/reactive_null_buffers_op.hpp +131 -0
  126. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/detail/reactive_socket_accept_op.hpp +323 -0
  127. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/detail/reactive_socket_connect_op.hpp +162 -0
  128. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/detail/reactive_socket_recv_op.hpp +197 -0
  129. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/detail/reactive_socket_recvfrom_op.hpp +203 -0
  130. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/detail/reactive_socket_recvmsg_op.hpp +184 -0
  131. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/detail/reactive_socket_send_op.hpp +201 -0
  132. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/detail/reactive_socket_sendto_op.hpp +194 -0
  133. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/detail/reactive_socket_service.hpp +633 -0
  134. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/detail/reactive_socket_service_base.hpp +750 -0
  135. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/detail/reactive_wait_op.hpp +131 -0
  136. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/detail/recycling_allocator.hpp +105 -0
  137. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/detail/regex_fwd.hpp +35 -0
  138. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/detail/resolve_endpoint_op.hpp +140 -0
  139. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/detail/resolve_query_op.hpp +150 -0
  140. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/detail/resolver_service.hpp +147 -0
  141. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/detail/service_registry.hpp +163 -0
  142. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/detail/signal_handler.hpp +90 -0
  143. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/detail/signal_set_service.hpp +292 -0
  144. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/detail/static_mutex.hpp +50 -0
  145. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/detail/std_event.hpp +183 -0
  146. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/detail/std_fenced_block.hpp +57 -0
  147. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/detail/std_global.hpp +65 -0
  148. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/detail/std_mutex.hpp +68 -0
  149. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/detail/std_static_mutex.hpp +76 -0
  150. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/detail/std_thread.hpp +66 -0
  151. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/detail/strand_executor_service.hpp +173 -0
  152. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/detail/thread.hpp +58 -0
  153. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/detail/thread_info_base.hpp +250 -0
  154. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/detail/timer_queue_ptime.hpp +103 -0
  155. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/detail/type_traits.hpp +178 -0
  156. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/detail/utility.hpp +83 -0
  157. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/detail/wait_handler.hpp +90 -0
  158. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/detail/win_iocp_handle_read_op.hpp +119 -0
  159. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/detail/win_iocp_handle_service.hpp +431 -0
  160. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/detail/win_iocp_handle_write_op.hpp +114 -0
  161. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/detail/win_iocp_null_buffers_op.hpp +129 -0
  162. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/detail/win_iocp_overlapped_op.hpp +100 -0
  163. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/detail/win_iocp_overlapped_ptr.hpp +171 -0
  164. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/detail/win_iocp_socket_accept_op.hpp +339 -0
  165. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/detail/win_iocp_socket_connect_op.hpp +138 -0
  166. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/detail/win_iocp_socket_recv_op.hpp +126 -0
  167. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/detail/win_iocp_socket_recvfrom_op.hpp +135 -0
  168. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/detail/win_iocp_socket_recvmsg_op.hpp +127 -0
  169. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/detail/win_iocp_socket_send_op.hpp +120 -0
  170. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/detail/win_iocp_socket_service.hpp +680 -0
  171. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/detail/win_iocp_socket_service_base.hpp +829 -0
  172. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/detail/win_iocp_wait_op.hpp +130 -0
  173. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/detail/win_object_handle_service.hpp +194 -0
  174. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/detail/winrt_resolve_op.hpp +125 -0
  175. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/detail/winrt_resolver_service.hpp +212 -0
  176. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/detail/winrt_socket_connect_op.hpp +98 -0
  177. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/detail/winrt_socket_recv_op.hpp +119 -0
  178. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/detail/winrt_socket_send_op.hpp +110 -0
  179. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/detail/winrt_ssocket_service.hpp +250 -0
  180. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/detail/winrt_ssocket_service_base.hpp +362 -0
  181. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/detail/work_dispatcher.hpp +143 -0
  182. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/detail/wrapped_handler.hpp +217 -0
  183. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/dispatch.hpp +197 -0
  184. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/error.hpp +389 -0
  185. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/error_code.hpp +39 -0
  186. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/execution/allocator.hpp +278 -0
  187. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/execution/any_executor.hpp +1933 -0
  188. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/execution/bad_executor.hpp +46 -0
  189. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/execution/blocking.hpp +1360 -0
  190. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/execution/blocking_adaptation.hpp +1080 -0
  191. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/execution/context.hpp +191 -0
  192. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/execution/context_as.hpp +190 -0
  193. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/execution/executor.hpp +116 -0
  194. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/execution/impl/bad_executor.ipp +40 -0
  195. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/execution/invocable_archetype.hpp +43 -0
  196. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/execution/mapping.hpp +1002 -0
  197. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/execution/occupancy.hpp +184 -0
  198. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/execution/outstanding_work.hpp +753 -0
  199. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/execution/prefer_only.hpp +328 -0
  200. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/execution/relationship.hpp +751 -0
  201. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/execution.hpp +33 -0
  202. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/execution_context.hpp +388 -0
  203. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/executor.hpp +343 -0
  204. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/executor_work_guard.hpp +362 -0
  205. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/experimental/as_single.hpp +132 -0
  206. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/experimental/awaitable_operators.hpp +536 -0
  207. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/experimental/basic_channel.hpp +513 -0
  208. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/experimental/basic_concurrent_channel.hpp +513 -0
  209. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/experimental/cancellation_condition.hpp +152 -0
  210. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/experimental/channel.hpp +70 -0
  211. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/experimental/channel_error.hpp +82 -0
  212. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/experimental/channel_traits.hpp +301 -0
  213. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/experimental/co_composed.hpp +145 -0
  214. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/experimental/concurrent_channel.hpp +70 -0
  215. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/experimental/detail/channel_handler.hpp +77 -0
  216. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/experimental/detail/channel_message.hpp +129 -0
  217. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/experimental/detail/channel_operation.hpp +361 -0
  218. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/experimental/detail/channel_payload.hpp +222 -0
  219. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/experimental/detail/channel_receive_op.hpp +127 -0
  220. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/experimental/detail/channel_send_functions.hpp +192 -0
  221. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/experimental/detail/channel_send_op.hpp +148 -0
  222. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/experimental/detail/channel_service.hpp +677 -0
  223. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/experimental/detail/impl/channel_service.hpp +620 -0
  224. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/experimental/impl/as_single.hpp +176 -0
  225. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/experimental/impl/channel_error.ipp +61 -0
  226. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/experimental/impl/co_composed.hpp +1174 -0
  227. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/experimental/impl/coro.hpp +1222 -0
  228. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/experimental/impl/parallel_group.hpp +787 -0
  229. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/experimental/impl/promise.hpp +255 -0
  230. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/experimental/impl/use_promise.hpp +66 -0
  231. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/experimental/parallel_group.hpp +456 -0
  232. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/experimental/use_coro.hpp +189 -0
  233. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/experimental/use_promise.hpp +111 -0
  234. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/generic/basic_endpoint.hpp +189 -0
  235. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/generic/datagram_protocol.hpp +123 -0
  236. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/generic/raw_protocol.hpp +121 -0
  237. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/generic/seq_packet_protocol.hpp +122 -0
  238. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/generic/stream_protocol.hpp +127 -0
  239. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/high_resolution_timer.hpp +39 -0
  240. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/impl/any_completion_executor.ipp +126 -0
  241. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/impl/any_io_executor.ipp +134 -0
  242. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/impl/append.hpp +162 -0
  243. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/impl/as_tuple.hpp +245 -0
  244. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/impl/awaitable.hpp +1195 -0
  245. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/impl/buffered_read_stream.hpp +404 -0
  246. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/impl/buffered_write_stream.hpp +384 -0
  247. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/impl/co_spawn.hpp +440 -0
  248. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/impl/connect.hpp +809 -0
  249. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/impl/consign.hpp +137 -0
  250. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/impl/deferred.hpp +147 -0
  251. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/impl/detached.hpp +77 -0
  252. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/impl/error.ipp +128 -0
  253. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/impl/error_code.ipp +206 -0
  254. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/impl/execution_context.hpp +77 -0
  255. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/impl/executor.hpp +300 -0
  256. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/impl/executor.ipp +43 -0
  257. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/impl/io_context.hpp +433 -0
  258. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/impl/multiple_exceptions.ipp +45 -0
  259. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/impl/prepend.hpp +163 -0
  260. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/impl/read.hpp +1053 -0
  261. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/impl/read_at.hpp +628 -0
  262. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/impl/read_until.hpp +2941 -0
  263. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/impl/redirect_error.hpp +250 -0
  264. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/impl/spawn.hpp +1400 -0
  265. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/impl/src.hpp +94 -0
  266. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/impl/system_context.hpp +34 -0
  267. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/impl/system_context.ipp +92 -0
  268. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/impl/system_executor.hpp +179 -0
  269. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/impl/thread_pool.hpp +277 -0
  270. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/impl/use_awaitable.hpp +301 -0
  271. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/impl/use_future.hpp +707 -0
  272. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/impl/write.hpp +939 -0
  273. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/impl/write_at.hpp +551 -0
  274. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/io_context.hpp +1509 -0
  275. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/io_context_strand.hpp +385 -0
  276. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/ip/address.hpp +281 -0
  277. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/ip/address_v4.hpp +421 -0
  278. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/ip/address_v4_iterator.hpp +156 -0
  279. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/ip/address_v4_range.hpp +128 -0
  280. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/ip/address_v6.hpp +407 -0
  281. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/ip/address_v6_iterator.hpp +178 -0
  282. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/ip/address_v6_range.hpp +124 -0
  283. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/ip/bad_address_cast.hpp +63 -0
  284. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/ip/basic_endpoint.hpp +282 -0
  285. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/ip/basic_resolver.hpp +1112 -0
  286. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/ip/basic_resolver_iterator.hpp +188 -0
  287. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/ip/basic_resolver_results.hpp +307 -0
  288. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/ip/detail/endpoint.hpp +141 -0
  289. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/ip/detail/impl/endpoint.ipp +195 -0
  290. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/ip/icmp.hpp +115 -0
  291. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/ip/impl/address.ipp +235 -0
  292. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/ip/impl/address_v4.ipp +206 -0
  293. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/ip/impl/address_v6.ipp +342 -0
  294. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/ip/impl/network_v4.ipp +218 -0
  295. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/ip/impl/network_v6.ipp +187 -0
  296. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/ip/network_v4.hpp +257 -0
  297. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/ip/network_v6.hpp +231 -0
  298. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/ip/tcp.hpp +155 -0
  299. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/ip/udp.hpp +111 -0
  300. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/is_applicable_property.hpp +61 -0
  301. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/is_contiguous_iterator.hpp +45 -0
  302. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/local/basic_endpoint.hpp +243 -0
  303. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/local/datagram_protocol.hpp +80 -0
  304. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/local/seq_packet_protocol.hpp +84 -0
  305. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/local/stream_protocol.hpp +90 -0
  306. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/multiple_exceptions.hpp +52 -0
  307. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/packaged_task.hpp +66 -0
  308. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/placeholders.hpp +75 -0
  309. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/posix/basic_descriptor.hpp +773 -0
  310. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/posix/basic_stream_descriptor.hpp +559 -0
  311. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/post.hpp +213 -0
  312. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/prefer.hpp +577 -0
  313. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/prepend.hpp +66 -0
  314. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/query.hpp +311 -0
  315. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/read.hpp +1448 -0
  316. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/read_at.hpp +778 -0
  317. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/read_until.hpp +3124 -0
  318. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/recycling_allocator.hpp +138 -0
  319. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/redirect_error.hpp +64 -0
  320. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/registered_buffer.hpp +344 -0
  321. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/require.hpp +433 -0
  322. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/require_concept.hpp +343 -0
  323. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/signal_set_base.hpp +171 -0
  324. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/spawn.hpp +872 -0
  325. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/ssl/context.hpp +762 -0
  326. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/ssl/detail/buffered_handshake_op.hpp +119 -0
  327. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/ssl/detail/engine.hpp +169 -0
  328. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/ssl/detail/handshake_op.hpp +67 -0
  329. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/ssl/detail/impl/engine.ipp +377 -0
  330. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/ssl/detail/impl/openssl_init.ipp +169 -0
  331. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/ssl/detail/io.hpp +376 -0
  332. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/ssl/detail/read_op.hpp +72 -0
  333. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/ssl/detail/shutdown_op.hpp +69 -0
  334. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/ssl/detail/stream_core.hpp +217 -0
  335. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/ssl/detail/write_op.hpp +76 -0
  336. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/ssl/error.hpp +123 -0
  337. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/ssl/impl/context.ipp +1319 -0
  338. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/ssl/impl/error.ipp +124 -0
  339. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/ssl/stream.hpp +1038 -0
  340. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/steady_timer.hpp +37 -0
  341. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/strand.hpp +557 -0
  342. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/system_context.hpp +90 -0
  343. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/system_error.hpp +31 -0
  344. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/system_executor.hpp +671 -0
  345. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/system_timer.hpp +37 -0
  346. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/this_coro.hpp +267 -0
  347. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/thread_pool.hpp +963 -0
  348. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/traits/equality_comparable.hpp +100 -0
  349. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/traits/execute_member.hpp +104 -0
  350. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/traits/prefer_free.hpp +104 -0
  351. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/traits/prefer_member.hpp +104 -0
  352. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/traits/query_free.hpp +104 -0
  353. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/traits/query_member.hpp +104 -0
  354. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/traits/query_static_constexpr_member.hpp +101 -0
  355. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/traits/require_concept_free.hpp +104 -0
  356. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/traits/require_concept_member.hpp +104 -0
  357. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/traits/require_free.hpp +104 -0
  358. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/traits/require_member.hpp +104 -0
  359. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/traits/static_query.hpp +102 -0
  360. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/traits/static_require.hpp +115 -0
  361. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/traits/static_require_concept.hpp +116 -0
  362. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/ts/netfwd.hpp +236 -0
  363. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/use_awaitable.hpp +161 -0
  364. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/use_future.hpp +159 -0
  365. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/uses_executor.hpp +67 -0
  366. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/version.hpp +23 -0
  367. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/windows/basic_object_handle.hpp +485 -0
  368. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/windows/basic_overlapped_handle.hpp +455 -0
  369. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/windows/basic_random_access_handle.hpp +567 -0
  370. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/windows/basic_stream_handle.hpp +551 -0
  371. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/windows/overlapped_ptr.hpp +145 -0
  372. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/write.hpp +1414 -0
  373. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio/write_at.hpp +789 -0
  374. data/ext/cache/asio/41f31469d0dd420500b334dc8c2fd3ffe7320d8e/asio/asio/include/asio.hpp +199 -0
  375. data/ext/cache/extconf_include.rb +3 -3
  376. data/ext/cache/fmt/d3c862243fcf1c41b4c09903f35479bd42f135b7/fmt/CMakeLists.txt +453 -0
  377. data/ext/cache/fmt/d3c862243fcf1c41b4c09903f35479bd42f135b7/fmt/ChangeLog.md +5533 -0
  378. data/ext/cache/fmt/d3c862243fcf1c41b4c09903f35479bd42f135b7/fmt/README.md +490 -0
  379. data/ext/cache/fmt/d3c862243fcf1c41b4c09903f35479bd42f135b7/fmt/include/fmt/args.h +235 -0
  380. data/ext/cache/fmt/d3c862243fcf1c41b4c09903f35479bd42f135b7/fmt/include/fmt/chrono.h +2240 -0
  381. data/ext/cache/fmt/d3c862243fcf1c41b4c09903f35479bd42f135b7/fmt/include/fmt/color.h +643 -0
  382. data/ext/cache/fmt/d3c862243fcf1c41b4c09903f35479bd42f135b7/fmt/include/fmt/compile.h +535 -0
  383. data/ext/cache/fmt/d3c862243fcf1c41b4c09903f35479bd42f135b7/fmt/include/fmt/core.h +2969 -0
  384. data/ext/cache/fmt/d3c862243fcf1c41b4c09903f35479bd42f135b7/fmt/include/fmt/format-inl.h +1678 -0
  385. data/ext/cache/fmt/d3c862243fcf1c41b4c09903f35479bd42f135b7/fmt/include/fmt/format.h +4535 -0
  386. data/ext/cache/fmt/d3c862243fcf1c41b4c09903f35479bd42f135b7/fmt/include/fmt/os.h +455 -0
  387. data/ext/cache/fmt/d3c862243fcf1c41b4c09903f35479bd42f135b7/fmt/include/fmt/ostream.h +245 -0
  388. data/ext/cache/fmt/d3c862243fcf1c41b4c09903f35479bd42f135b7/fmt/include/fmt/printf.h +675 -0
  389. data/ext/cache/fmt/d3c862243fcf1c41b4c09903f35479bd42f135b7/fmt/include/fmt/ranges.h +738 -0
  390. data/ext/cache/fmt/d3c862243fcf1c41b4c09903f35479bd42f135b7/fmt/include/fmt/std.h +537 -0
  391. data/ext/cache/fmt/d3c862243fcf1c41b4c09903f35479bd42f135b7/fmt/include/fmt/xchar.h +259 -0
  392. data/ext/cache/fmt/d3c862243fcf1c41b4c09903f35479bd42f135b7/fmt/src/fmt.cc +108 -0
  393. data/ext/cache/fmt/d3c862243fcf1c41b4c09903f35479bd42f135b7/fmt/src/os.cc +402 -0
  394. data/ext/cache/llhttp/b74a6759ffeff2e9b72f62f790afbc73362a526b/llhttp/CMakeLists.txt +117 -0
  395. data/ext/cache/llhttp/b74a6759ffeff2e9b72f62f790afbc73362a526b/llhttp/include/llhttp.h +903 -0
  396. data/ext/cache/llhttp/b74a6759ffeff2e9b72f62f790afbc73362a526b/llhttp/src/llhttp.c +10149 -0
  397. data/ext/cache/spdlog/25435891d500fa18cdfc40bd923333e006159907/spdlog/CMakeLists.txt +359 -0
  398. data/ext/cache/spdlog/25435891d500fa18cdfc40bd923333e006159907/spdlog/LICENSE +26 -0
  399. data/ext/cache/spdlog/25435891d500fa18cdfc40bd923333e006159907/spdlog/include/spdlog/async.h +100 -0
  400. data/ext/cache/spdlog/25435891d500fa18cdfc40bd923333e006159907/spdlog/include/spdlog/async_logger-inl.h +84 -0
  401. data/ext/cache/spdlog/25435891d500fa18cdfc40bd923333e006159907/spdlog/include/spdlog/async_logger.h +74 -0
  402. data/ext/cache/spdlog/25435891d500fa18cdfc40bd923333e006159907/spdlog/include/spdlog/cfg/argv.h +40 -0
  403. data/ext/cache/spdlog/25435891d500fa18cdfc40bd923333e006159907/spdlog/include/spdlog/cfg/env.h +36 -0
  404. data/ext/cache/spdlog/25435891d500fa18cdfc40bd923333e006159907/spdlog/include/spdlog/cfg/helpers-inl.h +107 -0
  405. data/ext/cache/spdlog/25435891d500fa18cdfc40bd923333e006159907/spdlog/include/spdlog/cfg/helpers.h +29 -0
  406. data/ext/cache/spdlog/25435891d500fa18cdfc40bd923333e006159907/spdlog/include/spdlog/common-inl.h +68 -0
  407. data/ext/cache/spdlog/25435891d500fa18cdfc40bd923333e006159907/spdlog/include/spdlog/common.h +411 -0
  408. data/ext/cache/spdlog/25435891d500fa18cdfc40bd923333e006159907/spdlog/include/spdlog/details/backtracer-inl.h +63 -0
  409. data/ext/cache/spdlog/25435891d500fa18cdfc40bd923333e006159907/spdlog/include/spdlog/details/backtracer.h +45 -0
  410. data/ext/cache/spdlog/25435891d500fa18cdfc40bd923333e006159907/spdlog/include/spdlog/details/circular_q.h +113 -0
  411. data/ext/cache/spdlog/25435891d500fa18cdfc40bd923333e006159907/spdlog/include/spdlog/details/console_globals.h +28 -0
  412. data/ext/cache/spdlog/25435891d500fa18cdfc40bd923333e006159907/spdlog/include/spdlog/details/file_helper-inl.h +152 -0
  413. data/ext/cache/spdlog/25435891d500fa18cdfc40bd923333e006159907/spdlog/include/spdlog/details/file_helper.h +61 -0
  414. data/ext/cache/spdlog/25435891d500fa18cdfc40bd923333e006159907/spdlog/include/spdlog/details/fmt_helper.h +141 -0
  415. data/ext/cache/spdlog/25435891d500fa18cdfc40bd923333e006159907/spdlog/include/spdlog/details/log_msg-inl.h +44 -0
  416. data/ext/cache/spdlog/25435891d500fa18cdfc40bd923333e006159907/spdlog/include/spdlog/details/log_msg.h +40 -0
  417. data/ext/cache/spdlog/25435891d500fa18cdfc40bd923333e006159907/spdlog/include/spdlog/details/log_msg_buffer-inl.h +54 -0
  418. data/ext/cache/spdlog/25435891d500fa18cdfc40bd923333e006159907/spdlog/include/spdlog/details/log_msg_buffer.h +32 -0
  419. data/ext/cache/spdlog/25435891d500fa18cdfc40bd923333e006159907/spdlog/include/spdlog/details/mpmc_blocking_q.h +177 -0
  420. data/ext/cache/spdlog/25435891d500fa18cdfc40bd923333e006159907/spdlog/include/spdlog/details/null_mutex.h +35 -0
  421. data/ext/cache/spdlog/25435891d500fa18cdfc40bd923333e006159907/spdlog/include/spdlog/details/os-inl.h +585 -0
  422. data/ext/cache/spdlog/25435891d500fa18cdfc40bd923333e006159907/spdlog/include/spdlog/details/os.h +123 -0
  423. data/ext/cache/spdlog/25435891d500fa18cdfc40bd923333e006159907/spdlog/include/spdlog/details/periodic_worker-inl.h +26 -0
  424. data/ext/cache/spdlog/25435891d500fa18cdfc40bd923333e006159907/spdlog/include/spdlog/details/periodic_worker.h +57 -0
  425. data/ext/cache/spdlog/25435891d500fa18cdfc40bd923333e006159907/spdlog/include/spdlog/details/registry-inl.h +265 -0
  426. data/ext/cache/spdlog/25435891d500fa18cdfc40bd923333e006159907/spdlog/include/spdlog/details/registry.h +122 -0
  427. data/ext/cache/spdlog/25435891d500fa18cdfc40bd923333e006159907/spdlog/include/spdlog/details/synchronous_factory.h +22 -0
  428. data/ext/cache/spdlog/25435891d500fa18cdfc40bd923333e006159907/spdlog/include/spdlog/details/tcp_client-windows.h +135 -0
  429. data/ext/cache/spdlog/25435891d500fa18cdfc40bd923333e006159907/spdlog/include/spdlog/details/tcp_client.h +127 -0
  430. data/ext/cache/spdlog/25435891d500fa18cdfc40bd923333e006159907/spdlog/include/spdlog/details/thread_pool-inl.h +127 -0
  431. data/ext/cache/spdlog/25435891d500fa18cdfc40bd923333e006159907/spdlog/include/spdlog/details/thread_pool.h +117 -0
  432. data/ext/cache/spdlog/25435891d500fa18cdfc40bd923333e006159907/spdlog/include/spdlog/details/udp_client-windows.h +98 -0
  433. data/ext/cache/spdlog/25435891d500fa18cdfc40bd923333e006159907/spdlog/include/spdlog/details/udp_client.h +81 -0
  434. data/ext/cache/spdlog/25435891d500fa18cdfc40bd923333e006159907/spdlog/include/spdlog/details/windows_include.h +11 -0
  435. data/ext/cache/spdlog/25435891d500fa18cdfc40bd923333e006159907/spdlog/include/spdlog/fmt/bin_to_hex.h +224 -0
  436. data/ext/cache/spdlog/25435891d500fa18cdfc40bd923333e006159907/spdlog/include/spdlog/fmt/chrono.h +23 -0
  437. data/ext/cache/spdlog/25435891d500fa18cdfc40bd923333e006159907/spdlog/include/spdlog/fmt/compile.h +23 -0
  438. data/ext/cache/spdlog/25435891d500fa18cdfc40bd923333e006159907/spdlog/include/spdlog/fmt/fmt.h +34 -0
  439. data/ext/cache/spdlog/25435891d500fa18cdfc40bd923333e006159907/spdlog/include/spdlog/fmt/ostr.h +23 -0
  440. data/ext/cache/spdlog/25435891d500fa18cdfc40bd923333e006159907/spdlog/include/spdlog/fmt/ranges.h +23 -0
  441. data/ext/cache/spdlog/25435891d500fa18cdfc40bd923333e006159907/spdlog/include/spdlog/fmt/std.h +24 -0
  442. data/ext/cache/spdlog/25435891d500fa18cdfc40bd923333e006159907/spdlog/include/spdlog/fmt/xchar.h +23 -0
  443. data/ext/cache/spdlog/25435891d500fa18cdfc40bd923333e006159907/spdlog/include/spdlog/formatter.h +17 -0
  444. data/ext/cache/spdlog/25435891d500fa18cdfc40bd923333e006159907/spdlog/include/spdlog/fwd.h +18 -0
  445. data/ext/cache/spdlog/25435891d500fa18cdfc40bd923333e006159907/spdlog/include/spdlog/logger-inl.h +198 -0
  446. data/ext/cache/spdlog/25435891d500fa18cdfc40bd923333e006159907/spdlog/include/spdlog/logger.h +379 -0
  447. data/ext/cache/spdlog/25435891d500fa18cdfc40bd923333e006159907/spdlog/include/spdlog/pattern_formatter-inl.h +1268 -0
  448. data/ext/cache/spdlog/25435891d500fa18cdfc40bd923333e006159907/spdlog/include/spdlog/pattern_formatter.h +118 -0
  449. data/ext/cache/spdlog/25435891d500fa18cdfc40bd923333e006159907/spdlog/include/spdlog/sinks/android_sink.h +137 -0
  450. data/ext/cache/spdlog/25435891d500fa18cdfc40bd923333e006159907/spdlog/include/spdlog/sinks/ansicolor_sink-inl.h +135 -0
  451. data/ext/cache/spdlog/25435891d500fa18cdfc40bd923333e006159907/spdlog/include/spdlog/sinks/ansicolor_sink.h +115 -0
  452. data/ext/cache/spdlog/25435891d500fa18cdfc40bd923333e006159907/spdlog/include/spdlog/sinks/base_sink-inl.h +59 -0
  453. data/ext/cache/spdlog/25435891d500fa18cdfc40bd923333e006159907/spdlog/include/spdlog/sinks/base_sink.h +51 -0
  454. data/ext/cache/spdlog/25435891d500fa18cdfc40bd923333e006159907/spdlog/include/spdlog/sinks/basic_file_sink-inl.h +42 -0
  455. data/ext/cache/spdlog/25435891d500fa18cdfc40bd923333e006159907/spdlog/include/spdlog/sinks/basic_file_sink.h +65 -0
  456. data/ext/cache/spdlog/25435891d500fa18cdfc40bd923333e006159907/spdlog/include/spdlog/sinks/callback_sink.h +56 -0
  457. data/ext/cache/spdlog/25435891d500fa18cdfc40bd923333e006159907/spdlog/include/spdlog/sinks/daily_file_sink.h +252 -0
  458. data/ext/cache/spdlog/25435891d500fa18cdfc40bd923333e006159907/spdlog/include/spdlog/sinks/dist_sink.h +81 -0
  459. data/ext/cache/spdlog/25435891d500fa18cdfc40bd923333e006159907/spdlog/include/spdlog/sinks/dup_filter_sink.h +92 -0
  460. data/ext/cache/spdlog/25435891d500fa18cdfc40bd923333e006159907/spdlog/include/spdlog/sinks/hourly_file_sink.h +191 -0
  461. data/ext/cache/spdlog/25435891d500fa18cdfc40bd923333e006159907/spdlog/include/spdlog/sinks/kafka_sink.h +119 -0
  462. data/ext/cache/spdlog/25435891d500fa18cdfc40bd923333e006159907/spdlog/include/spdlog/sinks/mongo_sink.h +108 -0
  463. data/ext/cache/spdlog/25435891d500fa18cdfc40bd923333e006159907/spdlog/include/spdlog/sinks/msvc_sink.h +68 -0
  464. data/ext/cache/spdlog/25435891d500fa18cdfc40bd923333e006159907/spdlog/include/spdlog/sinks/null_sink.h +41 -0
  465. data/ext/cache/spdlog/25435891d500fa18cdfc40bd923333e006159907/spdlog/include/spdlog/sinks/ostream_sink.h +43 -0
  466. data/ext/cache/spdlog/25435891d500fa18cdfc40bd923333e006159907/spdlog/include/spdlog/sinks/qt_sinks.h +304 -0
  467. data/ext/cache/spdlog/25435891d500fa18cdfc40bd923333e006159907/spdlog/include/spdlog/sinks/ringbuffer_sink.h +67 -0
  468. data/ext/cache/spdlog/25435891d500fa18cdfc40bd923333e006159907/spdlog/include/spdlog/sinks/rotating_file_sink-inl.h +144 -0
  469. data/ext/cache/spdlog/25435891d500fa18cdfc40bd923333e006159907/spdlog/include/spdlog/sinks/rotating_file_sink.h +89 -0
  470. data/ext/cache/spdlog/25435891d500fa18cdfc40bd923333e006159907/spdlog/include/spdlog/sinks/sink-inl.h +22 -0
  471. data/ext/cache/spdlog/25435891d500fa18cdfc40bd923333e006159907/spdlog/include/spdlog/sinks/sink.h +34 -0
  472. data/ext/cache/spdlog/25435891d500fa18cdfc40bd923333e006159907/spdlog/include/spdlog/sinks/stdout_color_sinks-inl.h +38 -0
  473. data/ext/cache/spdlog/25435891d500fa18cdfc40bd923333e006159907/spdlog/include/spdlog/sinks/stdout_color_sinks.h +49 -0
  474. data/ext/cache/spdlog/25435891d500fa18cdfc40bd923333e006159907/spdlog/include/spdlog/sinks/stdout_sinks-inl.h +126 -0
  475. data/ext/cache/spdlog/25435891d500fa18cdfc40bd923333e006159907/spdlog/include/spdlog/sinks/stdout_sinks.h +84 -0
  476. data/ext/cache/spdlog/25435891d500fa18cdfc40bd923333e006159907/spdlog/include/spdlog/sinks/syslog_sink.h +103 -0
  477. data/ext/cache/spdlog/25435891d500fa18cdfc40bd923333e006159907/spdlog/include/spdlog/sinks/systemd_sink.h +121 -0
  478. data/ext/cache/spdlog/25435891d500fa18cdfc40bd923333e006159907/spdlog/include/spdlog/sinks/tcp_sink.h +75 -0
  479. data/ext/cache/spdlog/25435891d500fa18cdfc40bd923333e006159907/spdlog/include/spdlog/sinks/udp_sink.h +69 -0
  480. data/ext/cache/spdlog/25435891d500fa18cdfc40bd923333e006159907/spdlog/include/spdlog/sinks/win_eventlog_sink.h +260 -0
  481. data/ext/cache/spdlog/25435891d500fa18cdfc40bd923333e006159907/spdlog/include/spdlog/sinks/wincolor_sink-inl.h +163 -0
  482. data/ext/cache/spdlog/25435891d500fa18cdfc40bd923333e006159907/spdlog/include/spdlog/sinks/wincolor_sink.h +82 -0
  483. data/ext/cache/spdlog/25435891d500fa18cdfc40bd923333e006159907/spdlog/include/spdlog/spdlog-inl.h +92 -0
  484. data/ext/cache/spdlog/25435891d500fa18cdfc40bd923333e006159907/spdlog/include/spdlog/spdlog.h +352 -0
  485. data/ext/cache/spdlog/25435891d500fa18cdfc40bd923333e006159907/spdlog/include/spdlog/stopwatch.h +62 -0
  486. data/ext/cache/spdlog/25435891d500fa18cdfc40bd923333e006159907/spdlog/include/spdlog/tweakme.h +141 -0
  487. data/ext/cache/spdlog/25435891d500fa18cdfc40bd923333e006159907/spdlog/include/spdlog/version.h +11 -0
  488. data/ext/cache/spdlog/25435891d500fa18cdfc40bd923333e006159907/spdlog/src/async.cpp +11 -0
  489. data/ext/cache/spdlog/25435891d500fa18cdfc40bd923333e006159907/spdlog/src/bundled_fmtlib_format.cpp +49 -0
  490. data/ext/cache/spdlog/25435891d500fa18cdfc40bd923333e006159907/spdlog/src/cfg.cpp +8 -0
  491. data/ext/cache/spdlog/25435891d500fa18cdfc40bd923333e006159907/spdlog/src/color_sinks.cpp +55 -0
  492. data/ext/cache/spdlog/25435891d500fa18cdfc40bd923333e006159907/spdlog/src/file_sinks.cpp +20 -0
  493. data/ext/cache/spdlog/25435891d500fa18cdfc40bd923333e006159907/spdlog/src/spdlog.cpp +28 -0
  494. data/ext/cache/spdlog/25435891d500fa18cdfc40bd923333e006159907/spdlog/src/stdout_sinks.cpp +37 -0
  495. data/ext/couchbase/CMakeLists.txt +5 -0
  496. data/ext/couchbase/cmake/StandardProjectSettings.cmake +0 -4
  497. data/ext/couchbase/cmake/ThirdPartyDependencies.cmake +15 -7
  498. data/ext/couchbase/core/bucket.cxx +19 -1
  499. data/ext/couchbase/core/cluster.cxx +30 -43
  500. data/ext/couchbase/core/collections_component.cxx +3 -0
  501. data/ext/couchbase/core/crud_component.cxx +24 -10
  502. data/ext/couchbase/core/impl/collection.cxx +105 -0
  503. data/ext/couchbase/core/impl/internal_scan_result.hxx +37 -0
  504. data/ext/couchbase/core/impl/scan_result.cxx +174 -0
  505. data/ext/couchbase/core/io/mcbp_session.cxx +17 -0
  506. data/ext/couchbase/core/management/eventing_function.hxx +6 -0
  507. data/ext/couchbase/core/management/eventing_function_json.hxx +8 -0
  508. data/ext/couchbase/core/management/eventing_status.hxx +5 -0
  509. data/ext/couchbase/core/management/eventing_status_json.hxx +5 -0
  510. data/ext/couchbase/core/meta/features.hxx +6 -0
  511. data/ext/couchbase/core/operations/document_query.cxx +19 -15
  512. data/ext/couchbase/core/operations/document_query.hxx +1 -1
  513. data/ext/couchbase/core/operations/management/eventing_deploy_function.cxx +6 -0
  514. data/ext/couchbase/core/operations/management/eventing_deploy_function.hxx +3 -0
  515. data/ext/couchbase/core/operations/management/eventing_drop_function.cxx +6 -0
  516. data/ext/couchbase/core/operations/management/eventing_drop_function.hxx +3 -0
  517. data/ext/couchbase/core/operations/management/eventing_get_all_functions.cxx +16 -1
  518. data/ext/couchbase/core/operations/management/eventing_get_all_functions.hxx +3 -0
  519. data/ext/couchbase/core/operations/management/eventing_get_function.cxx +6 -0
  520. data/ext/couchbase/core/operations/management/eventing_get_function.hxx +2 -0
  521. data/ext/couchbase/core/operations/management/eventing_get_status.cxx +19 -1
  522. data/ext/couchbase/core/operations/management/eventing_get_status.hxx +3 -0
  523. data/ext/couchbase/core/operations/management/eventing_pause_function.cxx +7 -0
  524. data/ext/couchbase/core/operations/management/eventing_pause_function.hxx +3 -0
  525. data/ext/couchbase/core/operations/management/eventing_resume_function.cxx +6 -0
  526. data/ext/couchbase/core/operations/management/eventing_resume_function.hxx +3 -0
  527. data/ext/couchbase/core/operations/management/eventing_undeploy_function.cxx +6 -0
  528. data/ext/couchbase/core/operations/management/eventing_undeploy_function.hxx +3 -0
  529. data/ext/couchbase/core/operations/management/eventing_upsert_function.cxx +15 -0
  530. data/ext/couchbase/core/operations/management/eventing_upsert_function.hxx +3 -0
  531. data/ext/couchbase/core/origin.cxx +22 -7
  532. data/ext/couchbase/core/origin.hxx +1 -0
  533. data/ext/couchbase/core/range_scan_orchestrator.cxx +58 -49
  534. data/ext/couchbase/core/range_scan_orchestrator.hxx +3 -0
  535. data/ext/couchbase/core/scan_result.cxx +15 -4
  536. data/ext/couchbase/core/scan_result.hxx +1 -0
  537. data/ext/couchbase/couchbase/collection.hxx +36 -0
  538. data/ext/couchbase/couchbase/query_options.hxx +2 -2
  539. data/ext/couchbase/couchbase/scan_options.hxx +163 -0
  540. data/ext/couchbase/couchbase/scan_result.hxx +144 -0
  541. data/ext/couchbase/couchbase/scan_result_item.hxx +170 -0
  542. data/ext/couchbase/couchbase/scan_type.hxx +323 -0
  543. data/ext/couchbase.cxx +28 -8
  544. data/lib/couchbase/options.rb +7 -0
  545. data/lib/couchbase/protostellar/bucket.rb +4 -0
  546. data/lib/couchbase/protostellar/cluster.rb +8 -0
  547. data/lib/couchbase/subdoc.rb +2 -1
  548. data/lib/couchbase/version.rb +1 -1
  549. metadata +784 -830
  550. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/any_completion_executor.hpp +0 -342
  551. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/any_completion_handler.hpp +0 -823
  552. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/any_io_executor.hpp +0 -359
  553. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/append.hpp +0 -78
  554. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/as_tuple.hpp +0 -139
  555. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/associated_allocator.hpp +0 -233
  556. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/associated_cancellation_slot.hpp +0 -238
  557. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/associated_executor.hpp +0 -253
  558. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/associated_immediate_executor.hpp +0 -297
  559. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/async_result.hpp +0 -1671
  560. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/basic_datagram_socket.hpp +0 -1396
  561. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/basic_deadline_timer.hpp +0 -715
  562. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/basic_file.hpp +0 -829
  563. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/basic_io_object.hpp +0 -290
  564. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/basic_random_access_file.hpp +0 -701
  565. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/basic_raw_socket.hpp +0 -1387
  566. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/basic_readable_pipe.hpp +0 -635
  567. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/basic_seq_packet_socket.hpp +0 -835
  568. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/basic_serial_port.hpp +0 -1000
  569. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/basic_signal_set.hpp +0 -651
  570. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/basic_socket.hpp +0 -1947
  571. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/basic_socket_acceptor.hpp +0 -2755
  572. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/basic_socket_iostream.hpp +0 -407
  573. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/basic_socket_streambuf.hpp +0 -687
  574. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/basic_stream_file.hpp +0 -754
  575. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/basic_stream_socket.hpp +0 -1189
  576. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/basic_streambuf.hpp +0 -452
  577. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/basic_streambuf_fwd.hpp +0 -36
  578. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/basic_waitable_timer.hpp +0 -833
  579. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/basic_writable_pipe.hpp +0 -631
  580. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/bind_allocator.hpp +0 -733
  581. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/bind_cancellation_slot.hpp +0 -736
  582. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/bind_executor.hpp +0 -781
  583. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/bind_immediate_executor.hpp +0 -736
  584. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/buffer.hpp +0 -2909
  585. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/buffer_registration.hpp +0 -328
  586. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/buffered_read_stream.hpp +0 -286
  587. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/buffered_stream.hpp +0 -308
  588. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/buffered_write_stream.hpp +0 -278
  589. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/buffers_iterator.hpp +0 -521
  590. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/cancellation_signal.hpp +0 -305
  591. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/cancellation_state.hpp +0 -235
  592. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/cancellation_type.hpp +0 -174
  593. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/co_spawn.hpp +0 -523
  594. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/compose.hpp +0 -531
  595. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/connect.hpp +0 -1207
  596. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/consign.hpp +0 -88
  597. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/defer.hpp +0 -222
  598. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/deferred.hpp +0 -802
  599. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/detached.hpp +0 -113
  600. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/detail/array.hpp +0 -38
  601. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/detail/array_fwd.hpp +0 -34
  602. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/detail/atomic_count.hpp +0 -67
  603. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/detail/base_from_cancellation_state.hpp +0 -163
  604. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/detail/base_from_completion_cond.hpp +0 -69
  605. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/detail/bind_handler.hpp +0 -1145
  606. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/detail/blocking_executor_op.hpp +0 -108
  607. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/detail/buffer_sequence_adapter.hpp +0 -841
  608. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/detail/bulk_executor_op.hpp +0 -89
  609. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/detail/chrono.hpp +0 -66
  610. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/detail/completion_handler.hpp +0 -88
  611. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/detail/composed_work.hpp +0 -328
  612. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/detail/config.hpp +0 -2314
  613. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/detail/consuming_buffers.hpp +0 -451
  614. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/detail/cstddef.hpp +0 -31
  615. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/detail/cstdint.hpp +0 -62
  616. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/detail/deadline_timer_service.hpp +0 -335
  617. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/detail/descriptor_read_op.hpp +0 -188
  618. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/detail/descriptor_write_op.hpp +0 -187
  619. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/detail/event.hpp +0 -48
  620. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/detail/exception.hpp +0 -40
  621. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/detail/executor_function.hpp +0 -204
  622. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/detail/executor_op.hpp +0 -85
  623. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/detail/fenced_block.hpp +0 -80
  624. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/detail/functional.hpp +0 -44
  625. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/detail/future.hpp +0 -33
  626. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/detail/gcc_arm_fenced_block.hpp +0 -91
  627. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/detail/gcc_hppa_fenced_block.hpp +0 -68
  628. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/detail/gcc_sync_fenced_block.hpp +0 -65
  629. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/detail/gcc_x86_fenced_block.hpp +0 -99
  630. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/detail/global.hpp +0 -52
  631. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/detail/handler_alloc_helpers.hpp +0 -288
  632. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/detail/handler_invoke_helpers.hpp +0 -80
  633. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/detail/handler_tracking.hpp +0 -264
  634. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/detail/handler_type_requirements.hpp +0 -559
  635. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/detail/handler_work.hpp +0 -565
  636. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/detail/impl/handler_tracking.ipp +0 -398
  637. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/detail/impl/io_uring_descriptor_service.ipp +0 -205
  638. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/detail/impl/io_uring_socket_service_base.ipp +0 -249
  639. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/detail/impl/reactive_descriptor_service.ipp +0 -230
  640. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/detail/impl/reactive_socket_service_base.ipp +0 -310
  641. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/detail/impl/resolver_service_base.ipp +0 -158
  642. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/detail/impl/service_registry.hpp +0 -94
  643. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/detail/impl/strand_executor_service.hpp +0 -367
  644. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/detail/impl/strand_service.hpp +0 -87
  645. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/detail/impl/throw_error.ipp +0 -70
  646. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/detail/impl/timer_queue_ptime.ipp +0 -97
  647. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/detail/impl/win_iocp_io_context.hpp +0 -120
  648. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/detail/impl/win_iocp_io_context.ipp +0 -615
  649. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/detail/impl/win_iocp_socket_service_base.ipp +0 -821
  650. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/detail/impl/winrt_ssocket_service_base.ipp +0 -626
  651. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/detail/initiate_defer.hpp +0 -252
  652. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/detail/initiate_dispatch.hpp +0 -229
  653. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/detail/initiate_post.hpp +0 -252
  654. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/detail/io_object_impl.hpp +0 -181
  655. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/detail/io_uring_descriptor_read_at_op.hpp +0 -195
  656. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/detail/io_uring_descriptor_read_op.hpp +0 -190
  657. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/detail/io_uring_descriptor_service.hpp +0 -687
  658. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/detail/io_uring_descriptor_write_at_op.hpp +0 -189
  659. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/detail/io_uring_descriptor_write_op.hpp +0 -185
  660. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/detail/io_uring_null_buffers_op.hpp +0 -115
  661. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/detail/io_uring_socket_accept_op.hpp +0 -285
  662. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/detail/io_uring_socket_connect_op.hpp +0 -141
  663. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/detail/io_uring_socket_recv_op.hpp +0 -205
  664. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/detail/io_uring_socket_recvfrom_op.hpp +0 -206
  665. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/detail/io_uring_socket_recvmsg_op.hpp +0 -192
  666. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/detail/io_uring_socket_send_op.hpp +0 -191
  667. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/detail/io_uring_socket_sendto_op.hpp +0 -194
  668. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/detail/io_uring_socket_service.hpp +0 -631
  669. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/detail/io_uring_socket_service_base.hpp +0 -663
  670. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/detail/io_uring_wait_op.hpp +0 -113
  671. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/detail/is_buffer_sequence.hpp +0 -338
  672. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/detail/limits.hpp +0 -26
  673. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/detail/macos_fenced_block.hpp +0 -62
  674. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/detail/memory.hpp +0 -167
  675. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/detail/mutex.hpp +0 -48
  676. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/detail/non_const_lvalue.hpp +0 -54
  677. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/detail/null_socket_service.hpp +0 -519
  678. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/detail/reactive_descriptor_service.hpp +0 -566
  679. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/detail/reactive_null_buffers_op.hpp +0 -132
  680. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/detail/reactive_socket_accept_op.hpp +0 -328
  681. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/detail/reactive_socket_connect_op.hpp +0 -163
  682. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/detail/reactive_socket_recv_op.hpp +0 -198
  683. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/detail/reactive_socket_recvfrom_op.hpp +0 -204
  684. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/detail/reactive_socket_recvmsg_op.hpp +0 -185
  685. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/detail/reactive_socket_send_op.hpp +0 -202
  686. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/detail/reactive_socket_sendto_op.hpp +0 -195
  687. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/detail/reactive_socket_service.hpp +0 -635
  688. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/detail/reactive_socket_service_base.hpp +0 -750
  689. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/detail/reactive_wait_op.hpp +0 -132
  690. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/detail/recycling_allocator.hpp +0 -105
  691. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/detail/regex_fwd.hpp +0 -44
  692. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/detail/resolve_endpoint_op.hpp +0 -141
  693. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/detail/resolve_query_op.hpp +0 -151
  694. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/detail/resolver_service.hpp +0 -147
  695. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/detail/service_registry.hpp +0 -164
  696. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/detail/signal_handler.hpp +0 -90
  697. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/detail/signal_set_service.hpp +0 -292
  698. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/detail/solaris_fenced_block.hpp +0 -62
  699. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/detail/static_mutex.hpp +0 -52
  700. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/detail/std_event.hpp +0 -188
  701. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/detail/std_fenced_block.hpp +0 -62
  702. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/detail/std_global.hpp +0 -70
  703. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/detail/std_mutex.hpp +0 -73
  704. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/detail/std_static_mutex.hpp +0 -81
  705. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/detail/std_thread.hpp +0 -71
  706. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/detail/strand_executor_service.hpp +0 -173
  707. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/detail/thread.hpp +0 -60
  708. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/detail/thread_info_base.hpp +0 -260
  709. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/detail/timer_queue_ptime.hpp +0 -103
  710. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/detail/type_traits.hpp +0 -164
  711. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/detail/utility.hpp +0 -83
  712. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/detail/variadic_templates.hpp +0 -294
  713. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/detail/wait_handler.hpp +0 -90
  714. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/detail/win_fenced_block.hpp +0 -90
  715. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/detail/win_iocp_handle_read_op.hpp +0 -120
  716. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/detail/win_iocp_handle_service.hpp +0 -431
  717. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/detail/win_iocp_handle_write_op.hpp +0 -115
  718. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/detail/win_iocp_null_buffers_op.hpp +0 -130
  719. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/detail/win_iocp_overlapped_op.hpp +0 -101
  720. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/detail/win_iocp_overlapped_ptr.hpp +0 -171
  721. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/detail/win_iocp_socket_accept_op.hpp +0 -344
  722. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/detail/win_iocp_socket_connect_op.hpp +0 -139
  723. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/detail/win_iocp_socket_recv_op.hpp +0 -127
  724. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/detail/win_iocp_socket_recvfrom_op.hpp +0 -136
  725. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/detail/win_iocp_socket_recvmsg_op.hpp +0 -128
  726. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/detail/win_iocp_socket_send_op.hpp +0 -121
  727. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/detail/win_iocp_socket_service.hpp +0 -683
  728. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/detail/win_iocp_socket_service_base.hpp +0 -830
  729. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/detail/win_iocp_wait_op.hpp +0 -131
  730. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/detail/win_object_handle_service.hpp +0 -195
  731. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/detail/winrt_resolve_op.hpp +0 -126
  732. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/detail/winrt_resolver_service.hpp +0 -212
  733. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/detail/winrt_socket_connect_op.hpp +0 -99
  734. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/detail/winrt_socket_recv_op.hpp +0 -120
  735. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/detail/winrt_socket_send_op.hpp +0 -111
  736. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/detail/winrt_ssocket_service.hpp +0 -250
  737. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/detail/winrt_ssocket_service_base.hpp +0 -362
  738. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/detail/work_dispatcher.hpp +0 -157
  739. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/detail/wrapped_handler.hpp +0 -327
  740. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/dispatch.hpp +0 -202
  741. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/error.hpp +0 -391
  742. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/error_code.hpp +0 -202
  743. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/execution/allocator.hpp +0 -356
  744. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/execution/any_executor.hpp +0 -2723
  745. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/execution/bad_executor.hpp +0 -47
  746. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/execution/blocking.hpp +0 -1600
  747. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/execution/blocking_adaptation.hpp +0 -1257
  748. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/execution/bulk_execute.hpp +0 -402
  749. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/execution/bulk_guarantee.hpp +0 -1252
  750. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/execution/connect.hpp +0 -494
  751. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/execution/context.hpp +0 -244
  752. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/execution/context_as.hpp +0 -232
  753. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/execution/detail/as_invocable.hpp +0 -152
  754. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/execution/detail/as_operation.hpp +0 -109
  755. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/execution/detail/as_receiver.hpp +0 -128
  756. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/execution/detail/bulk_sender.hpp +0 -261
  757. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/execution/detail/submit_receiver.hpp +0 -233
  758. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/execution/detail/void_receiver.hpp +0 -90
  759. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/execution/execute.hpp +0 -290
  760. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/execution/executor.hpp +0 -262
  761. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/execution/impl/bad_executor.ipp +0 -40
  762. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/execution/impl/receiver_invocation_error.ipp +0 -36
  763. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/execution/invocable_archetype.hpp +0 -71
  764. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/execution/mapping.hpp +0 -1160
  765. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/execution/occupancy.hpp +0 -237
  766. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/execution/operation_state.hpp +0 -99
  767. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/execution/outstanding_work.hpp +0 -900
  768. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/execution/prefer_only.hpp +0 -331
  769. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/execution/receiver.hpp +0 -285
  770. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/execution/receiver_invocation_error.hpp +0 -48
  771. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/execution/relationship.hpp +0 -898
  772. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/execution/schedule.hpp +0 -292
  773. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/execution/scheduler.hpp +0 -91
  774. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/execution/sender.hpp +0 -316
  775. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/execution/set_done.hpp +0 -255
  776. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/execution/set_error.hpp +0 -255
  777. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/execution/set_value.hpp +0 -488
  778. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/execution/start.hpp +0 -252
  779. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/execution/submit.hpp +0 -455
  780. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/execution.hpp +0 -48
  781. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/execution_context.hpp +0 -412
  782. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/executor.hpp +0 -347
  783. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/executor_work_guard.hpp +0 -367
  784. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/experimental/as_single.hpp +0 -136
  785. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/experimental/awaitable_operators.hpp +0 -536
  786. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/experimental/basic_channel.hpp +0 -491
  787. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/experimental/basic_concurrent_channel.hpp +0 -491
  788. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/experimental/cancellation_condition.hpp +0 -155
  789. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/experimental/channel.hpp +0 -70
  790. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/experimental/channel_error.hpp +0 -84
  791. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/experimental/channel_traits.hpp +0 -301
  792. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/experimental/co_composed.hpp +0 -144
  793. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/experimental/concurrent_channel.hpp +0 -70
  794. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/experimental/detail/channel_handler.hpp +0 -80
  795. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/experimental/detail/channel_message.hpp +0 -129
  796. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/experimental/detail/channel_operation.hpp +0 -284
  797. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/experimental/detail/channel_payload.hpp +0 -139
  798. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/experimental/detail/channel_receive_op.hpp +0 -120
  799. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/experimental/detail/channel_send_functions.hpp +0 -144
  800. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/experimental/detail/channel_send_op.hpp +0 -148
  801. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/experimental/detail/channel_service.hpp +0 -677
  802. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/experimental/detail/impl/channel_service.hpp +0 -612
  803. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/experimental/impl/as_single.hpp +0 -239
  804. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/experimental/impl/channel_error.ipp +0 -61
  805. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/experimental/impl/co_composed.hpp +0 -1175
  806. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/experimental/impl/coro.hpp +0 -1222
  807. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/experimental/impl/parallel_group.hpp +0 -792
  808. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/experimental/impl/promise.hpp +0 -254
  809. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/experimental/impl/use_promise.hpp +0 -66
  810. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/experimental/parallel_group.hpp +0 -461
  811. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/experimental/use_coro.hpp +0 -195
  812. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/experimental/use_promise.hpp +0 -111
  813. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/generic/basic_endpoint.hpp +0 -193
  814. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/generic/datagram_protocol.hpp +0 -123
  815. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/generic/raw_protocol.hpp +0 -121
  816. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/generic/seq_packet_protocol.hpp +0 -122
  817. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/generic/stream_protocol.hpp +0 -127
  818. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/handler_alloc_hook.hpp +0 -104
  819. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/handler_invoke_hook.hpp +0 -111
  820. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/high_resolution_timer.hpp +0 -44
  821. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/impl/any_completion_executor.ipp +0 -130
  822. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/impl/any_io_executor.ipp +0 -141
  823. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/impl/append.hpp +0 -225
  824. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/impl/as_tuple.hpp +0 -320
  825. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/impl/awaitable.hpp +0 -1195
  826. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/impl/buffered_read_stream.hpp +0 -527
  827. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/impl/buffered_write_stream.hpp +0 -507
  828. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/impl/co_spawn.hpp +0 -437
  829. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/impl/connect.hpp +0 -959
  830. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/impl/consign.hpp +0 -202
  831. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/impl/deferred.hpp +0 -156
  832. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/impl/detached.hpp +0 -130
  833. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/impl/error.ipp +0 -128
  834. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/impl/error_code.ipp +0 -206
  835. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/impl/execution_context.hpp +0 -109
  836. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/impl/executor.hpp +0 -300
  837. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/impl/executor.ipp +0 -43
  838. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/impl/handler_alloc_hook.ipp +0 -62
  839. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/impl/io_context.hpp +0 -450
  840. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/impl/multiple_exceptions.ipp +0 -49
  841. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/impl/prepend.hpp +0 -225
  842. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/impl/read.hpp +0 -1276
  843. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/impl/read_at.hpp +0 -774
  844. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/impl/read_until.hpp +0 -3455
  845. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/impl/redirect_error.hpp +0 -634
  846. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/impl/spawn.hpp +0 -1616
  847. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/impl/src.hpp +0 -96
  848. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/impl/system_context.hpp +0 -34
  849. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/impl/system_context.ipp +0 -92
  850. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/impl/system_executor.hpp +0 -185
  851. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/impl/thread_pool.hpp +0 -354
  852. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/impl/use_awaitable.hpp +0 -301
  853. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/impl/use_future.hpp +0 -1053
  854. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/impl/write.hpp +0 -1153
  855. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/impl/write_at.hpp +0 -687
  856. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/io_context.hpp +0 -1534
  857. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/io_context_strand.hpp +0 -388
  858. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/ip/address.hpp +0 -290
  859. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/ip/address_v4.hpp +0 -430
  860. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/ip/address_v4_iterator.hpp +0 -162
  861. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/ip/address_v4_range.hpp +0 -134
  862. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/ip/address_v6.hpp +0 -416
  863. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/ip/address_v6_iterator.hpp +0 -183
  864. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/ip/address_v6_range.hpp +0 -129
  865. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/ip/bad_address_cast.hpp +0 -63
  866. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/ip/basic_endpoint.hpp +0 -291
  867. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/ip/basic_resolver.hpp +0 -1142
  868. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/ip/basic_resolver_iterator.hpp +0 -192
  869. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/ip/basic_resolver_results.hpp +0 -311
  870. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/ip/detail/endpoint.hpp +0 -141
  871. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/ip/detail/impl/endpoint.ipp +0 -199
  872. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/ip/icmp.hpp +0 -115
  873. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/ip/impl/address.ipp +0 -239
  874. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/ip/impl/address_v4.ipp +0 -210
  875. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/ip/impl/address_v6.ipp +0 -350
  876. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/ip/impl/network_v4.ipp +0 -218
  877. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/ip/impl/network_v6.ipp +0 -187
  878. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/ip/network_v4.hpp +0 -261
  879. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/ip/network_v6.hpp +0 -235
  880. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/ip/tcp.hpp +0 -155
  881. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/ip/udp.hpp +0 -111
  882. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/is_applicable_property.hpp +0 -61
  883. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/is_contiguous_iterator.hpp +0 -45
  884. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/local/basic_endpoint.hpp +0 -247
  885. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/local/datagram_protocol.hpp +0 -80
  886. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/local/seq_packet_protocol.hpp +0 -84
  887. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/local/stream_protocol.hpp +0 -90
  888. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/multiple_exceptions.hpp +0 -58
  889. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/packaged_task.hpp +0 -126
  890. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/placeholders.hpp +0 -151
  891. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/posix/basic_descriptor.hpp +0 -781
  892. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/posix/basic_stream_descriptor.hpp +0 -569
  893. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/post.hpp +0 -218
  894. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/prefer.hpp +0 -734
  895. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/prepend.hpp +0 -78
  896. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/query.hpp +0 -324
  897. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/read.hpp +0 -1480
  898. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/read_at.hpp +0 -795
  899. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/read_until.hpp +0 -3166
  900. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/recycling_allocator.hpp +0 -138
  901. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/redirect_error.hpp +0 -66
  902. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/registered_buffer.hpp +0 -356
  903. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/require.hpp +0 -571
  904. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/require_concept.hpp +0 -352
  905. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/signal_set_base.hpp +0 -182
  906. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/spawn.hpp +0 -906
  907. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/ssl/context.hpp +0 -764
  908. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/ssl/detail/buffered_handshake_op.hpp +0 -119
  909. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/ssl/detail/engine.hpp +0 -173
  910. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/ssl/detail/handshake_op.hpp +0 -67
  911. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/ssl/detail/impl/engine.ipp +0 -381
  912. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/ssl/detail/impl/openssl_init.ipp +0 -169
  913. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/ssl/detail/io.hpp +0 -435
  914. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/ssl/detail/read_op.hpp +0 -72
  915. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/ssl/detail/shutdown_op.hpp +0 -69
  916. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/ssl/detail/stream_core.hpp +0 -221
  917. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/ssl/detail/write_op.hpp +0 -76
  918. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/ssl/error.hpp +0 -125
  919. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/ssl/impl/context.ipp +0 -1321
  920. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/ssl/impl/error.ipp +0 -124
  921. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/ssl/stream.hpp +0 -1073
  922. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/steady_timer.hpp +0 -42
  923. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/strand.hpp +0 -584
  924. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/system_context.hpp +0 -90
  925. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/system_error.hpp +0 -131
  926. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/system_executor.hpp +0 -671
  927. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/system_timer.hpp +0 -42
  928. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/this_coro.hpp +0 -280
  929. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/thread_pool.hpp +0 -1145
  930. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/traits/bulk_execute_free.hpp +0 -114
  931. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/traits/bulk_execute_member.hpp +0 -114
  932. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/traits/connect_free.hpp +0 -112
  933. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/traits/connect_member.hpp +0 -112
  934. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/traits/equality_comparable.hpp +0 -104
  935. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/traits/execute_free.hpp +0 -108
  936. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/traits/execute_member.hpp +0 -108
  937. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/traits/prefer_free.hpp +0 -108
  938. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/traits/prefer_member.hpp +0 -108
  939. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/traits/query_free.hpp +0 -108
  940. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/traits/query_member.hpp +0 -108
  941. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/traits/query_static_constexpr_member.hpp +0 -108
  942. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/traits/require_concept_free.hpp +0 -108
  943. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/traits/require_concept_member.hpp +0 -108
  944. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/traits/require_free.hpp +0 -108
  945. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/traits/require_member.hpp +0 -108
  946. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/traits/schedule_free.hpp +0 -108
  947. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/traits/schedule_member.hpp +0 -108
  948. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/traits/set_done_free.hpp +0 -108
  949. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/traits/set_done_member.hpp +0 -108
  950. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/traits/set_error_free.hpp +0 -112
  951. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/traits/set_error_member.hpp +0 -112
  952. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/traits/set_value_free.hpp +0 -234
  953. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/traits/set_value_member.hpp +0 -234
  954. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/traits/start_free.hpp +0 -108
  955. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/traits/start_member.hpp +0 -108
  956. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/traits/static_query.hpp +0 -108
  957. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/traits/static_require.hpp +0 -123
  958. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/traits/static_require_concept.hpp +0 -124
  959. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/traits/submit_free.hpp +0 -112
  960. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/traits/submit_member.hpp +0 -112
  961. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/ts/netfwd.hpp +0 -254
  962. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/use_awaitable.hpp +0 -167
  963. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/use_future.hpp +0 -163
  964. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/uses_executor.hpp +0 -71
  965. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/version.hpp +0 -23
  966. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/windows/basic_object_handle.hpp +0 -493
  967. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/windows/basic_overlapped_handle.hpp +0 -460
  968. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/windows/basic_random_access_handle.hpp +0 -579
  969. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/windows/basic_stream_handle.hpp +0 -561
  970. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/windows/overlapped_ptr.hpp +0 -145
  971. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/write.hpp +0 -1438
  972. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio/write_at.hpp +0 -805
  973. data/ext/cache/asio/a1d8afc0fa0ccceae5729647623b3f7fd6859548/asio/asio/include/asio.hpp +0 -216
  974. data/ext/cache/fmt/513ade7b9791ea53008d5320013a52e682a91501/fmt/CMakeLists.txt +0 -444
  975. data/ext/cache/fmt/513ade7b9791ea53008d5320013a52e682a91501/fmt/ChangeLog.rst +0 -5922
  976. data/ext/cache/fmt/513ade7b9791ea53008d5320013a52e682a91501/fmt/README.rst +0 -545
  977. data/ext/cache/fmt/513ade7b9791ea53008d5320013a52e682a91501/fmt/include/fmt/args.h +0 -234
  978. data/ext/cache/fmt/513ade7b9791ea53008d5320013a52e682a91501/fmt/include/fmt/chrono.h +0 -2208
  979. data/ext/cache/fmt/513ade7b9791ea53008d5320013a52e682a91501/fmt/include/fmt/color.h +0 -632
  980. data/ext/cache/fmt/513ade7b9791ea53008d5320013a52e682a91501/fmt/include/fmt/compile.h +0 -534
  981. data/ext/cache/fmt/513ade7b9791ea53008d5320013a52e682a91501/fmt/include/fmt/core.h +0 -2922
  982. data/ext/cache/fmt/513ade7b9791ea53008d5320013a52e682a91501/fmt/include/fmt/format-inl.h +0 -1662
  983. data/ext/cache/fmt/513ade7b9791ea53008d5320013a52e682a91501/fmt/include/fmt/format.h +0 -4510
  984. data/ext/cache/fmt/513ade7b9791ea53008d5320013a52e682a91501/fmt/include/fmt/os.h +0 -451
  985. data/ext/cache/fmt/513ade7b9791ea53008d5320013a52e682a91501/fmt/include/fmt/ostream.h +0 -209
  986. data/ext/cache/fmt/513ade7b9791ea53008d5320013a52e682a91501/fmt/include/fmt/printf.h +0 -667
  987. data/ext/cache/fmt/513ade7b9791ea53008d5320013a52e682a91501/fmt/include/fmt/ranges.h +0 -735
  988. data/ext/cache/fmt/513ade7b9791ea53008d5320013a52e682a91501/fmt/include/fmt/std.h +0 -465
  989. data/ext/cache/fmt/513ade7b9791ea53008d5320013a52e682a91501/fmt/include/fmt/xchar.h +0 -258
  990. data/ext/cache/fmt/513ade7b9791ea53008d5320013a52e682a91501/fmt/src/fmt.cc +0 -110
  991. data/ext/cache/fmt/513ade7b9791ea53008d5320013a52e682a91501/fmt/src/os.cc +0 -398
  992. data/ext/cache/llhttp/6862303abe6dfd515c1eb7f7cec05f29c92426e9/llhttp/CMakeLists.txt +0 -117
  993. data/ext/cache/llhttp/6862303abe6dfd515c1eb7f7cec05f29c92426e9/llhttp/include/llhttp.h +0 -898
  994. data/ext/cache/llhttp/6862303abe6dfd515c1eb7f7cec05f29c92426e9/llhttp/src/llhttp.c +0 -10102
  995. data/ext/cache/spdlog/66ab2619a0014319471759c03e2de1af6bda14de/spdlog/CMakeLists.txt +0 -360
  996. data/ext/cache/spdlog/66ab2619a0014319471759c03e2de1af6bda14de/spdlog/LICENSE +0 -26
  997. data/ext/cache/spdlog/66ab2619a0014319471759c03e2de1af6bda14de/spdlog/include/spdlog/async.h +0 -99
  998. data/ext/cache/spdlog/66ab2619a0014319471759c03e2de1af6bda14de/spdlog/include/spdlog/async_logger-inl.h +0 -90
  999. data/ext/cache/spdlog/66ab2619a0014319471759c03e2de1af6bda14de/spdlog/include/spdlog/async_logger.h +0 -68
  1000. data/ext/cache/spdlog/66ab2619a0014319471759c03e2de1af6bda14de/spdlog/include/spdlog/cfg/argv.h +0 -44
  1001. data/ext/cache/spdlog/66ab2619a0014319471759c03e2de1af6bda14de/spdlog/include/spdlog/cfg/env.h +0 -38
  1002. data/ext/cache/spdlog/66ab2619a0014319471759c03e2de1af6bda14de/spdlog/include/spdlog/cfg/helpers-inl.h +0 -120
  1003. data/ext/cache/spdlog/66ab2619a0014319471759c03e2de1af6bda14de/spdlog/include/spdlog/cfg/helpers.h +0 -29
  1004. data/ext/cache/spdlog/66ab2619a0014319471759c03e2de1af6bda14de/spdlog/include/spdlog/common-inl.h +0 -82
  1005. data/ext/cache/spdlog/66ab2619a0014319471759c03e2de1af6bda14de/spdlog/include/spdlog/common.h +0 -420
  1006. data/ext/cache/spdlog/66ab2619a0014319471759c03e2de1af6bda14de/spdlog/include/spdlog/details/backtracer-inl.h +0 -75
  1007. data/ext/cache/spdlog/66ab2619a0014319471759c03e2de1af6bda14de/spdlog/include/spdlog/details/backtracer.h +0 -46
  1008. data/ext/cache/spdlog/66ab2619a0014319471759c03e2de1af6bda14de/spdlog/include/spdlog/details/circular_q.h +0 -146
  1009. data/ext/cache/spdlog/66ab2619a0014319471759c03e2de1af6bda14de/spdlog/include/spdlog/details/console_globals.h +0 -32
  1010. data/ext/cache/spdlog/66ab2619a0014319471759c03e2de1af6bda14de/spdlog/include/spdlog/details/file_helper-inl.h +0 -180
  1011. data/ext/cache/spdlog/66ab2619a0014319471759c03e2de1af6bda14de/spdlog/include/spdlog/details/file_helper.h +0 -62
  1012. data/ext/cache/spdlog/66ab2619a0014319471759c03e2de1af6bda14de/spdlog/include/spdlog/details/fmt_helper.h +0 -164
  1013. data/ext/cache/spdlog/66ab2619a0014319471759c03e2de1af6bda14de/spdlog/include/spdlog/details/log_msg-inl.h +0 -37
  1014. data/ext/cache/spdlog/66ab2619a0014319471759c03e2de1af6bda14de/spdlog/include/spdlog/details/log_msg.h +0 -37
  1015. data/ext/cache/spdlog/66ab2619a0014319471759c03e2de1af6bda14de/spdlog/include/spdlog/details/log_msg_buffer-inl.h +0 -58
  1016. data/ext/cache/spdlog/66ab2619a0014319471759c03e2de1af6bda14de/spdlog/include/spdlog/details/log_msg_buffer.h +0 -33
  1017. data/ext/cache/spdlog/66ab2619a0014319471759c03e2de1af6bda14de/spdlog/include/spdlog/details/mpmc_blocking_q.h +0 -154
  1018. data/ext/cache/spdlog/66ab2619a0014319471759c03e2de1af6bda14de/spdlog/include/spdlog/details/null_mutex.h +0 -45
  1019. data/ext/cache/spdlog/66ab2619a0014319471759c03e2de1af6bda14de/spdlog/include/spdlog/details/os-inl.h +0 -635
  1020. data/ext/cache/spdlog/66ab2619a0014319471759c03e2de1af6bda14de/spdlog/include/spdlog/details/os.h +0 -122
  1021. data/ext/cache/spdlog/66ab2619a0014319471759c03e2de1af6bda14de/spdlog/include/spdlog/details/periodic_worker-inl.h +0 -28
  1022. data/ext/cache/spdlog/66ab2619a0014319471759c03e2de1af6bda14de/spdlog/include/spdlog/details/periodic_worker.h +0 -60
  1023. data/ext/cache/spdlog/66ab2619a0014319471759c03e2de1af6bda14de/spdlog/include/spdlog/details/registry-inl.h +0 -315
  1024. data/ext/cache/spdlog/66ab2619a0014319471759c03e2de1af6bda14de/spdlog/include/spdlog/details/registry.h +0 -123
  1025. data/ext/cache/spdlog/66ab2619a0014319471759c03e2de1af6bda14de/spdlog/include/spdlog/details/synchronous_factory.h +0 -24
  1026. data/ext/cache/spdlog/66ab2619a0014319471759c03e2de1af6bda14de/spdlog/include/spdlog/details/tcp_client-windows.h +0 -160
  1027. data/ext/cache/spdlog/66ab2619a0014319471759c03e2de1af6bda14de/spdlog/include/spdlog/details/tcp_client.h +0 -146
  1028. data/ext/cache/spdlog/66ab2619a0014319471759c03e2de1af6bda14de/spdlog/include/spdlog/details/thread_pool-inl.h +0 -137
  1029. data/ext/cache/spdlog/66ab2619a0014319471759c03e2de1af6bda14de/spdlog/include/spdlog/details/thread_pool.h +0 -122
  1030. data/ext/cache/spdlog/66ab2619a0014319471759c03e2de1af6bda14de/spdlog/include/spdlog/details/udp_client-windows.h +0 -113
  1031. data/ext/cache/spdlog/66ab2619a0014319471759c03e2de1af6bda14de/spdlog/include/spdlog/details/udp_client.h +0 -94
  1032. data/ext/cache/spdlog/66ab2619a0014319471759c03e2de1af6bda14de/spdlog/include/spdlog/details/windows_include.h +0 -11
  1033. data/ext/cache/spdlog/66ab2619a0014319471759c03e2de1af6bda14de/spdlog/include/spdlog/fmt/bin_to_hex.h +0 -248
  1034. data/ext/cache/spdlog/66ab2619a0014319471759c03e2de1af6bda14de/spdlog/include/spdlog/fmt/chrono.h +0 -22
  1035. data/ext/cache/spdlog/66ab2619a0014319471759c03e2de1af6bda14de/spdlog/include/spdlog/fmt/compile.h +0 -22
  1036. data/ext/cache/spdlog/66ab2619a0014319471759c03e2de1af6bda14de/spdlog/include/spdlog/fmt/fmt.h +0 -33
  1037. data/ext/cache/spdlog/66ab2619a0014319471759c03e2de1af6bda14de/spdlog/include/spdlog/fmt/ostr.h +0 -22
  1038. data/ext/cache/spdlog/66ab2619a0014319471759c03e2de1af6bda14de/spdlog/include/spdlog/fmt/ranges.h +0 -22
  1039. data/ext/cache/spdlog/66ab2619a0014319471759c03e2de1af6bda14de/spdlog/include/spdlog/fmt/std.h +0 -23
  1040. data/ext/cache/spdlog/66ab2619a0014319471759c03e2de1af6bda14de/spdlog/include/spdlog/fmt/xchar.h +0 -22
  1041. data/ext/cache/spdlog/66ab2619a0014319471759c03e2de1af6bda14de/spdlog/include/spdlog/formatter.h +0 -18
  1042. data/ext/cache/spdlog/66ab2619a0014319471759c03e2de1af6bda14de/spdlog/include/spdlog/fwd.h +0 -18
  1043. data/ext/cache/spdlog/66ab2619a0014319471759c03e2de1af6bda14de/spdlog/include/spdlog/logger-inl.h +0 -257
  1044. data/ext/cache/spdlog/66ab2619a0014319471759c03e2de1af6bda14de/spdlog/include/spdlog/logger.h +0 -427
  1045. data/ext/cache/spdlog/66ab2619a0014319471759c03e2de1af6bda14de/spdlog/include/spdlog/pattern_formatter-inl.h +0 -1436
  1046. data/ext/cache/spdlog/66ab2619a0014319471759c03e2de1af6bda14de/spdlog/include/spdlog/pattern_formatter.h +0 -128
  1047. data/ext/cache/spdlog/66ab2619a0014319471759c03e2de1af6bda14de/spdlog/include/spdlog/sinks/android_sink.h +0 -146
  1048. data/ext/cache/spdlog/66ab2619a0014319471759c03e2de1af6bda14de/spdlog/include/spdlog/sinks/ansicolor_sink-inl.h +0 -145
  1049. data/ext/cache/spdlog/66ab2619a0014319471759c03e2de1af6bda14de/spdlog/include/spdlog/sinks/ansicolor_sink.h +0 -118
  1050. data/ext/cache/spdlog/66ab2619a0014319471759c03e2de1af6bda14de/spdlog/include/spdlog/sinks/base_sink-inl.h +0 -63
  1051. data/ext/cache/spdlog/66ab2619a0014319471759c03e2de1af6bda14de/spdlog/include/spdlog/sinks/base_sink.h +0 -52
  1052. data/ext/cache/spdlog/66ab2619a0014319471759c03e2de1af6bda14de/spdlog/include/spdlog/sinks/basic_file_sink-inl.h +0 -44
  1053. data/ext/cache/spdlog/66ab2619a0014319471759c03e2de1af6bda14de/spdlog/include/spdlog/sinks/basic_file_sink.h +0 -60
  1054. data/ext/cache/spdlog/66ab2619a0014319471759c03e2de1af6bda14de/spdlog/include/spdlog/sinks/callback_sink.h +0 -61
  1055. data/ext/cache/spdlog/66ab2619a0014319471759c03e2de1af6bda14de/spdlog/include/spdlog/sinks/daily_file_sink.h +0 -247
  1056. data/ext/cache/spdlog/66ab2619a0014319471759c03e2de1af6bda14de/spdlog/include/spdlog/sinks/dist_sink.h +0 -97
  1057. data/ext/cache/spdlog/66ab2619a0014319471759c03e2de1af6bda14de/spdlog/include/spdlog/sinks/dup_filter_sink.h +0 -96
  1058. data/ext/cache/spdlog/66ab2619a0014319471759c03e2de1af6bda14de/spdlog/include/spdlog/sinks/hourly_file_sink.h +0 -204
  1059. data/ext/cache/spdlog/66ab2619a0014319471759c03e2de1af6bda14de/spdlog/include/spdlog/sinks/kafka_sink.h +0 -133
  1060. data/ext/cache/spdlog/66ab2619a0014319471759c03e2de1af6bda14de/spdlog/include/spdlog/sinks/mongo_sink.h +0 -107
  1061. data/ext/cache/spdlog/66ab2619a0014319471759c03e2de1af6bda14de/spdlog/include/spdlog/sinks/msvc_sink.h +0 -71
  1062. data/ext/cache/spdlog/66ab2619a0014319471759c03e2de1af6bda14de/spdlog/include/spdlog/sinks/null_sink.h +0 -44
  1063. data/ext/cache/spdlog/66ab2619a0014319471759c03e2de1af6bda14de/spdlog/include/spdlog/sinks/ostream_sink.h +0 -50
  1064. data/ext/cache/spdlog/66ab2619a0014319471759c03e2de1af6bda14de/spdlog/include/spdlog/sinks/qt_sinks.h +0 -292
  1065. data/ext/cache/spdlog/66ab2619a0014319471759c03e2de1af6bda14de/spdlog/include/spdlog/sinks/ringbuffer_sink.h +0 -74
  1066. data/ext/cache/spdlog/66ab2619a0014319471759c03e2de1af6bda14de/spdlog/include/spdlog/sinks/rotating_file_sink-inl.h +0 -152
  1067. data/ext/cache/spdlog/66ab2619a0014319471759c03e2de1af6bda14de/spdlog/include/spdlog/sinks/rotating_file_sink.h +0 -81
  1068. data/ext/cache/spdlog/66ab2619a0014319471759c03e2de1af6bda14de/spdlog/include/spdlog/sinks/sink-inl.h +0 -25
  1069. data/ext/cache/spdlog/66ab2619a0014319471759c03e2de1af6bda14de/spdlog/include/spdlog/sinks/sink.h +0 -35
  1070. data/ext/cache/spdlog/66ab2619a0014319471759c03e2de1af6bda14de/spdlog/include/spdlog/sinks/stdout_color_sinks-inl.h +0 -38
  1071. data/ext/cache/spdlog/66ab2619a0014319471759c03e2de1af6bda14de/spdlog/include/spdlog/sinks/stdout_color_sinks.h +0 -45
  1072. data/ext/cache/spdlog/66ab2619a0014319471759c03e2de1af6bda14de/spdlog/include/spdlog/sinks/stdout_sinks-inl.h +0 -138
  1073. data/ext/cache/spdlog/66ab2619a0014319471759c03e2de1af6bda14de/spdlog/include/spdlog/sinks/stdout_sinks.h +0 -87
  1074. data/ext/cache/spdlog/66ab2619a0014319471759c03e2de1af6bda14de/spdlog/include/spdlog/sinks/syslog_sink.h +0 -109
  1075. data/ext/cache/spdlog/66ab2619a0014319471759c03e2de1af6bda14de/spdlog/include/spdlog/sinks/systemd_sink.h +0 -126
  1076. data/ext/cache/spdlog/66ab2619a0014319471759c03e2de1af6bda14de/spdlog/include/spdlog/sinks/tcp_sink.h +0 -81
  1077. data/ext/cache/spdlog/66ab2619a0014319471759c03e2de1af6bda14de/spdlog/include/spdlog/sinks/udp_sink.h +0 -74
  1078. data/ext/cache/spdlog/66ab2619a0014319471759c03e2de1af6bda14de/spdlog/include/spdlog/sinks/win_eventlog_sink.h +0 -289
  1079. data/ext/cache/spdlog/66ab2619a0014319471759c03e2de1af6bda14de/spdlog/include/spdlog/sinks/wincolor_sink-inl.h +0 -175
  1080. data/ext/cache/spdlog/66ab2619a0014319471759c03e2de1af6bda14de/spdlog/include/spdlog/sinks/wincolor_sink.h +0 -85
  1081. data/ext/cache/spdlog/66ab2619a0014319471759c03e2de1af6bda14de/spdlog/include/spdlog/spdlog-inl.h +0 -125
  1082. data/ext/cache/spdlog/66ab2619a0014319471759c03e2de1af6bda14de/spdlog/include/spdlog/spdlog.h +0 -363
  1083. data/ext/cache/spdlog/66ab2619a0014319471759c03e2de1af6bda14de/spdlog/include/spdlog/stopwatch.h +0 -69
  1084. data/ext/cache/spdlog/66ab2619a0014319471759c03e2de1af6bda14de/spdlog/include/spdlog/tweakme.h +0 -140
  1085. data/ext/cache/spdlog/66ab2619a0014319471759c03e2de1af6bda14de/spdlog/include/spdlog/version.h +0 -10
  1086. data/ext/cache/spdlog/66ab2619a0014319471759c03e2de1af6bda14de/spdlog/src/async.cpp +0 -11
  1087. data/ext/cache/spdlog/66ab2619a0014319471759c03e2de1af6bda14de/spdlog/src/bundled_fmtlib_format.cpp +0 -52
  1088. data/ext/cache/spdlog/66ab2619a0014319471759c03e2de1af6bda14de/spdlog/src/cfg.cpp +0 -8
  1089. data/ext/cache/spdlog/66ab2619a0014319471759c03e2de1af6bda14de/spdlog/src/color_sinks.cpp +0 -51
  1090. data/ext/cache/spdlog/66ab2619a0014319471759c03e2de1af6bda14de/spdlog/src/file_sinks.cpp +0 -20
  1091. data/ext/cache/spdlog/66ab2619a0014319471759c03e2de1af6bda14de/spdlog/src/spdlog.cpp +0 -26
  1092. data/ext/cache/spdlog/66ab2619a0014319471759c03e2de1af6bda14de/spdlog/src/stdout_sinks.cpp +0 -29
  1093. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/associator.hpp +0 -0
  1094. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/awaitable.hpp +0 -0
  1095. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/buffered_read_stream_fwd.hpp +0 -0
  1096. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/buffered_stream_fwd.hpp +0 -0
  1097. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/buffered_write_stream_fwd.hpp +0 -0
  1098. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/completion_condition.hpp +0 -0
  1099. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/connect_pipe.hpp +0 -0
  1100. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/coroutine.hpp +0 -0
  1101. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/deadline_timer.hpp +0 -0
  1102. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/detail/assert.hpp +0 -0
  1103. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/detail/buffer_resize_guard.hpp +0 -0
  1104. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/detail/buffered_stream_storage.hpp +0 -0
  1105. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/detail/call_stack.hpp +0 -0
  1106. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/detail/chrono_time_traits.hpp +0 -0
  1107. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/detail/concurrency_hint.hpp +0 -0
  1108. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/detail/conditionally_enabled_event.hpp +0 -0
  1109. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/detail/conditionally_enabled_mutex.hpp +0 -0
  1110. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/detail/date_time_fwd.hpp +0 -0
  1111. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/detail/dependent_type.hpp +0 -0
  1112. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/detail/descriptor_ops.hpp +0 -0
  1113. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/detail/dev_poll_reactor.hpp +0 -0
  1114. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/detail/epoll_reactor.hpp +0 -0
  1115. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/detail/eventfd_select_interrupter.hpp +0 -0
  1116. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/detail/fd_set_adapter.hpp +0 -0
  1117. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/detail/handler_cont_helpers.hpp +0 -0
  1118. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/detail/hash_map.hpp +0 -0
  1119. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/detail/impl/buffer_sequence_adapter.ipp +0 -0
  1120. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/detail/impl/descriptor_ops.ipp +0 -0
  1121. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/detail/impl/dev_poll_reactor.hpp +0 -0
  1122. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/detail/impl/dev_poll_reactor.ipp +0 -0
  1123. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/detail/impl/epoll_reactor.hpp +0 -0
  1124. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/detail/impl/epoll_reactor.ipp +0 -0
  1125. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/detail/impl/eventfd_select_interrupter.ipp +0 -0
  1126. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/detail/impl/io_uring_file_service.ipp +0 -0
  1127. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/detail/impl/io_uring_service.hpp +0 -0
  1128. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/detail/impl/io_uring_service.ipp +0 -0
  1129. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/detail/impl/kqueue_reactor.hpp +0 -0
  1130. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/detail/impl/kqueue_reactor.ipp +0 -0
  1131. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/detail/impl/null_event.ipp +0 -0
  1132. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/detail/impl/pipe_select_interrupter.ipp +0 -0
  1133. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/detail/impl/posix_event.ipp +0 -0
  1134. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/detail/impl/posix_mutex.ipp +0 -0
  1135. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/detail/impl/posix_serial_port_service.ipp +0 -0
  1136. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/detail/impl/posix_thread.ipp +0 -0
  1137. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/detail/impl/posix_tss_ptr.ipp +0 -0
  1138. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/detail/impl/scheduler.ipp +0 -0
  1139. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/detail/impl/select_reactor.hpp +0 -0
  1140. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/detail/impl/select_reactor.ipp +0 -0
  1141. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/detail/impl/service_registry.ipp +0 -0
  1142. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/detail/impl/signal_set_service.ipp +0 -0
  1143. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/detail/impl/socket_ops.ipp +0 -0
  1144. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/detail/impl/socket_select_interrupter.ipp +0 -0
  1145. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/detail/impl/strand_executor_service.ipp +0 -0
  1146. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/detail/impl/strand_service.ipp +0 -0
  1147. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/detail/impl/thread_context.ipp +0 -0
  1148. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/detail/impl/timer_queue_set.ipp +0 -0
  1149. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/detail/impl/win_event.ipp +0 -0
  1150. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/detail/impl/win_iocp_file_service.ipp +0 -0
  1151. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/detail/impl/win_iocp_handle_service.ipp +0 -0
  1152. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/detail/impl/win_iocp_serial_port_service.ipp +0 -0
  1153. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/detail/impl/win_mutex.ipp +0 -0
  1154. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/detail/impl/win_object_handle_service.ipp +0 -0
  1155. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/detail/impl/win_static_mutex.ipp +0 -0
  1156. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/detail/impl/win_thread.ipp +0 -0
  1157. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/detail/impl/win_tss_ptr.ipp +0 -0
  1158. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/detail/impl/winrt_timer_scheduler.hpp +0 -0
  1159. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/detail/impl/winrt_timer_scheduler.ipp +0 -0
  1160. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/detail/impl/winsock_init.ipp +0 -0
  1161. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/detail/io_control.hpp +0 -0
  1162. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/detail/io_uring_file_service.hpp +0 -0
  1163. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/detail/io_uring_operation.hpp +0 -0
  1164. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/detail/io_uring_service.hpp +0 -0
  1165. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/detail/is_executor.hpp +0 -0
  1166. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/detail/keyword_tss_ptr.hpp +0 -0
  1167. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/detail/kqueue_reactor.hpp +0 -0
  1168. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/detail/local_free_on_block_exit.hpp +0 -0
  1169. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/detail/noncopyable.hpp +0 -0
  1170. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/detail/null_event.hpp +0 -0
  1171. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/detail/null_fenced_block.hpp +0 -0
  1172. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/detail/null_global.hpp +0 -0
  1173. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/detail/null_mutex.hpp +0 -0
  1174. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/detail/null_reactor.hpp +0 -0
  1175. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/detail/null_signal_blocker.hpp +0 -0
  1176. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/detail/null_static_mutex.hpp +0 -0
  1177. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/detail/null_thread.hpp +0 -0
  1178. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/detail/null_tss_ptr.hpp +0 -0
  1179. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/detail/object_pool.hpp +0 -0
  1180. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/detail/old_win_sdk_compat.hpp +0 -0
  1181. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/detail/op_queue.hpp +0 -0
  1182. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/detail/operation.hpp +0 -0
  1183. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/detail/pipe_select_interrupter.hpp +0 -0
  1184. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/detail/pop_options.hpp +0 -0
  1185. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/detail/posix_event.hpp +0 -0
  1186. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/detail/posix_fd_set_adapter.hpp +0 -0
  1187. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/detail/posix_global.hpp +0 -0
  1188. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/detail/posix_mutex.hpp +0 -0
  1189. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/detail/posix_serial_port_service.hpp +0 -0
  1190. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/detail/posix_signal_blocker.hpp +0 -0
  1191. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/detail/posix_static_mutex.hpp +0 -0
  1192. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/detail/posix_thread.hpp +0 -0
  1193. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/detail/posix_tss_ptr.hpp +0 -0
  1194. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/detail/push_options.hpp +0 -0
  1195. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/detail/reactor.hpp +0 -0
  1196. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/detail/reactor_op.hpp +0 -0
  1197. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/detail/reactor_op_queue.hpp +0 -0
  1198. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/detail/resolve_op.hpp +0 -0
  1199. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/detail/resolver_service_base.hpp +0 -0
  1200. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/detail/scheduler.hpp +0 -0
  1201. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/detail/scheduler_operation.hpp +0 -0
  1202. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/detail/scheduler_task.hpp +0 -0
  1203. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/detail/scheduler_thread_info.hpp +0 -0
  1204. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/detail/scoped_lock.hpp +0 -0
  1205. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/detail/scoped_ptr.hpp +0 -0
  1206. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/detail/select_interrupter.hpp +0 -0
  1207. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/detail/select_reactor.hpp +0 -0
  1208. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/detail/signal_blocker.hpp +0 -0
  1209. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/detail/signal_init.hpp +0 -0
  1210. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/detail/signal_op.hpp +0 -0
  1211. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/detail/socket_holder.hpp +0 -0
  1212. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/detail/socket_ops.hpp +0 -0
  1213. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/detail/socket_option.hpp +0 -0
  1214. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/detail/socket_select_interrupter.hpp +0 -0
  1215. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/detail/socket_types.hpp +0 -0
  1216. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/detail/source_location.hpp +0 -0
  1217. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/detail/strand_service.hpp +0 -0
  1218. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/detail/string_view.hpp +0 -0
  1219. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/detail/thread_context.hpp +0 -0
  1220. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/detail/thread_group.hpp +0 -0
  1221. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/detail/throw_error.hpp +0 -0
  1222. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/detail/throw_exception.hpp +0 -0
  1223. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/detail/timer_queue.hpp +0 -0
  1224. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/detail/timer_queue_base.hpp +0 -0
  1225. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/detail/timer_queue_set.hpp +0 -0
  1226. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/detail/timer_scheduler.hpp +0 -0
  1227. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/detail/timer_scheduler_fwd.hpp +0 -0
  1228. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/detail/tss_ptr.hpp +0 -0
  1229. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/detail/wait_op.hpp +0 -0
  1230. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/detail/win_event.hpp +0 -0
  1231. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/detail/win_fd_set_adapter.hpp +0 -0
  1232. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/detail/win_global.hpp +0 -0
  1233. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/detail/win_iocp_file_service.hpp +0 -0
  1234. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/detail/win_iocp_io_context.hpp +0 -0
  1235. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/detail/win_iocp_operation.hpp +0 -0
  1236. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/detail/win_iocp_serial_port_service.hpp +0 -0
  1237. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/detail/win_iocp_thread_info.hpp +0 -0
  1238. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/detail/win_mutex.hpp +0 -0
  1239. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/detail/win_static_mutex.hpp +0 -0
  1240. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/detail/win_thread.hpp +0 -0
  1241. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/detail/win_tss_ptr.hpp +0 -0
  1242. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/detail/winapp_thread.hpp +0 -0
  1243. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/detail/wince_thread.hpp +0 -0
  1244. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/detail/winrt_async_manager.hpp +0 -0
  1245. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/detail/winrt_async_op.hpp +0 -0
  1246. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/detail/winrt_timer_scheduler.hpp +0 -0
  1247. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/detail/winrt_utils.hpp +0 -0
  1248. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/detail/winsock_init.hpp +0 -0
  1249. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/experimental/append.hpp +0 -0
  1250. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/experimental/as_tuple.hpp +0 -0
  1251. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/experimental/co_spawn.hpp +0 -0
  1252. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/experimental/coro.hpp +0 -0
  1253. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/experimental/coro_traits.hpp +0 -0
  1254. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/experimental/deferred.hpp +0 -0
  1255. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/experimental/detail/coro_completion_handler.hpp +0 -0
  1256. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/experimental/detail/coro_promise_allocator.hpp +0 -0
  1257. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/experimental/detail/has_signature.hpp +0 -0
  1258. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/experimental/detail/partial_promise.hpp +0 -0
  1259. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/experimental/impl/use_coro.hpp +0 -0
  1260. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/experimental/prepend.hpp +0 -0
  1261. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/experimental/promise.hpp +0 -0
  1262. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/file_base.hpp +0 -0
  1263. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/generic/detail/endpoint.hpp +0 -0
  1264. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/generic/detail/impl/endpoint.ipp +0 -0
  1265. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/handler_continuation_hook.hpp +0 -0
  1266. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/impl/cancellation_signal.ipp +0 -0
  1267. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/impl/connect_pipe.hpp +0 -0
  1268. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/impl/connect_pipe.ipp +0 -0
  1269. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/impl/execution_context.ipp +0 -0
  1270. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/impl/io_context.ipp +0 -0
  1271. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/impl/serial_port_base.hpp +0 -0
  1272. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/impl/serial_port_base.ipp +0 -0
  1273. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/impl/thread_pool.ipp +0 -0
  1274. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/io_service.hpp +0 -0
  1275. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/io_service_strand.hpp +0 -0
  1276. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/ip/basic_resolver_entry.hpp +0 -0
  1277. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/ip/basic_resolver_query.hpp +0 -0
  1278. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/ip/detail/socket_option.hpp +0 -0
  1279. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/ip/host_name.hpp +0 -0
  1280. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/ip/impl/address.hpp +0 -0
  1281. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/ip/impl/address_v4.hpp +0 -0
  1282. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/ip/impl/address_v6.hpp +0 -0
  1283. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/ip/impl/basic_endpoint.hpp +0 -0
  1284. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/ip/impl/host_name.ipp +0 -0
  1285. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/ip/impl/network_v4.hpp +0 -0
  1286. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/ip/impl/network_v6.hpp +0 -0
  1287. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/ip/multicast.hpp +0 -0
  1288. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/ip/resolver_base.hpp +0 -0
  1289. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/ip/resolver_query_base.hpp +0 -0
  1290. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/ip/unicast.hpp +0 -0
  1291. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/ip/v6_only.hpp +0 -0
  1292. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/is_executor.hpp +0 -0
  1293. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/is_read_buffered.hpp +0 -0
  1294. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/is_write_buffered.hpp +0 -0
  1295. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/local/connect_pair.hpp +0 -0
  1296. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/local/detail/endpoint.hpp +0 -0
  1297. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/local/detail/impl/endpoint.ipp +0 -0
  1298. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/posix/descriptor.hpp +0 -0
  1299. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/posix/descriptor_base.hpp +0 -0
  1300. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/posix/stream_descriptor.hpp +0 -0
  1301. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/random_access_file.hpp +0 -0
  1302. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/readable_pipe.hpp +0 -0
  1303. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/serial_port.hpp +0 -0
  1304. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/serial_port_base.hpp +0 -0
  1305. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/signal_set.hpp +0 -0
  1306. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/socket_base.hpp +0 -0
  1307. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/ssl/context_base.hpp +0 -0
  1308. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/ssl/detail/openssl_init.hpp +0 -0
  1309. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/ssl/detail/openssl_types.hpp +0 -0
  1310. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/ssl/detail/password_callback.hpp +0 -0
  1311. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/ssl/detail/verify_callback.hpp +0 -0
  1312. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/ssl/host_name_verification.hpp +0 -0
  1313. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/ssl/impl/context.hpp +0 -0
  1314. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/ssl/impl/host_name_verification.ipp +0 -0
  1315. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/ssl/impl/rfc2818_verification.ipp +0 -0
  1316. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/ssl/impl/src.hpp +0 -0
  1317. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/ssl/rfc2818_verification.hpp +0 -0
  1318. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/ssl/stream_base.hpp +0 -0
  1319. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/ssl/verify_context.hpp +0 -0
  1320. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/ssl/verify_mode.hpp +0 -0
  1321. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/ssl.hpp +0 -0
  1322. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/static_thread_pool.hpp +0 -0
  1323. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/stream_file.hpp +0 -0
  1324. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/streambuf.hpp +0 -0
  1325. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/thread.hpp +0 -0
  1326. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/time_traits.hpp +0 -0
  1327. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/ts/buffer.hpp +0 -0
  1328. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/ts/executor.hpp +0 -0
  1329. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/ts/internet.hpp +0 -0
  1330. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/ts/io_context.hpp +0 -0
  1331. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/ts/net.hpp +0 -0
  1332. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/ts/socket.hpp +0 -0
  1333. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/ts/timer.hpp +0 -0
  1334. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/unyield.hpp +0 -0
  1335. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/wait_traits.hpp +0 -0
  1336. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/windows/object_handle.hpp +0 -0
  1337. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/windows/overlapped_handle.hpp +0 -0
  1338. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/windows/random_access_handle.hpp +0 -0
  1339. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/windows/stream_handle.hpp +0 -0
  1340. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/writable_pipe.hpp +0 -0
  1341. /data/ext/cache/asio/{a1d8afc0fa0ccceae5729647623b3f7fd6859548 → 41f31469d0dd420500b334dc8c2fd3ffe7320d8e}/asio/asio/include/asio/yield.hpp +0 -0
  1342. /data/ext/cache/fmt/{513ade7b9791ea53008d5320013a52e682a91501/fmt/LICENSE.rst → d3c862243fcf1c41b4c09903f35479bd42f135b7/fmt/LICENSE} +0 -0
  1343. /data/ext/cache/fmt/{513ade7b9791ea53008d5320013a52e682a91501 → d3c862243fcf1c41b4c09903f35479bd42f135b7}/fmt/src/format.cc +0 -0
  1344. /data/ext/cache/fmt/{513ade7b9791ea53008d5320013a52e682a91501 → d3c862243fcf1c41b4c09903f35479bd42f135b7}/fmt/support/cmake/FindSetEnv.cmake +0 -0
  1345. /data/ext/cache/fmt/{513ade7b9791ea53008d5320013a52e682a91501 → d3c862243fcf1c41b4c09903f35479bd42f135b7}/fmt/support/cmake/JoinPaths.cmake +0 -0
  1346. /data/ext/cache/fmt/{513ade7b9791ea53008d5320013a52e682a91501 → d3c862243fcf1c41b4c09903f35479bd42f135b7}/fmt/support/cmake/fmt-config.cmake.in +0 -0
  1347. /data/ext/cache/fmt/{513ade7b9791ea53008d5320013a52e682a91501 → d3c862243fcf1c41b4c09903f35479bd42f135b7}/fmt/support/cmake/fmt.pc.in +0 -0
  1348. /data/ext/cache/llhttp/{6862303abe6dfd515c1eb7f7cec05f29c92426e9 → b74a6759ffeff2e9b72f62f790afbc73362a526b}/llhttp/LICENSE-MIT +0 -0
  1349. /data/ext/cache/llhttp/{6862303abe6dfd515c1eb7f7cec05f29c92426e9 → b74a6759ffeff2e9b72f62f790afbc73362a526b}/llhttp/libllhttp.pc.in +0 -0
  1350. /data/ext/cache/llhttp/{6862303abe6dfd515c1eb7f7cec05f29c92426e9 → b74a6759ffeff2e9b72f62f790afbc73362a526b}/llhttp/src/api.c +0 -0
  1351. /data/ext/cache/llhttp/{6862303abe6dfd515c1eb7f7cec05f29c92426e9 → b74a6759ffeff2e9b72f62f790afbc73362a526b}/llhttp/src/http.c +0 -0
  1352. /data/ext/cache/spdlog/{66ab2619a0014319471759c03e2de1af6bda14de → 25435891d500fa18cdfc40bd923333e006159907}/spdlog/cmake/ide.cmake +0 -0
  1353. /data/ext/cache/spdlog/{66ab2619a0014319471759c03e2de1af6bda14de → 25435891d500fa18cdfc40bd923333e006159907}/spdlog/cmake/pch.h.in +0 -0
  1354. /data/ext/cache/spdlog/{66ab2619a0014319471759c03e2de1af6bda14de → 25435891d500fa18cdfc40bd923333e006159907}/spdlog/cmake/spdlog.pc.in +0 -0
  1355. /data/ext/cache/spdlog/{66ab2619a0014319471759c03e2de1af6bda14de → 25435891d500fa18cdfc40bd923333e006159907}/spdlog/cmake/spdlogCPack.cmake +0 -0
  1356. /data/ext/cache/spdlog/{66ab2619a0014319471759c03e2de1af6bda14de → 25435891d500fa18cdfc40bd923333e006159907}/spdlog/cmake/spdlogConfig.cmake.in +0 -0
  1357. /data/ext/cache/spdlog/{66ab2619a0014319471759c03e2de1af6bda14de → 25435891d500fa18cdfc40bd923333e006159907}/spdlog/cmake/utils.cmake +0 -0
  1358. /data/ext/cache/spdlog/{66ab2619a0014319471759c03e2de1af6bda14de → 25435891d500fa18cdfc40bd923333e006159907}/spdlog/cmake/version.rc.in +0 -0
  1359. /data/ext/cache/spdlog/{66ab2619a0014319471759c03e2de1af6bda14de → 25435891d500fa18cdfc40bd923333e006159907}/spdlog/include/spdlog/fmt/bundled/args.h +0 -0
  1360. /data/ext/cache/spdlog/{66ab2619a0014319471759c03e2de1af6bda14de → 25435891d500fa18cdfc40bd923333e006159907}/spdlog/include/spdlog/fmt/bundled/chrono.h +0 -0
  1361. /data/ext/cache/spdlog/{66ab2619a0014319471759c03e2de1af6bda14de → 25435891d500fa18cdfc40bd923333e006159907}/spdlog/include/spdlog/fmt/bundled/color.h +0 -0
  1362. /data/ext/cache/spdlog/{66ab2619a0014319471759c03e2de1af6bda14de → 25435891d500fa18cdfc40bd923333e006159907}/spdlog/include/spdlog/fmt/bundled/compile.h +0 -0
  1363. /data/ext/cache/spdlog/{66ab2619a0014319471759c03e2de1af6bda14de → 25435891d500fa18cdfc40bd923333e006159907}/spdlog/include/spdlog/fmt/bundled/core.h +0 -0
  1364. /data/ext/cache/spdlog/{66ab2619a0014319471759c03e2de1af6bda14de → 25435891d500fa18cdfc40bd923333e006159907}/spdlog/include/spdlog/fmt/bundled/fmt.license.rst +0 -0
  1365. /data/ext/cache/spdlog/{66ab2619a0014319471759c03e2de1af6bda14de → 25435891d500fa18cdfc40bd923333e006159907}/spdlog/include/spdlog/fmt/bundled/format-inl.h +0 -0
  1366. /data/ext/cache/spdlog/{66ab2619a0014319471759c03e2de1af6bda14de → 25435891d500fa18cdfc40bd923333e006159907}/spdlog/include/spdlog/fmt/bundled/format.h +0 -0
  1367. /data/ext/cache/spdlog/{66ab2619a0014319471759c03e2de1af6bda14de → 25435891d500fa18cdfc40bd923333e006159907}/spdlog/include/spdlog/fmt/bundled/locale.h +0 -0
  1368. /data/ext/cache/spdlog/{66ab2619a0014319471759c03e2de1af6bda14de → 25435891d500fa18cdfc40bd923333e006159907}/spdlog/include/spdlog/fmt/bundled/os.h +0 -0
  1369. /data/ext/cache/spdlog/{66ab2619a0014319471759c03e2de1af6bda14de → 25435891d500fa18cdfc40bd923333e006159907}/spdlog/include/spdlog/fmt/bundled/ostream.h +0 -0
  1370. /data/ext/cache/spdlog/{66ab2619a0014319471759c03e2de1af6bda14de → 25435891d500fa18cdfc40bd923333e006159907}/spdlog/include/spdlog/fmt/bundled/printf.h +0 -0
  1371. /data/ext/cache/spdlog/{66ab2619a0014319471759c03e2de1af6bda14de → 25435891d500fa18cdfc40bd923333e006159907}/spdlog/include/spdlog/fmt/bundled/ranges.h +0 -0
  1372. /data/ext/cache/spdlog/{66ab2619a0014319471759c03e2de1af6bda14de → 25435891d500fa18cdfc40bd923333e006159907}/spdlog/include/spdlog/fmt/bundled/std.h +0 -0
  1373. /data/ext/cache/spdlog/{66ab2619a0014319471759c03e2de1af6bda14de → 25435891d500fa18cdfc40bd923333e006159907}/spdlog/include/spdlog/fmt/bundled/xchar.h +0 -0
@@ -0,0 +1,2969 @@
1
+ // Formatting library for C++ - the core API for char/UTF-8
2
+ //
3
+ // Copyright (c) 2012 - present, Victor Zverovich
4
+ // All rights reserved.
5
+ //
6
+ // For the license information refer to format.h.
7
+
8
+ #ifndef FMT_CORE_H_
9
+ #define FMT_CORE_H_
10
+
11
+ #include <cstddef> // std::byte
12
+ #include <cstdio> // std::FILE
13
+ #include <cstring> // std::strlen
14
+ #include <iterator>
15
+ #include <limits>
16
+ #include <memory> // std::addressof
17
+ #include <string>
18
+ #include <type_traits>
19
+
20
+ // The fmt library version in the form major * 10000 + minor * 100 + patch.
21
+ #define FMT_VERSION 100201
22
+
23
+ #if defined(__clang__) && !defined(__ibmxl__)
24
+ # define FMT_CLANG_VERSION (__clang_major__ * 100 + __clang_minor__)
25
+ #else
26
+ # define FMT_CLANG_VERSION 0
27
+ #endif
28
+
29
+ #if defined(__GNUC__) && !defined(__clang__) && !defined(__INTEL_COMPILER) && \
30
+ !defined(__NVCOMPILER)
31
+ # define FMT_GCC_VERSION (__GNUC__ * 100 + __GNUC_MINOR__)
32
+ #else
33
+ # define FMT_GCC_VERSION 0
34
+ #endif
35
+
36
+ #ifndef FMT_GCC_PRAGMA
37
+ // Workaround _Pragma bug https://gcc.gnu.org/bugzilla/show_bug.cgi?id=59884.
38
+ # if FMT_GCC_VERSION >= 504
39
+ # define FMT_GCC_PRAGMA(arg) _Pragma(arg)
40
+ # else
41
+ # define FMT_GCC_PRAGMA(arg)
42
+ # endif
43
+ #endif
44
+
45
+ #ifdef __ICL
46
+ # define FMT_ICC_VERSION __ICL
47
+ #elif defined(__INTEL_COMPILER)
48
+ # define FMT_ICC_VERSION __INTEL_COMPILER
49
+ #else
50
+ # define FMT_ICC_VERSION 0
51
+ #endif
52
+
53
+ #ifdef _MSC_VER
54
+ # define FMT_MSC_VERSION _MSC_VER
55
+ # define FMT_MSC_WARNING(...) __pragma(warning(__VA_ARGS__))
56
+ #else
57
+ # define FMT_MSC_VERSION 0
58
+ # define FMT_MSC_WARNING(...)
59
+ #endif
60
+
61
+ #ifdef _MSVC_LANG
62
+ # define FMT_CPLUSPLUS _MSVC_LANG
63
+ #else
64
+ # define FMT_CPLUSPLUS __cplusplus
65
+ #endif
66
+
67
+ #ifdef __has_feature
68
+ # define FMT_HAS_FEATURE(x) __has_feature(x)
69
+ #else
70
+ # define FMT_HAS_FEATURE(x) 0
71
+ #endif
72
+
73
+ #if defined(__has_include) || FMT_ICC_VERSION >= 1600 || FMT_MSC_VERSION > 1900
74
+ # define FMT_HAS_INCLUDE(x) __has_include(x)
75
+ #else
76
+ # define FMT_HAS_INCLUDE(x) 0
77
+ #endif
78
+
79
+ #ifdef __has_cpp_attribute
80
+ # define FMT_HAS_CPP_ATTRIBUTE(x) __has_cpp_attribute(x)
81
+ #else
82
+ # define FMT_HAS_CPP_ATTRIBUTE(x) 0
83
+ #endif
84
+
85
+ #define FMT_HAS_CPP14_ATTRIBUTE(attribute) \
86
+ (FMT_CPLUSPLUS >= 201402L && FMT_HAS_CPP_ATTRIBUTE(attribute))
87
+
88
+ #define FMT_HAS_CPP17_ATTRIBUTE(attribute) \
89
+ (FMT_CPLUSPLUS >= 201703L && FMT_HAS_CPP_ATTRIBUTE(attribute))
90
+
91
+ // Check if relaxed C++14 constexpr is supported.
92
+ // GCC doesn't allow throw in constexpr until version 6 (bug 67371).
93
+ #ifndef FMT_USE_CONSTEXPR
94
+ # if (FMT_HAS_FEATURE(cxx_relaxed_constexpr) || FMT_MSC_VERSION >= 1912 || \
95
+ (FMT_GCC_VERSION >= 600 && FMT_CPLUSPLUS >= 201402L)) && \
96
+ !FMT_ICC_VERSION && (!defined(__NVCC__) || FMT_CPLUSPLUS >= 202002L)
97
+ # define FMT_USE_CONSTEXPR 1
98
+ # else
99
+ # define FMT_USE_CONSTEXPR 0
100
+ # endif
101
+ #endif
102
+ #if FMT_USE_CONSTEXPR
103
+ # define FMT_CONSTEXPR constexpr
104
+ #else
105
+ # define FMT_CONSTEXPR
106
+ #endif
107
+
108
+ #if (FMT_CPLUSPLUS >= 202002L || \
109
+ (FMT_CPLUSPLUS >= 201709L && FMT_GCC_VERSION >= 1002)) && \
110
+ ((!defined(_GLIBCXX_RELEASE) || _GLIBCXX_RELEASE >= 10) && \
111
+ (!defined(_LIBCPP_VERSION) || _LIBCPP_VERSION >= 10000) && \
112
+ (!FMT_MSC_VERSION || FMT_MSC_VERSION >= 1928)) && \
113
+ defined(__cpp_lib_is_constant_evaluated)
114
+ # define FMT_CONSTEXPR20 constexpr
115
+ #else
116
+ # define FMT_CONSTEXPR20
117
+ #endif
118
+
119
+ // Check if constexpr std::char_traits<>::{compare,length} are supported.
120
+ #if defined(__GLIBCXX__)
121
+ # if FMT_CPLUSPLUS >= 201703L && defined(_GLIBCXX_RELEASE) && \
122
+ _GLIBCXX_RELEASE >= 7 // GCC 7+ libstdc++ has _GLIBCXX_RELEASE.
123
+ # define FMT_CONSTEXPR_CHAR_TRAITS constexpr
124
+ # endif
125
+ #elif defined(_LIBCPP_VERSION) && FMT_CPLUSPLUS >= 201703L && \
126
+ _LIBCPP_VERSION >= 4000
127
+ # define FMT_CONSTEXPR_CHAR_TRAITS constexpr
128
+ #elif FMT_MSC_VERSION >= 1914 && FMT_CPLUSPLUS >= 201703L
129
+ # define FMT_CONSTEXPR_CHAR_TRAITS constexpr
130
+ #endif
131
+ #ifndef FMT_CONSTEXPR_CHAR_TRAITS
132
+ # define FMT_CONSTEXPR_CHAR_TRAITS
133
+ #endif
134
+
135
+ // Check if exceptions are disabled.
136
+ #ifndef FMT_EXCEPTIONS
137
+ # if (defined(__GNUC__) && !defined(__EXCEPTIONS)) || \
138
+ (FMT_MSC_VERSION && !_HAS_EXCEPTIONS)
139
+ # define FMT_EXCEPTIONS 0
140
+ # else
141
+ # define FMT_EXCEPTIONS 1
142
+ # endif
143
+ #endif
144
+
145
+ // Disable [[noreturn]] on MSVC/NVCC because of bogus unreachable code warnings.
146
+ #if FMT_EXCEPTIONS && FMT_HAS_CPP_ATTRIBUTE(noreturn) && !FMT_MSC_VERSION && \
147
+ !defined(__NVCC__)
148
+ # define FMT_NORETURN [[noreturn]]
149
+ #else
150
+ # define FMT_NORETURN
151
+ #endif
152
+
153
+ #ifndef FMT_NODISCARD
154
+ # if FMT_HAS_CPP17_ATTRIBUTE(nodiscard)
155
+ # define FMT_NODISCARD [[nodiscard]]
156
+ # else
157
+ # define FMT_NODISCARD
158
+ # endif
159
+ #endif
160
+
161
+ #ifndef FMT_INLINE
162
+ # if FMT_GCC_VERSION || FMT_CLANG_VERSION
163
+ # define FMT_INLINE inline __attribute__((always_inline))
164
+ # else
165
+ # define FMT_INLINE inline
166
+ # endif
167
+ #endif
168
+
169
+ #ifdef _MSC_VER
170
+ # define FMT_UNCHECKED_ITERATOR(It) \
171
+ using _Unchecked_type = It // Mark iterator as checked.
172
+ #else
173
+ # define FMT_UNCHECKED_ITERATOR(It) using unchecked_type = It
174
+ #endif
175
+
176
+ #ifndef FMT_BEGIN_NAMESPACE
177
+ # define FMT_BEGIN_NAMESPACE \
178
+ namespace fmt { \
179
+ inline namespace v10 {
180
+ # define FMT_END_NAMESPACE \
181
+ } \
182
+ }
183
+ #endif
184
+
185
+ #ifndef FMT_EXPORT
186
+ # define FMT_EXPORT
187
+ # define FMT_BEGIN_EXPORT
188
+ # define FMT_END_EXPORT
189
+ #endif
190
+
191
+ #if FMT_GCC_VERSION || FMT_CLANG_VERSION
192
+ # define FMT_VISIBILITY(value) __attribute__((visibility(value)))
193
+ #else
194
+ # define FMT_VISIBILITY(value)
195
+ #endif
196
+
197
+ #if !defined(FMT_HEADER_ONLY) && defined(_WIN32)
198
+ # if defined(FMT_LIB_EXPORT)
199
+ # define FMT_API __declspec(dllexport)
200
+ # elif defined(FMT_SHARED)
201
+ # define FMT_API __declspec(dllimport)
202
+ # endif
203
+ #elif defined(FMT_LIB_EXPORT) || defined(FMT_SHARED)
204
+ # define FMT_API FMT_VISIBILITY("default")
205
+ #endif
206
+ #ifndef FMT_API
207
+ # define FMT_API
208
+ #endif
209
+
210
+ // libc++ supports string_view in pre-c++17.
211
+ #if FMT_HAS_INCLUDE(<string_view>) && \
212
+ (FMT_CPLUSPLUS >= 201703L || defined(_LIBCPP_VERSION))
213
+ # include <string_view>
214
+ # define FMT_USE_STRING_VIEW
215
+ #elif FMT_HAS_INCLUDE("experimental/string_view") && FMT_CPLUSPLUS >= 201402L
216
+ # include <experimental/string_view>
217
+ # define FMT_USE_EXPERIMENTAL_STRING_VIEW
218
+ #endif
219
+
220
+ #ifndef FMT_UNICODE
221
+ # define FMT_UNICODE !FMT_MSC_VERSION
222
+ #endif
223
+
224
+ #ifndef FMT_CONSTEVAL
225
+ # if ((FMT_GCC_VERSION >= 1000 || FMT_CLANG_VERSION >= 1101) && \
226
+ (!defined(__apple_build_version__) || \
227
+ __apple_build_version__ >= 14000029L) && \
228
+ FMT_CPLUSPLUS >= 202002L) || \
229
+ (defined(__cpp_consteval) && \
230
+ (!FMT_MSC_VERSION || FMT_MSC_VERSION >= 1929))
231
+ // consteval is broken in MSVC before VS2019 version 16.10 and Apple clang
232
+ // before 14.
233
+ # define FMT_CONSTEVAL consteval
234
+ # define FMT_HAS_CONSTEVAL
235
+ # else
236
+ # define FMT_CONSTEVAL
237
+ # endif
238
+ #endif
239
+
240
+ #ifndef FMT_USE_NONTYPE_TEMPLATE_ARGS
241
+ # if defined(__cpp_nontype_template_args) && \
242
+ ((FMT_GCC_VERSION >= 903 && FMT_CPLUSPLUS >= 201709L) || \
243
+ __cpp_nontype_template_args >= 201911L) && \
244
+ !defined(__NVCOMPILER) && !defined(__LCC__)
245
+ # define FMT_USE_NONTYPE_TEMPLATE_ARGS 1
246
+ # else
247
+ # define FMT_USE_NONTYPE_TEMPLATE_ARGS 0
248
+ # endif
249
+ #endif
250
+
251
+ // GCC < 5 requires this-> in decltype
252
+ #ifndef FMT_DECLTYPE_THIS
253
+ # if FMT_GCC_VERSION && FMT_GCC_VERSION < 500
254
+ # define FMT_DECLTYPE_THIS this->
255
+ # else
256
+ # define FMT_DECLTYPE_THIS
257
+ # endif
258
+ #endif
259
+
260
+ // Enable minimal optimizations for more compact code in debug mode.
261
+ FMT_GCC_PRAGMA("GCC push_options")
262
+ #if !defined(__OPTIMIZE__) && !defined(__NVCOMPILER) && !defined(__LCC__) && \
263
+ !defined(__CUDACC__)
264
+ FMT_GCC_PRAGMA("GCC optimize(\"Og\")")
265
+ #endif
266
+
267
+ FMT_BEGIN_NAMESPACE
268
+
269
+ // Implementations of enable_if_t and other metafunctions for older systems.
270
+ template <bool B, typename T = void>
271
+ using enable_if_t = typename std::enable_if<B, T>::type;
272
+ template <bool B, typename T, typename F>
273
+ using conditional_t = typename std::conditional<B, T, F>::type;
274
+ template <bool B> using bool_constant = std::integral_constant<bool, B>;
275
+ template <typename T>
276
+ using remove_reference_t = typename std::remove_reference<T>::type;
277
+ template <typename T>
278
+ using remove_const_t = typename std::remove_const<T>::type;
279
+ template <typename T>
280
+ using remove_cvref_t = typename std::remove_cv<remove_reference_t<T>>::type;
281
+ template <typename T> struct type_identity {
282
+ using type = T;
283
+ };
284
+ template <typename T> using type_identity_t = typename type_identity<T>::type;
285
+ template <typename T>
286
+ using underlying_t = typename std::underlying_type<T>::type;
287
+
288
+ // Checks whether T is a container with contiguous storage.
289
+ template <typename T> struct is_contiguous : std::false_type {};
290
+ template <typename Char>
291
+ struct is_contiguous<std::basic_string<Char>> : std::true_type {};
292
+
293
+ struct monostate {
294
+ constexpr monostate() {}
295
+ };
296
+
297
+ // An enable_if helper to be used in template parameters which results in much
298
+ // shorter symbols: https://godbolt.org/z/sWw4vP. Extra parentheses are needed
299
+ // to workaround a bug in MSVC 2019 (see #1140 and #1186).
300
+ #ifdef FMT_DOC
301
+ # define FMT_ENABLE_IF(...)
302
+ #else
303
+ # define FMT_ENABLE_IF(...) fmt::enable_if_t<(__VA_ARGS__), int> = 0
304
+ #endif
305
+
306
+ // This is defined in core.h instead of format.h to avoid injecting in std.
307
+ // It is a template to avoid undesirable implicit conversions to std::byte.
308
+ #ifdef __cpp_lib_byte
309
+ template <typename T, FMT_ENABLE_IF(std::is_same<T, std::byte>::value)>
310
+ inline auto format_as(T b) -> unsigned char {
311
+ return static_cast<unsigned char>(b);
312
+ }
313
+ #endif
314
+
315
+ namespace detail {
316
+ // Suppresses "unused variable" warnings with the method described in
317
+ // https://herbsutter.com/2009/10/18/mailbag-shutting-up-compiler-warnings/.
318
+ // (void)var does not work on many Intel compilers.
319
+ template <typename... T> FMT_CONSTEXPR void ignore_unused(const T&...) {}
320
+
321
+ constexpr FMT_INLINE auto is_constant_evaluated(
322
+ bool default_value = false) noexcept -> bool {
323
+ // Workaround for incompatibility between libstdc++ consteval-based
324
+ // std::is_constant_evaluated() implementation and clang-14.
325
+ // https://github.com/fmtlib/fmt/issues/3247
326
+ #if FMT_CPLUSPLUS >= 202002L && defined(_GLIBCXX_RELEASE) && \
327
+ _GLIBCXX_RELEASE >= 12 && \
328
+ (FMT_CLANG_VERSION >= 1400 && FMT_CLANG_VERSION < 1500)
329
+ ignore_unused(default_value);
330
+ return __builtin_is_constant_evaluated();
331
+ #elif defined(__cpp_lib_is_constant_evaluated)
332
+ ignore_unused(default_value);
333
+ return std::is_constant_evaluated();
334
+ #else
335
+ return default_value;
336
+ #endif
337
+ }
338
+
339
+ // Suppresses "conditional expression is constant" warnings.
340
+ template <typename T> constexpr FMT_INLINE auto const_check(T value) -> T {
341
+ return value;
342
+ }
343
+
344
+ FMT_NORETURN FMT_API void assert_fail(const char* file, int line,
345
+ const char* message);
346
+
347
+ #ifndef FMT_ASSERT
348
+ # ifdef NDEBUG
349
+ // FMT_ASSERT is not empty to avoid -Wempty-body.
350
+ # define FMT_ASSERT(condition, message) \
351
+ fmt::detail::ignore_unused((condition), (message))
352
+ # else
353
+ # define FMT_ASSERT(condition, message) \
354
+ ((condition) /* void() fails with -Winvalid-constexpr on clang 4.0.1 */ \
355
+ ? (void)0 \
356
+ : fmt::detail::assert_fail(__FILE__, __LINE__, (message)))
357
+ # endif
358
+ #endif
359
+
360
+ #if defined(FMT_USE_STRING_VIEW)
361
+ template <typename Char> using std_string_view = std::basic_string_view<Char>;
362
+ #elif defined(FMT_USE_EXPERIMENTAL_STRING_VIEW)
363
+ template <typename Char>
364
+ using std_string_view = std::experimental::basic_string_view<Char>;
365
+ #else
366
+ template <typename T> struct std_string_view {};
367
+ #endif
368
+
369
+ #ifdef FMT_USE_INT128
370
+ // Do nothing.
371
+ #elif defined(__SIZEOF_INT128__) && !defined(__NVCC__) && \
372
+ !(FMT_CLANG_VERSION && FMT_MSC_VERSION)
373
+ # define FMT_USE_INT128 1
374
+ using int128_opt = __int128_t; // An optional native 128-bit integer.
375
+ using uint128_opt = __uint128_t;
376
+ template <typename T> inline auto convert_for_visit(T value) -> T {
377
+ return value;
378
+ }
379
+ #else
380
+ # define FMT_USE_INT128 0
381
+ #endif
382
+ #if !FMT_USE_INT128
383
+ enum class int128_opt {};
384
+ enum class uint128_opt {};
385
+ // Reduce template instantiations.
386
+ template <typename T> auto convert_for_visit(T) -> monostate { return {}; }
387
+ #endif
388
+
389
+ // Casts a nonnegative integer to unsigned.
390
+ template <typename Int>
391
+ FMT_CONSTEXPR auto to_unsigned(Int value) ->
392
+ typename std::make_unsigned<Int>::type {
393
+ FMT_ASSERT(std::is_unsigned<Int>::value || value >= 0, "negative value");
394
+ return static_cast<typename std::make_unsigned<Int>::type>(value);
395
+ }
396
+
397
+ FMT_CONSTEXPR inline auto is_utf8() -> bool {
398
+ FMT_MSC_WARNING(suppress : 4566) constexpr unsigned char section[] = "\u00A7";
399
+
400
+ // Avoid buggy sign extensions in MSVC's constant evaluation mode (#2297).
401
+ using uchar = unsigned char;
402
+ return FMT_UNICODE || (sizeof(section) == 3 && uchar(section[0]) == 0xC2 &&
403
+ uchar(section[1]) == 0xA7);
404
+ }
405
+ } // namespace detail
406
+
407
+ /**
408
+ An implementation of ``std::basic_string_view`` for pre-C++17. It provides a
409
+ subset of the API. ``fmt::basic_string_view`` is used for format strings even
410
+ if ``std::string_view`` is available to prevent issues when a library is
411
+ compiled with a different ``-std`` option than the client code (which is not
412
+ recommended).
413
+ */
414
+ FMT_EXPORT
415
+ template <typename Char> class basic_string_view {
416
+ private:
417
+ const Char* data_;
418
+ size_t size_;
419
+
420
+ public:
421
+ using value_type = Char;
422
+ using iterator = const Char*;
423
+
424
+ constexpr basic_string_view() noexcept : data_(nullptr), size_(0) {}
425
+
426
+ /** Constructs a string reference object from a C string and a size. */
427
+ constexpr basic_string_view(const Char* s, size_t count) noexcept
428
+ : data_(s), size_(count) {}
429
+
430
+ /**
431
+ \rst
432
+ Constructs a string reference object from a C string computing
433
+ the size with ``std::char_traits<Char>::length``.
434
+ \endrst
435
+ */
436
+ FMT_CONSTEXPR_CHAR_TRAITS
437
+ FMT_INLINE
438
+ basic_string_view(const Char* s)
439
+ : data_(s),
440
+ size_(detail::const_check(std::is_same<Char, char>::value &&
441
+ !detail::is_constant_evaluated(true))
442
+ ? std::strlen(reinterpret_cast<const char*>(s))
443
+ : std::char_traits<Char>::length(s)) {}
444
+
445
+ /** Constructs a string reference from a ``std::basic_string`` object. */
446
+ template <typename Traits, typename Alloc>
447
+ FMT_CONSTEXPR basic_string_view(
448
+ const std::basic_string<Char, Traits, Alloc>& s) noexcept
449
+ : data_(s.data()), size_(s.size()) {}
450
+
451
+ template <typename S, FMT_ENABLE_IF(std::is_same<
452
+ S, detail::std_string_view<Char>>::value)>
453
+ FMT_CONSTEXPR basic_string_view(S s) noexcept
454
+ : data_(s.data()), size_(s.size()) {}
455
+
456
+ /** Returns a pointer to the string data. */
457
+ constexpr auto data() const noexcept -> const Char* { return data_; }
458
+
459
+ /** Returns the string size. */
460
+ constexpr auto size() const noexcept -> size_t { return size_; }
461
+
462
+ constexpr auto begin() const noexcept -> iterator { return data_; }
463
+ constexpr auto end() const noexcept -> iterator { return data_ + size_; }
464
+
465
+ constexpr auto operator[](size_t pos) const noexcept -> const Char& {
466
+ return data_[pos];
467
+ }
468
+
469
+ FMT_CONSTEXPR void remove_prefix(size_t n) noexcept {
470
+ data_ += n;
471
+ size_ -= n;
472
+ }
473
+
474
+ FMT_CONSTEXPR_CHAR_TRAITS auto starts_with(
475
+ basic_string_view<Char> sv) const noexcept -> bool {
476
+ return size_ >= sv.size_ &&
477
+ std::char_traits<Char>::compare(data_, sv.data_, sv.size_) == 0;
478
+ }
479
+ FMT_CONSTEXPR_CHAR_TRAITS auto starts_with(Char c) const noexcept -> bool {
480
+ return size_ >= 1 && std::char_traits<Char>::eq(*data_, c);
481
+ }
482
+ FMT_CONSTEXPR_CHAR_TRAITS auto starts_with(const Char* s) const -> bool {
483
+ return starts_with(basic_string_view<Char>(s));
484
+ }
485
+
486
+ // Lexicographically compare this string reference to other.
487
+ FMT_CONSTEXPR_CHAR_TRAITS auto compare(basic_string_view other) const -> int {
488
+ size_t str_size = size_ < other.size_ ? size_ : other.size_;
489
+ int result = std::char_traits<Char>::compare(data_, other.data_, str_size);
490
+ if (result == 0)
491
+ result = size_ == other.size_ ? 0 : (size_ < other.size_ ? -1 : 1);
492
+ return result;
493
+ }
494
+
495
+ FMT_CONSTEXPR_CHAR_TRAITS friend auto operator==(basic_string_view lhs,
496
+ basic_string_view rhs)
497
+ -> bool {
498
+ return lhs.compare(rhs) == 0;
499
+ }
500
+ friend auto operator!=(basic_string_view lhs, basic_string_view rhs) -> bool {
501
+ return lhs.compare(rhs) != 0;
502
+ }
503
+ friend auto operator<(basic_string_view lhs, basic_string_view rhs) -> bool {
504
+ return lhs.compare(rhs) < 0;
505
+ }
506
+ friend auto operator<=(basic_string_view lhs, basic_string_view rhs) -> bool {
507
+ return lhs.compare(rhs) <= 0;
508
+ }
509
+ friend auto operator>(basic_string_view lhs, basic_string_view rhs) -> bool {
510
+ return lhs.compare(rhs) > 0;
511
+ }
512
+ friend auto operator>=(basic_string_view lhs, basic_string_view rhs) -> bool {
513
+ return lhs.compare(rhs) >= 0;
514
+ }
515
+ };
516
+
517
+ FMT_EXPORT
518
+ using string_view = basic_string_view<char>;
519
+
520
+ /** Specifies if ``T`` is a character type. Can be specialized by users. */
521
+ FMT_EXPORT
522
+ template <typename T> struct is_char : std::false_type {};
523
+ template <> struct is_char<char> : std::true_type {};
524
+
525
+ namespace detail {
526
+
527
+ // A base class for compile-time strings.
528
+ struct compile_string {};
529
+
530
+ template <typename S>
531
+ struct is_compile_string : std::is_base_of<compile_string, S> {};
532
+
533
+ template <typename Char, FMT_ENABLE_IF(is_char<Char>::value)>
534
+ FMT_INLINE auto to_string_view(const Char* s) -> basic_string_view<Char> {
535
+ return s;
536
+ }
537
+ template <typename Char, typename Traits, typename Alloc>
538
+ inline auto to_string_view(const std::basic_string<Char, Traits, Alloc>& s)
539
+ -> basic_string_view<Char> {
540
+ return s;
541
+ }
542
+ template <typename Char>
543
+ constexpr auto to_string_view(basic_string_view<Char> s)
544
+ -> basic_string_view<Char> {
545
+ return s;
546
+ }
547
+ template <typename Char,
548
+ FMT_ENABLE_IF(!std::is_empty<std_string_view<Char>>::value)>
549
+ inline auto to_string_view(std_string_view<Char> s) -> basic_string_view<Char> {
550
+ return s;
551
+ }
552
+ template <typename S, FMT_ENABLE_IF(is_compile_string<S>::value)>
553
+ constexpr auto to_string_view(const S& s)
554
+ -> basic_string_view<typename S::char_type> {
555
+ return basic_string_view<typename S::char_type>(s);
556
+ }
557
+ void to_string_view(...);
558
+
559
+ // Specifies whether S is a string type convertible to fmt::basic_string_view.
560
+ // It should be a constexpr function but MSVC 2017 fails to compile it in
561
+ // enable_if and MSVC 2015 fails to compile it as an alias template.
562
+ // ADL is intentionally disabled as to_string_view is not an extension point.
563
+ template <typename S>
564
+ struct is_string
565
+ : std::is_class<decltype(detail::to_string_view(std::declval<S>()))> {};
566
+
567
+ template <typename S, typename = void> struct char_t_impl {};
568
+ template <typename S> struct char_t_impl<S, enable_if_t<is_string<S>::value>> {
569
+ using result = decltype(to_string_view(std::declval<S>()));
570
+ using type = typename result::value_type;
571
+ };
572
+
573
+ enum class type {
574
+ none_type,
575
+ // Integer types should go first,
576
+ int_type,
577
+ uint_type,
578
+ long_long_type,
579
+ ulong_long_type,
580
+ int128_type,
581
+ uint128_type,
582
+ bool_type,
583
+ char_type,
584
+ last_integer_type = char_type,
585
+ // followed by floating-point types.
586
+ float_type,
587
+ double_type,
588
+ long_double_type,
589
+ last_numeric_type = long_double_type,
590
+ cstring_type,
591
+ string_type,
592
+ pointer_type,
593
+ custom_type
594
+ };
595
+
596
+ // Maps core type T to the corresponding type enum constant.
597
+ template <typename T, typename Char>
598
+ struct type_constant : std::integral_constant<type, type::custom_type> {};
599
+
600
+ #define FMT_TYPE_CONSTANT(Type, constant) \
601
+ template <typename Char> \
602
+ struct type_constant<Type, Char> \
603
+ : std::integral_constant<type, type::constant> {}
604
+
605
+ FMT_TYPE_CONSTANT(int, int_type);
606
+ FMT_TYPE_CONSTANT(unsigned, uint_type);
607
+ FMT_TYPE_CONSTANT(long long, long_long_type);
608
+ FMT_TYPE_CONSTANT(unsigned long long, ulong_long_type);
609
+ FMT_TYPE_CONSTANT(int128_opt, int128_type);
610
+ FMT_TYPE_CONSTANT(uint128_opt, uint128_type);
611
+ FMT_TYPE_CONSTANT(bool, bool_type);
612
+ FMT_TYPE_CONSTANT(Char, char_type);
613
+ FMT_TYPE_CONSTANT(float, float_type);
614
+ FMT_TYPE_CONSTANT(double, double_type);
615
+ FMT_TYPE_CONSTANT(long double, long_double_type);
616
+ FMT_TYPE_CONSTANT(const Char*, cstring_type);
617
+ FMT_TYPE_CONSTANT(basic_string_view<Char>, string_type);
618
+ FMT_TYPE_CONSTANT(const void*, pointer_type);
619
+
620
+ constexpr auto is_integral_type(type t) -> bool {
621
+ return t > type::none_type && t <= type::last_integer_type;
622
+ }
623
+ constexpr auto is_arithmetic_type(type t) -> bool {
624
+ return t > type::none_type && t <= type::last_numeric_type;
625
+ }
626
+
627
+ constexpr auto set(type rhs) -> int { return 1 << static_cast<int>(rhs); }
628
+ constexpr auto in(type t, int set) -> bool {
629
+ return ((set >> static_cast<int>(t)) & 1) != 0;
630
+ }
631
+
632
+ // Bitsets of types.
633
+ enum {
634
+ sint_set =
635
+ set(type::int_type) | set(type::long_long_type) | set(type::int128_type),
636
+ uint_set = set(type::uint_type) | set(type::ulong_long_type) |
637
+ set(type::uint128_type),
638
+ bool_set = set(type::bool_type),
639
+ char_set = set(type::char_type),
640
+ float_set = set(type::float_type) | set(type::double_type) |
641
+ set(type::long_double_type),
642
+ string_set = set(type::string_type),
643
+ cstring_set = set(type::cstring_type),
644
+ pointer_set = set(type::pointer_type)
645
+ };
646
+
647
+ // DEPRECATED!
648
+ FMT_NORETURN FMT_API void throw_format_error(const char* message);
649
+
650
+ struct error_handler {
651
+ constexpr error_handler() = default;
652
+
653
+ // This function is intentionally not constexpr to give a compile-time error.
654
+ FMT_NORETURN void on_error(const char* message) {
655
+ throw_format_error(message);
656
+ }
657
+ };
658
+ } // namespace detail
659
+
660
+ /** Throws ``format_error`` with a given message. */
661
+ using detail::throw_format_error;
662
+
663
+ /** String's character type. */
664
+ template <typename S> using char_t = typename detail::char_t_impl<S>::type;
665
+
666
+ /**
667
+ \rst
668
+ Parsing context consisting of a format string range being parsed and an
669
+ argument counter for automatic indexing.
670
+ You can use the ``format_parse_context`` type alias for ``char`` instead.
671
+ \endrst
672
+ */
673
+ FMT_EXPORT
674
+ template <typename Char> class basic_format_parse_context {
675
+ private:
676
+ basic_string_view<Char> format_str_;
677
+ int next_arg_id_;
678
+
679
+ FMT_CONSTEXPR void do_check_arg_id(int id);
680
+
681
+ public:
682
+ using char_type = Char;
683
+ using iterator = const Char*;
684
+
685
+ explicit constexpr basic_format_parse_context(
686
+ basic_string_view<Char> format_str, int next_arg_id = 0)
687
+ : format_str_(format_str), next_arg_id_(next_arg_id) {}
688
+
689
+ /**
690
+ Returns an iterator to the beginning of the format string range being
691
+ parsed.
692
+ */
693
+ constexpr auto begin() const noexcept -> iterator {
694
+ return format_str_.begin();
695
+ }
696
+
697
+ /**
698
+ Returns an iterator past the end of the format string range being parsed.
699
+ */
700
+ constexpr auto end() const noexcept -> iterator { return format_str_.end(); }
701
+
702
+ /** Advances the begin iterator to ``it``. */
703
+ FMT_CONSTEXPR void advance_to(iterator it) {
704
+ format_str_.remove_prefix(detail::to_unsigned(it - begin()));
705
+ }
706
+
707
+ /**
708
+ Reports an error if using the manual argument indexing; otherwise returns
709
+ the next argument index and switches to the automatic indexing.
710
+ */
711
+ FMT_CONSTEXPR auto next_arg_id() -> int {
712
+ if (next_arg_id_ < 0) {
713
+ detail::throw_format_error(
714
+ "cannot switch from manual to automatic argument indexing");
715
+ return 0;
716
+ }
717
+ int id = next_arg_id_++;
718
+ do_check_arg_id(id);
719
+ return id;
720
+ }
721
+
722
+ /**
723
+ Reports an error if using the automatic argument indexing; otherwise
724
+ switches to the manual indexing.
725
+ */
726
+ FMT_CONSTEXPR void check_arg_id(int id) {
727
+ if (next_arg_id_ > 0) {
728
+ detail::throw_format_error(
729
+ "cannot switch from automatic to manual argument indexing");
730
+ return;
731
+ }
732
+ next_arg_id_ = -1;
733
+ do_check_arg_id(id);
734
+ }
735
+ FMT_CONSTEXPR void check_arg_id(basic_string_view<Char>) {}
736
+ FMT_CONSTEXPR void check_dynamic_spec(int arg_id);
737
+ };
738
+
739
+ FMT_EXPORT
740
+ using format_parse_context = basic_format_parse_context<char>;
741
+
742
+ namespace detail {
743
+ // A parse context with extra data used only in compile-time checks.
744
+ template <typename Char>
745
+ class compile_parse_context : public basic_format_parse_context<Char> {
746
+ private:
747
+ int num_args_;
748
+ const type* types_;
749
+ using base = basic_format_parse_context<Char>;
750
+
751
+ public:
752
+ explicit FMT_CONSTEXPR compile_parse_context(
753
+ basic_string_view<Char> format_str, int num_args, const type* types,
754
+ int next_arg_id = 0)
755
+ : base(format_str, next_arg_id), num_args_(num_args), types_(types) {}
756
+
757
+ constexpr auto num_args() const -> int { return num_args_; }
758
+ constexpr auto arg_type(int id) const -> type { return types_[id]; }
759
+
760
+ FMT_CONSTEXPR auto next_arg_id() -> int {
761
+ int id = base::next_arg_id();
762
+ if (id >= num_args_) throw_format_error("argument not found");
763
+ return id;
764
+ }
765
+
766
+ FMT_CONSTEXPR void check_arg_id(int id) {
767
+ base::check_arg_id(id);
768
+ if (id >= num_args_) throw_format_error("argument not found");
769
+ }
770
+ using base::check_arg_id;
771
+
772
+ FMT_CONSTEXPR void check_dynamic_spec(int arg_id) {
773
+ detail::ignore_unused(arg_id);
774
+ #if !defined(__LCC__)
775
+ if (arg_id < num_args_ && types_ && !is_integral_type(types_[arg_id]))
776
+ throw_format_error("width/precision is not integer");
777
+ #endif
778
+ }
779
+ };
780
+
781
+ // Extracts a reference to the container from back_insert_iterator.
782
+ template <typename Container>
783
+ inline auto get_container(std::back_insert_iterator<Container> it)
784
+ -> Container& {
785
+ using base = std::back_insert_iterator<Container>;
786
+ struct accessor : base {
787
+ accessor(base b) : base(b) {}
788
+ using base::container;
789
+ };
790
+ return *accessor(it).container;
791
+ }
792
+
793
+ template <typename Char, typename InputIt, typename OutputIt>
794
+ FMT_CONSTEXPR auto copy_str(InputIt begin, InputIt end, OutputIt out)
795
+ -> OutputIt {
796
+ while (begin != end) *out++ = static_cast<Char>(*begin++);
797
+ return out;
798
+ }
799
+
800
+ template <typename Char, typename T, typename U,
801
+ FMT_ENABLE_IF(
802
+ std::is_same<remove_const_t<T>, U>::value&& is_char<U>::value)>
803
+ FMT_CONSTEXPR auto copy_str(T* begin, T* end, U* out) -> U* {
804
+ if (is_constant_evaluated()) return copy_str<Char, T*, U*>(begin, end, out);
805
+ auto size = to_unsigned(end - begin);
806
+ if (size > 0) memcpy(out, begin, size * sizeof(U));
807
+ return out + size;
808
+ }
809
+
810
+ /**
811
+ \rst
812
+ A contiguous memory buffer with an optional growing ability. It is an internal
813
+ class and shouldn't be used directly, only via `~fmt::basic_memory_buffer`.
814
+ \endrst
815
+ */
816
+ template <typename T> class buffer {
817
+ private:
818
+ T* ptr_;
819
+ size_t size_;
820
+ size_t capacity_;
821
+
822
+ protected:
823
+ // Don't initialize ptr_ since it is not accessed to save a few cycles.
824
+ FMT_MSC_WARNING(suppress : 26495)
825
+ FMT_CONSTEXPR buffer(size_t sz) noexcept : size_(sz), capacity_(sz) {}
826
+
827
+ FMT_CONSTEXPR20 buffer(T* p = nullptr, size_t sz = 0, size_t cap = 0) noexcept
828
+ : ptr_(p), size_(sz), capacity_(cap) {}
829
+
830
+ FMT_CONSTEXPR20 ~buffer() = default;
831
+ buffer(buffer&&) = default;
832
+
833
+ /** Sets the buffer data and capacity. */
834
+ FMT_CONSTEXPR void set(T* buf_data, size_t buf_capacity) noexcept {
835
+ ptr_ = buf_data;
836
+ capacity_ = buf_capacity;
837
+ }
838
+
839
+ /** Increases the buffer capacity to hold at least *capacity* elements. */
840
+ // DEPRECATED!
841
+ virtual FMT_CONSTEXPR20 void grow(size_t capacity) = 0;
842
+
843
+ public:
844
+ using value_type = T;
845
+ using const_reference = const T&;
846
+
847
+ buffer(const buffer&) = delete;
848
+ void operator=(const buffer&) = delete;
849
+
850
+ FMT_INLINE auto begin() noexcept -> T* { return ptr_; }
851
+ FMT_INLINE auto end() noexcept -> T* { return ptr_ + size_; }
852
+
853
+ FMT_INLINE auto begin() const noexcept -> const T* { return ptr_; }
854
+ FMT_INLINE auto end() const noexcept -> const T* { return ptr_ + size_; }
855
+
856
+ /** Returns the size of this buffer. */
857
+ constexpr auto size() const noexcept -> size_t { return size_; }
858
+
859
+ /** Returns the capacity of this buffer. */
860
+ constexpr auto capacity() const noexcept -> size_t { return capacity_; }
861
+
862
+ /** Returns a pointer to the buffer data (not null-terminated). */
863
+ FMT_CONSTEXPR auto data() noexcept -> T* { return ptr_; }
864
+ FMT_CONSTEXPR auto data() const noexcept -> const T* { return ptr_; }
865
+
866
+ /** Clears this buffer. */
867
+ void clear() { size_ = 0; }
868
+
869
+ // Tries resizing the buffer to contain *count* elements. If T is a POD type
870
+ // the new elements may not be initialized.
871
+ FMT_CONSTEXPR20 void try_resize(size_t count) {
872
+ try_reserve(count);
873
+ size_ = count <= capacity_ ? count : capacity_;
874
+ }
875
+
876
+ // Tries increasing the buffer capacity to *new_capacity*. It can increase the
877
+ // capacity by a smaller amount than requested but guarantees there is space
878
+ // for at least one additional element either by increasing the capacity or by
879
+ // flushing the buffer if it is full.
880
+ FMT_CONSTEXPR20 void try_reserve(size_t new_capacity) {
881
+ if (new_capacity > capacity_) grow(new_capacity);
882
+ }
883
+
884
+ FMT_CONSTEXPR20 void push_back(const T& value) {
885
+ try_reserve(size_ + 1);
886
+ ptr_[size_++] = value;
887
+ }
888
+
889
+ /** Appends data to the end of the buffer. */
890
+ template <typename U> void append(const U* begin, const U* end);
891
+
892
+ template <typename Idx> FMT_CONSTEXPR auto operator[](Idx index) -> T& {
893
+ return ptr_[index];
894
+ }
895
+ template <typename Idx>
896
+ FMT_CONSTEXPR auto operator[](Idx index) const -> const T& {
897
+ return ptr_[index];
898
+ }
899
+ };
900
+
901
+ struct buffer_traits {
902
+ explicit buffer_traits(size_t) {}
903
+ auto count() const -> size_t { return 0; }
904
+ auto limit(size_t size) -> size_t { return size; }
905
+ };
906
+
907
+ class fixed_buffer_traits {
908
+ private:
909
+ size_t count_ = 0;
910
+ size_t limit_;
911
+
912
+ public:
913
+ explicit fixed_buffer_traits(size_t limit) : limit_(limit) {}
914
+ auto count() const -> size_t { return count_; }
915
+ auto limit(size_t size) -> size_t {
916
+ size_t n = limit_ > count_ ? limit_ - count_ : 0;
917
+ count_ += size;
918
+ return size < n ? size : n;
919
+ }
920
+ };
921
+
922
+ // A buffer that writes to an output iterator when flushed.
923
+ template <typename OutputIt, typename T, typename Traits = buffer_traits>
924
+ class iterator_buffer final : public Traits, public buffer<T> {
925
+ private:
926
+ OutputIt out_;
927
+ enum { buffer_size = 256 };
928
+ T data_[buffer_size];
929
+
930
+ protected:
931
+ FMT_CONSTEXPR20 void grow(size_t) override {
932
+ if (this->size() == buffer_size) flush();
933
+ }
934
+
935
+ void flush() {
936
+ auto size = this->size();
937
+ this->clear();
938
+ out_ = copy_str<T>(data_, data_ + this->limit(size), out_);
939
+ }
940
+
941
+ public:
942
+ explicit iterator_buffer(OutputIt out, size_t n = buffer_size)
943
+ : Traits(n), buffer<T>(data_, 0, buffer_size), out_(out) {}
944
+ iterator_buffer(iterator_buffer&& other)
945
+ : Traits(other), buffer<T>(data_, 0, buffer_size), out_(other.out_) {}
946
+ ~iterator_buffer() { flush(); }
947
+
948
+ auto out() -> OutputIt {
949
+ flush();
950
+ return out_;
951
+ }
952
+ auto count() const -> size_t { return Traits::count() + this->size(); }
953
+ };
954
+
955
+ template <typename T>
956
+ class iterator_buffer<T*, T, fixed_buffer_traits> final
957
+ : public fixed_buffer_traits,
958
+ public buffer<T> {
959
+ private:
960
+ T* out_;
961
+ enum { buffer_size = 256 };
962
+ T data_[buffer_size];
963
+
964
+ protected:
965
+ FMT_CONSTEXPR20 void grow(size_t) override {
966
+ if (this->size() == this->capacity()) flush();
967
+ }
968
+
969
+ void flush() {
970
+ size_t n = this->limit(this->size());
971
+ if (this->data() == out_) {
972
+ out_ += n;
973
+ this->set(data_, buffer_size);
974
+ }
975
+ this->clear();
976
+ }
977
+
978
+ public:
979
+ explicit iterator_buffer(T* out, size_t n = buffer_size)
980
+ : fixed_buffer_traits(n), buffer<T>(out, 0, n), out_(out) {}
981
+ iterator_buffer(iterator_buffer&& other)
982
+ : fixed_buffer_traits(other),
983
+ buffer<T>(std::move(other)),
984
+ out_(other.out_) {
985
+ if (this->data() != out_) {
986
+ this->set(data_, buffer_size);
987
+ this->clear();
988
+ }
989
+ }
990
+ ~iterator_buffer() { flush(); }
991
+
992
+ auto out() -> T* {
993
+ flush();
994
+ return out_;
995
+ }
996
+ auto count() const -> size_t {
997
+ return fixed_buffer_traits::count() + this->size();
998
+ }
999
+ };
1000
+
1001
+ template <typename T> class iterator_buffer<T*, T> final : public buffer<T> {
1002
+ protected:
1003
+ FMT_CONSTEXPR20 void grow(size_t) override {}
1004
+
1005
+ public:
1006
+ explicit iterator_buffer(T* out, size_t = 0) : buffer<T>(out, 0, ~size_t()) {}
1007
+
1008
+ auto out() -> T* { return &*this->end(); }
1009
+ };
1010
+
1011
+ // A buffer that writes to a container with the contiguous storage.
1012
+ template <typename Container>
1013
+ class iterator_buffer<std::back_insert_iterator<Container>,
1014
+ enable_if_t<is_contiguous<Container>::value,
1015
+ typename Container::value_type>>
1016
+ final : public buffer<typename Container::value_type> {
1017
+ private:
1018
+ Container& container_;
1019
+
1020
+ protected:
1021
+ FMT_CONSTEXPR20 void grow(size_t capacity) override {
1022
+ container_.resize(capacity);
1023
+ this->set(&container_[0], capacity);
1024
+ }
1025
+
1026
+ public:
1027
+ explicit iterator_buffer(Container& c)
1028
+ : buffer<typename Container::value_type>(c.size()), container_(c) {}
1029
+ explicit iterator_buffer(std::back_insert_iterator<Container> out, size_t = 0)
1030
+ : iterator_buffer(get_container(out)) {}
1031
+
1032
+ auto out() -> std::back_insert_iterator<Container> {
1033
+ return std::back_inserter(container_);
1034
+ }
1035
+ };
1036
+
1037
+ // A buffer that counts the number of code units written discarding the output.
1038
+ template <typename T = char> class counting_buffer final : public buffer<T> {
1039
+ private:
1040
+ enum { buffer_size = 256 };
1041
+ T data_[buffer_size];
1042
+ size_t count_ = 0;
1043
+
1044
+ protected:
1045
+ FMT_CONSTEXPR20 void grow(size_t) override {
1046
+ if (this->size() != buffer_size) return;
1047
+ count_ += this->size();
1048
+ this->clear();
1049
+ }
1050
+
1051
+ public:
1052
+ counting_buffer() : buffer<T>(data_, 0, buffer_size) {}
1053
+
1054
+ auto count() -> size_t { return count_ + this->size(); }
1055
+ };
1056
+ } // namespace detail
1057
+
1058
+ template <typename Char>
1059
+ FMT_CONSTEXPR void basic_format_parse_context<Char>::do_check_arg_id(int id) {
1060
+ // Argument id is only checked at compile-time during parsing because
1061
+ // formatting has its own validation.
1062
+ if (detail::is_constant_evaluated() &&
1063
+ (!FMT_GCC_VERSION || FMT_GCC_VERSION >= 1200)) {
1064
+ using context = detail::compile_parse_context<Char>;
1065
+ if (id >= static_cast<context*>(this)->num_args())
1066
+ detail::throw_format_error("argument not found");
1067
+ }
1068
+ }
1069
+
1070
+ template <typename Char>
1071
+ FMT_CONSTEXPR void basic_format_parse_context<Char>::check_dynamic_spec(
1072
+ int arg_id) {
1073
+ if (detail::is_constant_evaluated() &&
1074
+ (!FMT_GCC_VERSION || FMT_GCC_VERSION >= 1200)) {
1075
+ using context = detail::compile_parse_context<Char>;
1076
+ static_cast<context*>(this)->check_dynamic_spec(arg_id);
1077
+ }
1078
+ }
1079
+
1080
+ FMT_EXPORT template <typename Context> class basic_format_arg;
1081
+ FMT_EXPORT template <typename Context> class basic_format_args;
1082
+ FMT_EXPORT template <typename Context> class dynamic_format_arg_store;
1083
+
1084
+ // A formatter for objects of type T.
1085
+ FMT_EXPORT
1086
+ template <typename T, typename Char = char, typename Enable = void>
1087
+ struct formatter {
1088
+ // A deleted default constructor indicates a disabled formatter.
1089
+ formatter() = delete;
1090
+ };
1091
+
1092
+ // Specifies if T has an enabled formatter specialization. A type can be
1093
+ // formattable even if it doesn't have a formatter e.g. via a conversion.
1094
+ template <typename T, typename Context>
1095
+ using has_formatter =
1096
+ std::is_constructible<typename Context::template formatter_type<T>>;
1097
+
1098
+ // An output iterator that appends to a buffer.
1099
+ // It is used to reduce symbol sizes for the common case.
1100
+ class appender : public std::back_insert_iterator<detail::buffer<char>> {
1101
+ using base = std::back_insert_iterator<detail::buffer<char>>;
1102
+
1103
+ public:
1104
+ using std::back_insert_iterator<detail::buffer<char>>::back_insert_iterator;
1105
+ appender(base it) noexcept : base(it) {}
1106
+ FMT_UNCHECKED_ITERATOR(appender);
1107
+
1108
+ auto operator++() noexcept -> appender& { return *this; }
1109
+ auto operator++(int) noexcept -> appender { return *this; }
1110
+ };
1111
+
1112
+ namespace detail {
1113
+
1114
+ template <typename Context, typename T>
1115
+ constexpr auto has_const_formatter_impl(T*)
1116
+ -> decltype(typename Context::template formatter_type<T>().format(
1117
+ std::declval<const T&>(), std::declval<Context&>()),
1118
+ true) {
1119
+ return true;
1120
+ }
1121
+ template <typename Context>
1122
+ constexpr auto has_const_formatter_impl(...) -> bool {
1123
+ return false;
1124
+ }
1125
+ template <typename T, typename Context>
1126
+ constexpr auto has_const_formatter() -> bool {
1127
+ return has_const_formatter_impl<Context>(static_cast<T*>(nullptr));
1128
+ }
1129
+
1130
+ template <typename T>
1131
+ using buffer_appender = conditional_t<std::is_same<T, char>::value, appender,
1132
+ std::back_insert_iterator<buffer<T>>>;
1133
+
1134
+ // Maps an output iterator to a buffer.
1135
+ template <typename T, typename OutputIt>
1136
+ auto get_buffer(OutputIt out) -> iterator_buffer<OutputIt, T> {
1137
+ return iterator_buffer<OutputIt, T>(out);
1138
+ }
1139
+ template <typename T, typename Buf,
1140
+ FMT_ENABLE_IF(std::is_base_of<buffer<char>, Buf>::value)>
1141
+ auto get_buffer(std::back_insert_iterator<Buf> out) -> buffer<char>& {
1142
+ return get_container(out);
1143
+ }
1144
+
1145
+ template <typename Buf, typename OutputIt>
1146
+ FMT_INLINE auto get_iterator(Buf& buf, OutputIt) -> decltype(buf.out()) {
1147
+ return buf.out();
1148
+ }
1149
+ template <typename T, typename OutputIt>
1150
+ auto get_iterator(buffer<T>&, OutputIt out) -> OutputIt {
1151
+ return out;
1152
+ }
1153
+
1154
+ struct view {};
1155
+
1156
+ template <typename Char, typename T> struct named_arg : view {
1157
+ const Char* name;
1158
+ const T& value;
1159
+ named_arg(const Char* n, const T& v) : name(n), value(v) {}
1160
+ };
1161
+
1162
+ template <typename Char> struct named_arg_info {
1163
+ const Char* name;
1164
+ int id;
1165
+ };
1166
+
1167
+ template <typename T, typename Char, size_t NUM_ARGS, size_t NUM_NAMED_ARGS>
1168
+ struct arg_data {
1169
+ // args_[0].named_args points to named_args_ to avoid bloating format_args.
1170
+ // +1 to workaround a bug in gcc 7.5 that causes duplicated-branches warning.
1171
+ T args_[1 + (NUM_ARGS != 0 ? NUM_ARGS : +1)];
1172
+ named_arg_info<Char> named_args_[NUM_NAMED_ARGS];
1173
+
1174
+ template <typename... U>
1175
+ arg_data(const U&... init) : args_{T(named_args_, NUM_NAMED_ARGS), init...} {}
1176
+ arg_data(const arg_data& other) = delete;
1177
+ auto args() const -> const T* { return args_ + 1; }
1178
+ auto named_args() -> named_arg_info<Char>* { return named_args_; }
1179
+ };
1180
+
1181
+ template <typename T, typename Char, size_t NUM_ARGS>
1182
+ struct arg_data<T, Char, NUM_ARGS, 0> {
1183
+ // +1 to workaround a bug in gcc 7.5 that causes duplicated-branches warning.
1184
+ T args_[NUM_ARGS != 0 ? NUM_ARGS : +1];
1185
+
1186
+ template <typename... U>
1187
+ FMT_CONSTEXPR FMT_INLINE arg_data(const U&... init) : args_{init...} {}
1188
+ FMT_CONSTEXPR FMT_INLINE auto args() const -> const T* { return args_; }
1189
+ FMT_CONSTEXPR FMT_INLINE auto named_args() -> std::nullptr_t {
1190
+ return nullptr;
1191
+ }
1192
+ };
1193
+
1194
+ template <typename Char>
1195
+ inline void init_named_args(named_arg_info<Char>*, int, int) {}
1196
+
1197
+ template <typename T> struct is_named_arg : std::false_type {};
1198
+ template <typename T> struct is_statically_named_arg : std::false_type {};
1199
+
1200
+ template <typename T, typename Char>
1201
+ struct is_named_arg<named_arg<Char, T>> : std::true_type {};
1202
+
1203
+ template <typename Char, typename T, typename... Tail,
1204
+ FMT_ENABLE_IF(!is_named_arg<T>::value)>
1205
+ void init_named_args(named_arg_info<Char>* named_args, int arg_count,
1206
+ int named_arg_count, const T&, const Tail&... args) {
1207
+ init_named_args(named_args, arg_count + 1, named_arg_count, args...);
1208
+ }
1209
+
1210
+ template <typename Char, typename T, typename... Tail,
1211
+ FMT_ENABLE_IF(is_named_arg<T>::value)>
1212
+ void init_named_args(named_arg_info<Char>* named_args, int arg_count,
1213
+ int named_arg_count, const T& arg, const Tail&... args) {
1214
+ named_args[named_arg_count++] = {arg.name, arg_count};
1215
+ init_named_args(named_args, arg_count + 1, named_arg_count, args...);
1216
+ }
1217
+
1218
+ template <typename... Args>
1219
+ FMT_CONSTEXPR FMT_INLINE void init_named_args(std::nullptr_t, int, int,
1220
+ const Args&...) {}
1221
+
1222
+ template <bool B = false> constexpr auto count() -> size_t { return B ? 1 : 0; }
1223
+ template <bool B1, bool B2, bool... Tail> constexpr auto count() -> size_t {
1224
+ return (B1 ? 1 : 0) + count<B2, Tail...>();
1225
+ }
1226
+
1227
+ template <typename... Args> constexpr auto count_named_args() -> size_t {
1228
+ return count<is_named_arg<Args>::value...>();
1229
+ }
1230
+
1231
+ template <typename... Args>
1232
+ constexpr auto count_statically_named_args() -> size_t {
1233
+ return count<is_statically_named_arg<Args>::value...>();
1234
+ }
1235
+
1236
+ struct unformattable {};
1237
+ struct unformattable_char : unformattable {};
1238
+ struct unformattable_pointer : unformattable {};
1239
+
1240
+ template <typename Char> struct string_value {
1241
+ const Char* data;
1242
+ size_t size;
1243
+ };
1244
+
1245
+ template <typename Char> struct named_arg_value {
1246
+ const named_arg_info<Char>* data;
1247
+ size_t size;
1248
+ };
1249
+
1250
+ template <typename Context> struct custom_value {
1251
+ using parse_context = typename Context::parse_context_type;
1252
+ void* value;
1253
+ void (*format)(void* arg, parse_context& parse_ctx, Context& ctx);
1254
+ };
1255
+
1256
+ // A formatting argument value.
1257
+ template <typename Context> class value {
1258
+ public:
1259
+ using char_type = typename Context::char_type;
1260
+
1261
+ union {
1262
+ monostate no_value;
1263
+ int int_value;
1264
+ unsigned uint_value;
1265
+ long long long_long_value;
1266
+ unsigned long long ulong_long_value;
1267
+ int128_opt int128_value;
1268
+ uint128_opt uint128_value;
1269
+ bool bool_value;
1270
+ char_type char_value;
1271
+ float float_value;
1272
+ double double_value;
1273
+ long double long_double_value;
1274
+ const void* pointer;
1275
+ string_value<char_type> string;
1276
+ custom_value<Context> custom;
1277
+ named_arg_value<char_type> named_args;
1278
+ };
1279
+
1280
+ constexpr FMT_INLINE value() : no_value() {}
1281
+ constexpr FMT_INLINE value(int val) : int_value(val) {}
1282
+ constexpr FMT_INLINE value(unsigned val) : uint_value(val) {}
1283
+ constexpr FMT_INLINE value(long long val) : long_long_value(val) {}
1284
+ constexpr FMT_INLINE value(unsigned long long val) : ulong_long_value(val) {}
1285
+ FMT_INLINE value(int128_opt val) : int128_value(val) {}
1286
+ FMT_INLINE value(uint128_opt val) : uint128_value(val) {}
1287
+ constexpr FMT_INLINE value(float val) : float_value(val) {}
1288
+ constexpr FMT_INLINE value(double val) : double_value(val) {}
1289
+ FMT_INLINE value(long double val) : long_double_value(val) {}
1290
+ constexpr FMT_INLINE value(bool val) : bool_value(val) {}
1291
+ constexpr FMT_INLINE value(char_type val) : char_value(val) {}
1292
+ FMT_CONSTEXPR FMT_INLINE value(const char_type* val) {
1293
+ string.data = val;
1294
+ if (is_constant_evaluated()) string.size = {};
1295
+ }
1296
+ FMT_CONSTEXPR FMT_INLINE value(basic_string_view<char_type> val) {
1297
+ string.data = val.data();
1298
+ string.size = val.size();
1299
+ }
1300
+ FMT_INLINE value(const void* val) : pointer(val) {}
1301
+ FMT_INLINE value(const named_arg_info<char_type>* args, size_t size)
1302
+ : named_args{args, size} {}
1303
+
1304
+ template <typename T> FMT_CONSTEXPR20 FMT_INLINE value(T& val) {
1305
+ using value_type = remove_const_t<T>;
1306
+ custom.value = const_cast<value_type*>(std::addressof(val));
1307
+ // Get the formatter type through the context to allow different contexts
1308
+ // have different extension points, e.g. `formatter<T>` for `format` and
1309
+ // `printf_formatter<T>` for `printf`.
1310
+ custom.format = format_custom_arg<
1311
+ value_type, typename Context::template formatter_type<value_type>>;
1312
+ }
1313
+ value(unformattable);
1314
+ value(unformattable_char);
1315
+ value(unformattable_pointer);
1316
+
1317
+ private:
1318
+ // Formats an argument of a custom type, such as a user-defined class.
1319
+ template <typename T, typename Formatter>
1320
+ static void format_custom_arg(void* arg,
1321
+ typename Context::parse_context_type& parse_ctx,
1322
+ Context& ctx) {
1323
+ auto f = Formatter();
1324
+ parse_ctx.advance_to(f.parse(parse_ctx));
1325
+ using qualified_type =
1326
+ conditional_t<has_const_formatter<T, Context>(), const T, T>;
1327
+ // Calling format through a mutable reference is deprecated.
1328
+ ctx.advance_to(f.format(*static_cast<qualified_type*>(arg), ctx));
1329
+ }
1330
+ };
1331
+
1332
+ // To minimize the number of types we need to deal with, long is translated
1333
+ // either to int or to long long depending on its size.
1334
+ enum { long_short = sizeof(long) == sizeof(int) };
1335
+ using long_type = conditional_t<long_short, int, long long>;
1336
+ using ulong_type = conditional_t<long_short, unsigned, unsigned long long>;
1337
+
1338
+ template <typename T> struct format_as_result {
1339
+ template <typename U,
1340
+ FMT_ENABLE_IF(std::is_enum<U>::value || std::is_class<U>::value)>
1341
+ static auto map(U*) -> remove_cvref_t<decltype(format_as(std::declval<U>()))>;
1342
+ static auto map(...) -> void;
1343
+
1344
+ using type = decltype(map(static_cast<T*>(nullptr)));
1345
+ };
1346
+ template <typename T> using format_as_t = typename format_as_result<T>::type;
1347
+
1348
+ template <typename T>
1349
+ struct has_format_as
1350
+ : bool_constant<!std::is_same<format_as_t<T>, void>::value> {};
1351
+
1352
+ // Maps formatting arguments to core types.
1353
+ // arg_mapper reports errors by returning unformattable instead of using
1354
+ // static_assert because it's used in the is_formattable trait.
1355
+ template <typename Context> struct arg_mapper {
1356
+ using char_type = typename Context::char_type;
1357
+
1358
+ FMT_CONSTEXPR FMT_INLINE auto map(signed char val) -> int { return val; }
1359
+ FMT_CONSTEXPR FMT_INLINE auto map(unsigned char val) -> unsigned {
1360
+ return val;
1361
+ }
1362
+ FMT_CONSTEXPR FMT_INLINE auto map(short val) -> int { return val; }
1363
+ FMT_CONSTEXPR FMT_INLINE auto map(unsigned short val) -> unsigned {
1364
+ return val;
1365
+ }
1366
+ FMT_CONSTEXPR FMT_INLINE auto map(int val) -> int { return val; }
1367
+ FMT_CONSTEXPR FMT_INLINE auto map(unsigned val) -> unsigned { return val; }
1368
+ FMT_CONSTEXPR FMT_INLINE auto map(long val) -> long_type { return val; }
1369
+ FMT_CONSTEXPR FMT_INLINE auto map(unsigned long val) -> ulong_type {
1370
+ return val;
1371
+ }
1372
+ FMT_CONSTEXPR FMT_INLINE auto map(long long val) -> long long { return val; }
1373
+ FMT_CONSTEXPR FMT_INLINE auto map(unsigned long long val)
1374
+ -> unsigned long long {
1375
+ return val;
1376
+ }
1377
+ FMT_CONSTEXPR FMT_INLINE auto map(int128_opt val) -> int128_opt {
1378
+ return val;
1379
+ }
1380
+ FMT_CONSTEXPR FMT_INLINE auto map(uint128_opt val) -> uint128_opt {
1381
+ return val;
1382
+ }
1383
+ FMT_CONSTEXPR FMT_INLINE auto map(bool val) -> bool { return val; }
1384
+
1385
+ template <typename T, FMT_ENABLE_IF(std::is_same<T, char>::value ||
1386
+ std::is_same<T, char_type>::value)>
1387
+ FMT_CONSTEXPR FMT_INLINE auto map(T val) -> char_type {
1388
+ return val;
1389
+ }
1390
+ template <typename T, enable_if_t<(std::is_same<T, wchar_t>::value ||
1391
+ #ifdef __cpp_char8_t
1392
+ std::is_same<T, char8_t>::value ||
1393
+ #endif
1394
+ std::is_same<T, char16_t>::value ||
1395
+ std::is_same<T, char32_t>::value) &&
1396
+ !std::is_same<T, char_type>::value,
1397
+ int> = 0>
1398
+ FMT_CONSTEXPR FMT_INLINE auto map(T) -> unformattable_char {
1399
+ return {};
1400
+ }
1401
+
1402
+ FMT_CONSTEXPR FMT_INLINE auto map(float val) -> float { return val; }
1403
+ FMT_CONSTEXPR FMT_INLINE auto map(double val) -> double { return val; }
1404
+ FMT_CONSTEXPR FMT_INLINE auto map(long double val) -> long double {
1405
+ return val;
1406
+ }
1407
+
1408
+ FMT_CONSTEXPR FMT_INLINE auto map(char_type* val) -> const char_type* {
1409
+ return val;
1410
+ }
1411
+ FMT_CONSTEXPR FMT_INLINE auto map(const char_type* val) -> const char_type* {
1412
+ return val;
1413
+ }
1414
+ template <typename T,
1415
+ FMT_ENABLE_IF(is_string<T>::value && !std::is_pointer<T>::value &&
1416
+ std::is_same<char_type, char_t<T>>::value)>
1417
+ FMT_CONSTEXPR FMT_INLINE auto map(const T& val)
1418
+ -> basic_string_view<char_type> {
1419
+ return to_string_view(val);
1420
+ }
1421
+ template <typename T,
1422
+ FMT_ENABLE_IF(is_string<T>::value && !std::is_pointer<T>::value &&
1423
+ !std::is_same<char_type, char_t<T>>::value)>
1424
+ FMT_CONSTEXPR FMT_INLINE auto map(const T&) -> unformattable_char {
1425
+ return {};
1426
+ }
1427
+
1428
+ FMT_CONSTEXPR FMT_INLINE auto map(void* val) -> const void* { return val; }
1429
+ FMT_CONSTEXPR FMT_INLINE auto map(const void* val) -> const void* {
1430
+ return val;
1431
+ }
1432
+ FMT_CONSTEXPR FMT_INLINE auto map(std::nullptr_t val) -> const void* {
1433
+ return val;
1434
+ }
1435
+
1436
+ // Use SFINAE instead of a const T* parameter to avoid a conflict with the
1437
+ // array overload.
1438
+ template <
1439
+ typename T,
1440
+ FMT_ENABLE_IF(
1441
+ std::is_pointer<T>::value || std::is_member_pointer<T>::value ||
1442
+ std::is_function<typename std::remove_pointer<T>::type>::value ||
1443
+ (std::is_array<T>::value &&
1444
+ !std::is_convertible<T, const char_type*>::value))>
1445
+ FMT_CONSTEXPR auto map(const T&) -> unformattable_pointer {
1446
+ return {};
1447
+ }
1448
+
1449
+ template <typename T, std::size_t N,
1450
+ FMT_ENABLE_IF(!std::is_same<T, wchar_t>::value)>
1451
+ FMT_CONSTEXPR FMT_INLINE auto map(const T (&values)[N]) -> const T (&)[N] {
1452
+ return values;
1453
+ }
1454
+
1455
+ // Only map owning types because mapping views can be unsafe.
1456
+ template <typename T, typename U = format_as_t<T>,
1457
+ FMT_ENABLE_IF(std::is_arithmetic<U>::value)>
1458
+ FMT_CONSTEXPR FMT_INLINE auto map(const T& val)
1459
+ -> decltype(FMT_DECLTYPE_THIS map(U())) {
1460
+ return map(format_as(val));
1461
+ }
1462
+
1463
+ template <typename T, typename U = remove_const_t<T>>
1464
+ struct formattable : bool_constant<has_const_formatter<U, Context>() ||
1465
+ (has_formatter<U, Context>::value &&
1466
+ !std::is_const<T>::value)> {};
1467
+
1468
+ template <typename T, FMT_ENABLE_IF(formattable<T>::value)>
1469
+ FMT_CONSTEXPR FMT_INLINE auto do_map(T& val) -> T& {
1470
+ return val;
1471
+ }
1472
+ template <typename T, FMT_ENABLE_IF(!formattable<T>::value)>
1473
+ FMT_CONSTEXPR FMT_INLINE auto do_map(T&) -> unformattable {
1474
+ return {};
1475
+ }
1476
+
1477
+ template <typename T, typename U = remove_const_t<T>,
1478
+ FMT_ENABLE_IF((std::is_class<U>::value || std::is_enum<U>::value ||
1479
+ std::is_union<U>::value) &&
1480
+ !is_string<U>::value && !is_char<U>::value &&
1481
+ !is_named_arg<U>::value &&
1482
+ !std::is_arithmetic<format_as_t<U>>::value)>
1483
+ FMT_CONSTEXPR FMT_INLINE auto map(T& val)
1484
+ -> decltype(FMT_DECLTYPE_THIS do_map(val)) {
1485
+ return do_map(val);
1486
+ }
1487
+
1488
+ template <typename T, FMT_ENABLE_IF(is_named_arg<T>::value)>
1489
+ FMT_CONSTEXPR FMT_INLINE auto map(const T& named_arg)
1490
+ -> decltype(FMT_DECLTYPE_THIS map(named_arg.value)) {
1491
+ return map(named_arg.value);
1492
+ }
1493
+
1494
+ auto map(...) -> unformattable { return {}; }
1495
+ };
1496
+
1497
+ // A type constant after applying arg_mapper<Context>.
1498
+ template <typename T, typename Context>
1499
+ using mapped_type_constant =
1500
+ type_constant<decltype(arg_mapper<Context>().map(std::declval<const T&>())),
1501
+ typename Context::char_type>;
1502
+
1503
+ enum { packed_arg_bits = 4 };
1504
+ // Maximum number of arguments with packed types.
1505
+ enum { max_packed_args = 62 / packed_arg_bits };
1506
+ enum : unsigned long long { is_unpacked_bit = 1ULL << 63 };
1507
+ enum : unsigned long long { has_named_args_bit = 1ULL << 62 };
1508
+
1509
+ template <typename Char, typename InputIt>
1510
+ auto copy_str(InputIt begin, InputIt end, appender out) -> appender {
1511
+ get_container(out).append(begin, end);
1512
+ return out;
1513
+ }
1514
+ template <typename Char, typename InputIt>
1515
+ auto copy_str(InputIt begin, InputIt end,
1516
+ std::back_insert_iterator<std::string> out)
1517
+ -> std::back_insert_iterator<std::string> {
1518
+ get_container(out).append(begin, end);
1519
+ return out;
1520
+ }
1521
+
1522
+ template <typename Char, typename R, typename OutputIt>
1523
+ FMT_CONSTEXPR auto copy_str(R&& rng, OutputIt out) -> OutputIt {
1524
+ return detail::copy_str<Char>(rng.begin(), rng.end(), out);
1525
+ }
1526
+
1527
+ #if FMT_GCC_VERSION && FMT_GCC_VERSION < 500
1528
+ // A workaround for gcc 4.8 to make void_t work in a SFINAE context.
1529
+ template <typename...> struct void_t_impl {
1530
+ using type = void;
1531
+ };
1532
+ template <typename... T> using void_t = typename void_t_impl<T...>::type;
1533
+ #else
1534
+ template <typename...> using void_t = void;
1535
+ #endif
1536
+
1537
+ template <typename It, typename T, typename Enable = void>
1538
+ struct is_output_iterator : std::false_type {};
1539
+
1540
+ template <typename It, typename T>
1541
+ struct is_output_iterator<
1542
+ It, T,
1543
+ void_t<typename std::iterator_traits<It>::iterator_category,
1544
+ decltype(*std::declval<It>() = std::declval<T>())>>
1545
+ : std::true_type {};
1546
+
1547
+ template <typename It> struct is_back_insert_iterator : std::false_type {};
1548
+ template <typename Container>
1549
+ struct is_back_insert_iterator<std::back_insert_iterator<Container>>
1550
+ : std::true_type {};
1551
+
1552
+ // A type-erased reference to an std::locale to avoid a heavy <locale> include.
1553
+ class locale_ref {
1554
+ private:
1555
+ const void* locale_; // A type-erased pointer to std::locale.
1556
+
1557
+ public:
1558
+ constexpr FMT_INLINE locale_ref() : locale_(nullptr) {}
1559
+ template <typename Locale> explicit locale_ref(const Locale& loc);
1560
+
1561
+ explicit operator bool() const noexcept { return locale_ != nullptr; }
1562
+
1563
+ template <typename Locale> auto get() const -> Locale;
1564
+ };
1565
+
1566
+ template <typename> constexpr auto encode_types() -> unsigned long long {
1567
+ return 0;
1568
+ }
1569
+
1570
+ template <typename Context, typename Arg, typename... Args>
1571
+ constexpr auto encode_types() -> unsigned long long {
1572
+ return static_cast<unsigned>(mapped_type_constant<Arg, Context>::value) |
1573
+ (encode_types<Context, Args...>() << packed_arg_bits);
1574
+ }
1575
+
1576
+ #if defined(__cpp_if_constexpr)
1577
+ // This type is intentionally undefined, only used for errors
1578
+ template <typename T, typename Char> struct type_is_unformattable_for;
1579
+ #endif
1580
+
1581
+ template <bool PACKED, typename Context, typename T, FMT_ENABLE_IF(PACKED)>
1582
+ FMT_CONSTEXPR FMT_INLINE auto make_arg(T& val) -> value<Context> {
1583
+ using arg_type = remove_cvref_t<decltype(arg_mapper<Context>().map(val))>;
1584
+
1585
+ constexpr bool formattable_char =
1586
+ !std::is_same<arg_type, unformattable_char>::value;
1587
+ static_assert(formattable_char, "Mixing character types is disallowed.");
1588
+
1589
+ // Formatting of arbitrary pointers is disallowed. If you want to format a
1590
+ // pointer cast it to `void*` or `const void*`. In particular, this forbids
1591
+ // formatting of `[const] volatile char*` printed as bool by iostreams.
1592
+ constexpr bool formattable_pointer =
1593
+ !std::is_same<arg_type, unformattable_pointer>::value;
1594
+ static_assert(formattable_pointer,
1595
+ "Formatting of non-void pointers is disallowed.");
1596
+
1597
+ constexpr bool formattable = !std::is_same<arg_type, unformattable>::value;
1598
+ #if defined(__cpp_if_constexpr)
1599
+ if constexpr (!formattable) {
1600
+ type_is_unformattable_for<T, typename Context::char_type> _;
1601
+ }
1602
+ #endif
1603
+ static_assert(
1604
+ formattable,
1605
+ "Cannot format an argument. To make type T formattable provide a "
1606
+ "formatter<T> specialization: https://fmt.dev/latest/api.html#udt");
1607
+ return {arg_mapper<Context>().map(val)};
1608
+ }
1609
+
1610
+ template <typename Context, typename T>
1611
+ FMT_CONSTEXPR auto make_arg(T& val) -> basic_format_arg<Context> {
1612
+ auto arg = basic_format_arg<Context>();
1613
+ arg.type_ = mapped_type_constant<T, Context>::value;
1614
+ arg.value_ = make_arg<true, Context>(val);
1615
+ return arg;
1616
+ }
1617
+
1618
+ template <bool PACKED, typename Context, typename T, FMT_ENABLE_IF(!PACKED)>
1619
+ FMT_CONSTEXPR inline auto make_arg(T& val) -> basic_format_arg<Context> {
1620
+ return make_arg<Context>(val);
1621
+ }
1622
+ } // namespace detail
1623
+ FMT_BEGIN_EXPORT
1624
+
1625
+ // A formatting argument. Context is a template parameter for the compiled API
1626
+ // where output can be unbuffered.
1627
+ template <typename Context> class basic_format_arg {
1628
+ private:
1629
+ detail::value<Context> value_;
1630
+ detail::type type_;
1631
+
1632
+ template <typename ContextType, typename T>
1633
+ friend FMT_CONSTEXPR auto detail::make_arg(T& value)
1634
+ -> basic_format_arg<ContextType>;
1635
+
1636
+ template <typename Visitor, typename Ctx>
1637
+ friend FMT_CONSTEXPR auto visit_format_arg(Visitor&& vis,
1638
+ const basic_format_arg<Ctx>& arg)
1639
+ -> decltype(vis(0));
1640
+
1641
+ friend class basic_format_args<Context>;
1642
+ friend class dynamic_format_arg_store<Context>;
1643
+
1644
+ using char_type = typename Context::char_type;
1645
+
1646
+ template <typename T, typename Char, size_t NUM_ARGS, size_t NUM_NAMED_ARGS>
1647
+ friend struct detail::arg_data;
1648
+
1649
+ basic_format_arg(const detail::named_arg_info<char_type>* args, size_t size)
1650
+ : value_(args, size) {}
1651
+
1652
+ public:
1653
+ class handle {
1654
+ public:
1655
+ explicit handle(detail::custom_value<Context> custom) : custom_(custom) {}
1656
+
1657
+ void format(typename Context::parse_context_type& parse_ctx,
1658
+ Context& ctx) const {
1659
+ custom_.format(custom_.value, parse_ctx, ctx);
1660
+ }
1661
+
1662
+ private:
1663
+ detail::custom_value<Context> custom_;
1664
+ };
1665
+
1666
+ constexpr basic_format_arg() : type_(detail::type::none_type) {}
1667
+
1668
+ constexpr explicit operator bool() const noexcept {
1669
+ return type_ != detail::type::none_type;
1670
+ }
1671
+
1672
+ auto type() const -> detail::type { return type_; }
1673
+
1674
+ auto is_integral() const -> bool { return detail::is_integral_type(type_); }
1675
+ auto is_arithmetic() const -> bool {
1676
+ return detail::is_arithmetic_type(type_);
1677
+ }
1678
+
1679
+ FMT_INLINE auto format_custom(const char_type* parse_begin,
1680
+ typename Context::parse_context_type& parse_ctx,
1681
+ Context& ctx) -> bool {
1682
+ if (type_ != detail::type::custom_type) return false;
1683
+ parse_ctx.advance_to(parse_begin);
1684
+ value_.custom.format(value_.custom.value, parse_ctx, ctx);
1685
+ return true;
1686
+ }
1687
+ };
1688
+
1689
+ /**
1690
+ \rst
1691
+ Visits an argument dispatching to the appropriate visit method based on
1692
+ the argument type. For example, if the argument type is ``double`` then
1693
+ ``vis(value)`` will be called with the value of type ``double``.
1694
+ \endrst
1695
+ */
1696
+ // DEPRECATED!
1697
+ template <typename Visitor, typename Context>
1698
+ FMT_CONSTEXPR FMT_INLINE auto visit_format_arg(
1699
+ Visitor&& vis, const basic_format_arg<Context>& arg) -> decltype(vis(0)) {
1700
+ switch (arg.type_) {
1701
+ case detail::type::none_type:
1702
+ break;
1703
+ case detail::type::int_type:
1704
+ return vis(arg.value_.int_value);
1705
+ case detail::type::uint_type:
1706
+ return vis(arg.value_.uint_value);
1707
+ case detail::type::long_long_type:
1708
+ return vis(arg.value_.long_long_value);
1709
+ case detail::type::ulong_long_type:
1710
+ return vis(arg.value_.ulong_long_value);
1711
+ case detail::type::int128_type:
1712
+ return vis(detail::convert_for_visit(arg.value_.int128_value));
1713
+ case detail::type::uint128_type:
1714
+ return vis(detail::convert_for_visit(arg.value_.uint128_value));
1715
+ case detail::type::bool_type:
1716
+ return vis(arg.value_.bool_value);
1717
+ case detail::type::char_type:
1718
+ return vis(arg.value_.char_value);
1719
+ case detail::type::float_type:
1720
+ return vis(arg.value_.float_value);
1721
+ case detail::type::double_type:
1722
+ return vis(arg.value_.double_value);
1723
+ case detail::type::long_double_type:
1724
+ return vis(arg.value_.long_double_value);
1725
+ case detail::type::cstring_type:
1726
+ return vis(arg.value_.string.data);
1727
+ case detail::type::string_type:
1728
+ using sv = basic_string_view<typename Context::char_type>;
1729
+ return vis(sv(arg.value_.string.data, arg.value_.string.size));
1730
+ case detail::type::pointer_type:
1731
+ return vis(arg.value_.pointer);
1732
+ case detail::type::custom_type:
1733
+ return vis(typename basic_format_arg<Context>::handle(arg.value_.custom));
1734
+ }
1735
+ return vis(monostate());
1736
+ }
1737
+
1738
+ // Formatting context.
1739
+ template <typename OutputIt, typename Char> class basic_format_context {
1740
+ private:
1741
+ OutputIt out_;
1742
+ basic_format_args<basic_format_context> args_;
1743
+ detail::locale_ref loc_;
1744
+
1745
+ public:
1746
+ using iterator = OutputIt;
1747
+ using format_arg = basic_format_arg<basic_format_context>;
1748
+ using format_args = basic_format_args<basic_format_context>;
1749
+ using parse_context_type = basic_format_parse_context<Char>;
1750
+ template <typename T> using formatter_type = formatter<T, Char>;
1751
+
1752
+ /** The character type for the output. */
1753
+ using char_type = Char;
1754
+
1755
+ basic_format_context(basic_format_context&&) = default;
1756
+ basic_format_context(const basic_format_context&) = delete;
1757
+ void operator=(const basic_format_context&) = delete;
1758
+ /**
1759
+ Constructs a ``basic_format_context`` object. References to the arguments
1760
+ are stored in the object so make sure they have appropriate lifetimes.
1761
+ */
1762
+ constexpr basic_format_context(OutputIt out, format_args ctx_args,
1763
+ detail::locale_ref loc = {})
1764
+ : out_(out), args_(ctx_args), loc_(loc) {}
1765
+
1766
+ constexpr auto arg(int id) const -> format_arg { return args_.get(id); }
1767
+ FMT_CONSTEXPR auto arg(basic_string_view<Char> name) -> format_arg {
1768
+ return args_.get(name);
1769
+ }
1770
+ FMT_CONSTEXPR auto arg_id(basic_string_view<Char> name) -> int {
1771
+ return args_.get_id(name);
1772
+ }
1773
+ auto args() const -> const format_args& { return args_; }
1774
+
1775
+ // DEPRECATED!
1776
+ FMT_CONSTEXPR auto error_handler() -> detail::error_handler { return {}; }
1777
+ void on_error(const char* message) { error_handler().on_error(message); }
1778
+
1779
+ // Returns an iterator to the beginning of the output range.
1780
+ FMT_CONSTEXPR auto out() -> iterator { return out_; }
1781
+
1782
+ // Advances the begin iterator to ``it``.
1783
+ void advance_to(iterator it) {
1784
+ if (!detail::is_back_insert_iterator<iterator>()) out_ = it;
1785
+ }
1786
+
1787
+ FMT_CONSTEXPR auto locale() -> detail::locale_ref { return loc_; }
1788
+ };
1789
+
1790
+ template <typename Char>
1791
+ using buffer_context =
1792
+ basic_format_context<detail::buffer_appender<Char>, Char>;
1793
+ using format_context = buffer_context<char>;
1794
+
1795
+ template <typename T, typename Char = char>
1796
+ using is_formattable = bool_constant<!std::is_base_of<
1797
+ detail::unformattable, decltype(detail::arg_mapper<buffer_context<Char>>()
1798
+ .map(std::declval<T&>()))>::value>;
1799
+
1800
+ /**
1801
+ \rst
1802
+ An array of references to arguments. It can be implicitly converted into
1803
+ `~fmt::basic_format_args` for passing into type-erased formatting functions
1804
+ such as `~fmt::vformat`.
1805
+ \endrst
1806
+ */
1807
+ template <typename Context, typename... Args>
1808
+ class format_arg_store
1809
+ #if FMT_GCC_VERSION && FMT_GCC_VERSION < 409
1810
+ // Workaround a GCC template argument substitution bug.
1811
+ : public basic_format_args<Context>
1812
+ #endif
1813
+ {
1814
+ private:
1815
+ static const size_t num_args = sizeof...(Args);
1816
+ static constexpr size_t num_named_args = detail::count_named_args<Args...>();
1817
+ static const bool is_packed = num_args <= detail::max_packed_args;
1818
+
1819
+ using value_type = conditional_t<is_packed, detail::value<Context>,
1820
+ basic_format_arg<Context>>;
1821
+
1822
+ detail::arg_data<value_type, typename Context::char_type, num_args,
1823
+ num_named_args>
1824
+ data_;
1825
+
1826
+ friend class basic_format_args<Context>;
1827
+
1828
+ static constexpr unsigned long long desc =
1829
+ (is_packed ? detail::encode_types<Context, Args...>()
1830
+ : detail::is_unpacked_bit | num_args) |
1831
+ (num_named_args != 0
1832
+ ? static_cast<unsigned long long>(detail::has_named_args_bit)
1833
+ : 0);
1834
+
1835
+ public:
1836
+ template <typename... T>
1837
+ FMT_CONSTEXPR FMT_INLINE format_arg_store(T&... args)
1838
+ :
1839
+ #if FMT_GCC_VERSION && FMT_GCC_VERSION < 409
1840
+ basic_format_args<Context>(*this),
1841
+ #endif
1842
+ data_{detail::make_arg<is_packed, Context>(args)...} {
1843
+ if (detail::const_check(num_named_args != 0))
1844
+ detail::init_named_args(data_.named_args(), 0, 0, args...);
1845
+ }
1846
+ };
1847
+
1848
+ /**
1849
+ \rst
1850
+ Constructs a `~fmt::format_arg_store` object that contains references to
1851
+ arguments and can be implicitly converted to `~fmt::format_args`. `Context`
1852
+ can be omitted in which case it defaults to `~fmt::format_context`.
1853
+ See `~fmt::arg` for lifetime considerations.
1854
+ \endrst
1855
+ */
1856
+ // Arguments are taken by lvalue references to avoid some lifetime issues.
1857
+ template <typename Context = format_context, typename... T>
1858
+ constexpr auto make_format_args(T&... args)
1859
+ -> format_arg_store<Context, remove_cvref_t<T>...> {
1860
+ return {args...};
1861
+ }
1862
+
1863
+ /**
1864
+ \rst
1865
+ Returns a named argument to be used in a formatting function.
1866
+ It should only be used in a call to a formatting function or
1867
+ `dynamic_format_arg_store::push_back`.
1868
+
1869
+ **Example**::
1870
+
1871
+ fmt::print("Elapsed time: {s:.2f} seconds", fmt::arg("s", 1.23));
1872
+ \endrst
1873
+ */
1874
+ template <typename Char, typename T>
1875
+ inline auto arg(const Char* name, const T& arg) -> detail::named_arg<Char, T> {
1876
+ static_assert(!detail::is_named_arg<T>(), "nested named arguments");
1877
+ return {name, arg};
1878
+ }
1879
+ FMT_END_EXPORT
1880
+
1881
+ /**
1882
+ \rst
1883
+ A view of a collection of formatting arguments. To avoid lifetime issues it
1884
+ should only be used as a parameter type in type-erased functions such as
1885
+ ``vformat``::
1886
+
1887
+ void vlog(string_view format_str, format_args args); // OK
1888
+ format_args args = make_format_args(); // Error: dangling reference
1889
+ \endrst
1890
+ */
1891
+ template <typename Context> class basic_format_args {
1892
+ public:
1893
+ using size_type = int;
1894
+ using format_arg = basic_format_arg<Context>;
1895
+
1896
+ private:
1897
+ // A descriptor that contains information about formatting arguments.
1898
+ // If the number of arguments is less or equal to max_packed_args then
1899
+ // argument types are passed in the descriptor. This reduces binary code size
1900
+ // per formatting function call.
1901
+ unsigned long long desc_;
1902
+ union {
1903
+ // If is_packed() returns true then argument values are stored in values_;
1904
+ // otherwise they are stored in args_. This is done to improve cache
1905
+ // locality and reduce compiled code size since storing larger objects
1906
+ // may require more code (at least on x86-64) even if the same amount of
1907
+ // data is actually copied to stack. It saves ~10% on the bloat test.
1908
+ const detail::value<Context>* values_;
1909
+ const format_arg* args_;
1910
+ };
1911
+
1912
+ constexpr auto is_packed() const -> bool {
1913
+ return (desc_ & detail::is_unpacked_bit) == 0;
1914
+ }
1915
+ auto has_named_args() const -> bool {
1916
+ return (desc_ & detail::has_named_args_bit) != 0;
1917
+ }
1918
+
1919
+ FMT_CONSTEXPR auto type(int index) const -> detail::type {
1920
+ int shift = index * detail::packed_arg_bits;
1921
+ unsigned int mask = (1 << detail::packed_arg_bits) - 1;
1922
+ return static_cast<detail::type>((desc_ >> shift) & mask);
1923
+ }
1924
+
1925
+ constexpr FMT_INLINE basic_format_args(unsigned long long desc,
1926
+ const detail::value<Context>* values)
1927
+ : desc_(desc), values_(values) {}
1928
+ constexpr basic_format_args(unsigned long long desc, const format_arg* args)
1929
+ : desc_(desc), args_(args) {}
1930
+
1931
+ public:
1932
+ constexpr basic_format_args() : desc_(0), args_(nullptr) {}
1933
+
1934
+ /**
1935
+ \rst
1936
+ Constructs a `basic_format_args` object from `~fmt::format_arg_store`.
1937
+ \endrst
1938
+ */
1939
+ template <typename... Args>
1940
+ constexpr FMT_INLINE basic_format_args(
1941
+ const format_arg_store<Context, Args...>& store)
1942
+ : basic_format_args(format_arg_store<Context, Args...>::desc,
1943
+ store.data_.args()) {}
1944
+
1945
+ /**
1946
+ \rst
1947
+ Constructs a `basic_format_args` object from
1948
+ `~fmt::dynamic_format_arg_store`.
1949
+ \endrst
1950
+ */
1951
+ constexpr FMT_INLINE basic_format_args(
1952
+ const dynamic_format_arg_store<Context>& store)
1953
+ : basic_format_args(store.get_types(), store.data()) {}
1954
+
1955
+ /**
1956
+ \rst
1957
+ Constructs a `basic_format_args` object from a dynamic set of arguments.
1958
+ \endrst
1959
+ */
1960
+ constexpr basic_format_args(const format_arg* args, int count)
1961
+ : basic_format_args(detail::is_unpacked_bit | detail::to_unsigned(count),
1962
+ args) {}
1963
+
1964
+ /** Returns the argument with the specified id. */
1965
+ FMT_CONSTEXPR auto get(int id) const -> format_arg {
1966
+ format_arg arg;
1967
+ if (!is_packed()) {
1968
+ if (id < max_size()) arg = args_[id];
1969
+ return arg;
1970
+ }
1971
+ if (id >= detail::max_packed_args) return arg;
1972
+ arg.type_ = type(id);
1973
+ if (arg.type_ == detail::type::none_type) return arg;
1974
+ arg.value_ = values_[id];
1975
+ return arg;
1976
+ }
1977
+
1978
+ template <typename Char>
1979
+ auto get(basic_string_view<Char> name) const -> format_arg {
1980
+ int id = get_id(name);
1981
+ return id >= 0 ? get(id) : format_arg();
1982
+ }
1983
+
1984
+ template <typename Char>
1985
+ auto get_id(basic_string_view<Char> name) const -> int {
1986
+ if (!has_named_args()) return -1;
1987
+ const auto& named_args =
1988
+ (is_packed() ? values_[-1] : args_[-1].value_).named_args;
1989
+ for (size_t i = 0; i < named_args.size; ++i) {
1990
+ if (named_args.data[i].name == name) return named_args.data[i].id;
1991
+ }
1992
+ return -1;
1993
+ }
1994
+
1995
+ auto max_size() const -> int {
1996
+ unsigned long long max_packed = detail::max_packed_args;
1997
+ return static_cast<int>(is_packed() ? max_packed
1998
+ : desc_ & ~detail::is_unpacked_bit);
1999
+ }
2000
+ };
2001
+
2002
+ /** An alias to ``basic_format_args<format_context>``. */
2003
+ // A separate type would result in shorter symbols but break ABI compatibility
2004
+ // between clang and gcc on ARM (#1919).
2005
+ FMT_EXPORT using format_args = basic_format_args<format_context>;
2006
+
2007
+ // We cannot use enum classes as bit fields because of a gcc bug, so we put them
2008
+ // in namespaces instead (https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61414).
2009
+ // Additionally, if an underlying type is specified, older gcc incorrectly warns
2010
+ // that the type is too small. Both bugs are fixed in gcc 9.3.
2011
+ #if FMT_GCC_VERSION && FMT_GCC_VERSION < 903
2012
+ # define FMT_ENUM_UNDERLYING_TYPE(type)
2013
+ #else
2014
+ # define FMT_ENUM_UNDERLYING_TYPE(type) : type
2015
+ #endif
2016
+ namespace align {
2017
+ enum type FMT_ENUM_UNDERLYING_TYPE(unsigned char){none, left, right, center,
2018
+ numeric};
2019
+ }
2020
+ using align_t = align::type;
2021
+ namespace sign {
2022
+ enum type FMT_ENUM_UNDERLYING_TYPE(unsigned char){none, minus, plus, space};
2023
+ }
2024
+ using sign_t = sign::type;
2025
+
2026
+ namespace detail {
2027
+
2028
+ // Workaround an array initialization issue in gcc 4.8.
2029
+ template <typename Char> struct fill_t {
2030
+ private:
2031
+ enum { max_size = 4 };
2032
+ Char data_[max_size] = {Char(' '), Char(0), Char(0), Char(0)};
2033
+ unsigned char size_ = 1;
2034
+
2035
+ public:
2036
+ FMT_CONSTEXPR void operator=(basic_string_view<Char> s) {
2037
+ auto size = s.size();
2038
+ FMT_ASSERT(size <= max_size, "invalid fill");
2039
+ for (size_t i = 0; i < size; ++i) data_[i] = s[i];
2040
+ size_ = static_cast<unsigned char>(size);
2041
+ }
2042
+
2043
+ constexpr auto size() const -> size_t { return size_; }
2044
+ constexpr auto data() const -> const Char* { return data_; }
2045
+
2046
+ FMT_CONSTEXPR auto operator[](size_t index) -> Char& { return data_[index]; }
2047
+ FMT_CONSTEXPR auto operator[](size_t index) const -> const Char& {
2048
+ return data_[index];
2049
+ }
2050
+ };
2051
+ } // namespace detail
2052
+
2053
+ enum class presentation_type : unsigned char {
2054
+ none,
2055
+ dec, // 'd'
2056
+ oct, // 'o'
2057
+ hex_lower, // 'x'
2058
+ hex_upper, // 'X'
2059
+ bin_lower, // 'b'
2060
+ bin_upper, // 'B'
2061
+ hexfloat_lower, // 'a'
2062
+ hexfloat_upper, // 'A'
2063
+ exp_lower, // 'e'
2064
+ exp_upper, // 'E'
2065
+ fixed_lower, // 'f'
2066
+ fixed_upper, // 'F'
2067
+ general_lower, // 'g'
2068
+ general_upper, // 'G'
2069
+ chr, // 'c'
2070
+ string, // 's'
2071
+ pointer, // 'p'
2072
+ debug // '?'
2073
+ };
2074
+
2075
+ // Format specifiers for built-in and string types.
2076
+ template <typename Char = char> struct format_specs {
2077
+ int width;
2078
+ int precision;
2079
+ presentation_type type;
2080
+ align_t align : 4;
2081
+ sign_t sign : 3;
2082
+ bool alt : 1; // Alternate form ('#').
2083
+ bool localized : 1;
2084
+ detail::fill_t<Char> fill;
2085
+
2086
+ constexpr format_specs()
2087
+ : width(0),
2088
+ precision(-1),
2089
+ type(presentation_type::none),
2090
+ align(align::none),
2091
+ sign(sign::none),
2092
+ alt(false),
2093
+ localized(false) {}
2094
+ };
2095
+
2096
+ namespace detail {
2097
+
2098
+ enum class arg_id_kind { none, index, name };
2099
+
2100
+ // An argument reference.
2101
+ template <typename Char> struct arg_ref {
2102
+ FMT_CONSTEXPR arg_ref() : kind(arg_id_kind::none), val() {}
2103
+
2104
+ FMT_CONSTEXPR explicit arg_ref(int index)
2105
+ : kind(arg_id_kind::index), val(index) {}
2106
+ FMT_CONSTEXPR explicit arg_ref(basic_string_view<Char> name)
2107
+ : kind(arg_id_kind::name), val(name) {}
2108
+
2109
+ FMT_CONSTEXPR auto operator=(int idx) -> arg_ref& {
2110
+ kind = arg_id_kind::index;
2111
+ val.index = idx;
2112
+ return *this;
2113
+ }
2114
+
2115
+ arg_id_kind kind;
2116
+ union value {
2117
+ FMT_CONSTEXPR value(int idx = 0) : index(idx) {}
2118
+ FMT_CONSTEXPR value(basic_string_view<Char> n) : name(n) {}
2119
+
2120
+ int index;
2121
+ basic_string_view<Char> name;
2122
+ } val;
2123
+ };
2124
+
2125
+ // Format specifiers with width and precision resolved at formatting rather
2126
+ // than parsing time to allow reusing the same parsed specifiers with
2127
+ // different sets of arguments (precompilation of format strings).
2128
+ template <typename Char = char>
2129
+ struct dynamic_format_specs : format_specs<Char> {
2130
+ arg_ref<Char> width_ref;
2131
+ arg_ref<Char> precision_ref;
2132
+ };
2133
+
2134
+ // Converts a character to ASCII. Returns '\0' on conversion failure.
2135
+ template <typename Char, FMT_ENABLE_IF(std::is_integral<Char>::value)>
2136
+ constexpr auto to_ascii(Char c) -> char {
2137
+ return c <= 0xff ? static_cast<char>(c) : '\0';
2138
+ }
2139
+ template <typename Char, FMT_ENABLE_IF(std::is_enum<Char>::value)>
2140
+ constexpr auto to_ascii(Char c) -> char {
2141
+ return c <= 0xff ? static_cast<char>(c) : '\0';
2142
+ }
2143
+
2144
+ // Returns the number of code units in a code point or 1 on error.
2145
+ template <typename Char>
2146
+ FMT_CONSTEXPR auto code_point_length(const Char* begin) -> int {
2147
+ if (const_check(sizeof(Char) != 1)) return 1;
2148
+ auto c = static_cast<unsigned char>(*begin);
2149
+ return static_cast<int>((0x3a55000000000000ull >> (2 * (c >> 3))) & 0x3) + 1;
2150
+ }
2151
+
2152
+ // Return the result via the out param to workaround gcc bug 77539.
2153
+ template <bool IS_CONSTEXPR, typename T, typename Ptr = const T*>
2154
+ FMT_CONSTEXPR auto find(Ptr first, Ptr last, T value, Ptr& out) -> bool {
2155
+ for (out = first; out != last; ++out) {
2156
+ if (*out == value) return true;
2157
+ }
2158
+ return false;
2159
+ }
2160
+
2161
+ template <>
2162
+ inline auto find<false, char>(const char* first, const char* last, char value,
2163
+ const char*& out) -> bool {
2164
+ out = static_cast<const char*>(
2165
+ std::memchr(first, value, to_unsigned(last - first)));
2166
+ return out != nullptr;
2167
+ }
2168
+
2169
+ // Parses the range [begin, end) as an unsigned integer. This function assumes
2170
+ // that the range is non-empty and the first character is a digit.
2171
+ template <typename Char>
2172
+ FMT_CONSTEXPR auto parse_nonnegative_int(const Char*& begin, const Char* end,
2173
+ int error_value) noexcept -> int {
2174
+ FMT_ASSERT(begin != end && '0' <= *begin && *begin <= '9', "");
2175
+ unsigned value = 0, prev = 0;
2176
+ auto p = begin;
2177
+ do {
2178
+ prev = value;
2179
+ value = value * 10 + unsigned(*p - '0');
2180
+ ++p;
2181
+ } while (p != end && '0' <= *p && *p <= '9');
2182
+ auto num_digits = p - begin;
2183
+ begin = p;
2184
+ if (num_digits <= std::numeric_limits<int>::digits10)
2185
+ return static_cast<int>(value);
2186
+ // Check for overflow.
2187
+ const unsigned max = to_unsigned((std::numeric_limits<int>::max)());
2188
+ return num_digits == std::numeric_limits<int>::digits10 + 1 &&
2189
+ prev * 10ull + unsigned(p[-1] - '0') <= max
2190
+ ? static_cast<int>(value)
2191
+ : error_value;
2192
+ }
2193
+
2194
+ FMT_CONSTEXPR inline auto parse_align(char c) -> align_t {
2195
+ switch (c) {
2196
+ case '<':
2197
+ return align::left;
2198
+ case '>':
2199
+ return align::right;
2200
+ case '^':
2201
+ return align::center;
2202
+ }
2203
+ return align::none;
2204
+ }
2205
+
2206
+ template <typename Char> constexpr auto is_name_start(Char c) -> bool {
2207
+ return ('a' <= c && c <= 'z') || ('A' <= c && c <= 'Z') || c == '_';
2208
+ }
2209
+
2210
+ template <typename Char, typename Handler>
2211
+ FMT_CONSTEXPR auto do_parse_arg_id(const Char* begin, const Char* end,
2212
+ Handler&& handler) -> const Char* {
2213
+ Char c = *begin;
2214
+ if (c >= '0' && c <= '9') {
2215
+ int index = 0;
2216
+ constexpr int max = (std::numeric_limits<int>::max)();
2217
+ if (c != '0')
2218
+ index = parse_nonnegative_int(begin, end, max);
2219
+ else
2220
+ ++begin;
2221
+ if (begin == end || (*begin != '}' && *begin != ':'))
2222
+ throw_format_error("invalid format string");
2223
+ else
2224
+ handler.on_index(index);
2225
+ return begin;
2226
+ }
2227
+ if (!is_name_start(c)) {
2228
+ throw_format_error("invalid format string");
2229
+ return begin;
2230
+ }
2231
+ auto it = begin;
2232
+ do {
2233
+ ++it;
2234
+ } while (it != end && (is_name_start(*it) || ('0' <= *it && *it <= '9')));
2235
+ handler.on_name({begin, to_unsigned(it - begin)});
2236
+ return it;
2237
+ }
2238
+
2239
+ template <typename Char, typename Handler>
2240
+ FMT_CONSTEXPR FMT_INLINE auto parse_arg_id(const Char* begin, const Char* end,
2241
+ Handler&& handler) -> const Char* {
2242
+ FMT_ASSERT(begin != end, "");
2243
+ Char c = *begin;
2244
+ if (c != '}' && c != ':') return do_parse_arg_id(begin, end, handler);
2245
+ handler.on_auto();
2246
+ return begin;
2247
+ }
2248
+
2249
+ template <typename Char> struct dynamic_spec_id_handler {
2250
+ basic_format_parse_context<Char>& ctx;
2251
+ arg_ref<Char>& ref;
2252
+
2253
+ FMT_CONSTEXPR void on_auto() {
2254
+ int id = ctx.next_arg_id();
2255
+ ref = arg_ref<Char>(id);
2256
+ ctx.check_dynamic_spec(id);
2257
+ }
2258
+ FMT_CONSTEXPR void on_index(int id) {
2259
+ ref = arg_ref<Char>(id);
2260
+ ctx.check_arg_id(id);
2261
+ ctx.check_dynamic_spec(id);
2262
+ }
2263
+ FMT_CONSTEXPR void on_name(basic_string_view<Char> id) {
2264
+ ref = arg_ref<Char>(id);
2265
+ ctx.check_arg_id(id);
2266
+ }
2267
+ };
2268
+
2269
+ // Parses [integer | "{" [arg_id] "}"].
2270
+ template <typename Char>
2271
+ FMT_CONSTEXPR auto parse_dynamic_spec(const Char* begin, const Char* end,
2272
+ int& value, arg_ref<Char>& ref,
2273
+ basic_format_parse_context<Char>& ctx)
2274
+ -> const Char* {
2275
+ FMT_ASSERT(begin != end, "");
2276
+ if ('0' <= *begin && *begin <= '9') {
2277
+ int val = parse_nonnegative_int(begin, end, -1);
2278
+ if (val != -1)
2279
+ value = val;
2280
+ else
2281
+ throw_format_error("number is too big");
2282
+ } else if (*begin == '{') {
2283
+ ++begin;
2284
+ auto handler = dynamic_spec_id_handler<Char>{ctx, ref};
2285
+ if (begin != end) begin = parse_arg_id(begin, end, handler);
2286
+ if (begin != end && *begin == '}') return ++begin;
2287
+ throw_format_error("invalid format string");
2288
+ }
2289
+ return begin;
2290
+ }
2291
+
2292
+ template <typename Char>
2293
+ FMT_CONSTEXPR auto parse_precision(const Char* begin, const Char* end,
2294
+ int& value, arg_ref<Char>& ref,
2295
+ basic_format_parse_context<Char>& ctx)
2296
+ -> const Char* {
2297
+ ++begin;
2298
+ if (begin == end || *begin == '}') {
2299
+ throw_format_error("invalid precision");
2300
+ return begin;
2301
+ }
2302
+ return parse_dynamic_spec(begin, end, value, ref, ctx);
2303
+ }
2304
+
2305
+ enum class state { start, align, sign, hash, zero, width, precision, locale };
2306
+
2307
+ // Parses standard format specifiers.
2308
+ template <typename Char>
2309
+ FMT_CONSTEXPR FMT_INLINE auto parse_format_specs(
2310
+ const Char* begin, const Char* end, dynamic_format_specs<Char>& specs,
2311
+ basic_format_parse_context<Char>& ctx, type arg_type) -> const Char* {
2312
+ auto c = '\0';
2313
+ if (end - begin > 1) {
2314
+ auto next = to_ascii(begin[1]);
2315
+ c = parse_align(next) == align::none ? to_ascii(*begin) : '\0';
2316
+ } else {
2317
+ if (begin == end) return begin;
2318
+ c = to_ascii(*begin);
2319
+ }
2320
+
2321
+ struct {
2322
+ state current_state = state::start;
2323
+ FMT_CONSTEXPR void operator()(state s, bool valid = true) {
2324
+ if (current_state >= s || !valid)
2325
+ throw_format_error("invalid format specifier");
2326
+ current_state = s;
2327
+ }
2328
+ } enter_state;
2329
+
2330
+ using pres = presentation_type;
2331
+ constexpr auto integral_set = sint_set | uint_set | bool_set | char_set;
2332
+ struct {
2333
+ const Char*& begin;
2334
+ dynamic_format_specs<Char>& specs;
2335
+ type arg_type;
2336
+
2337
+ FMT_CONSTEXPR auto operator()(pres pres_type, int set) -> const Char* {
2338
+ if (!in(arg_type, set)) {
2339
+ if (arg_type == type::none_type) return begin;
2340
+ throw_format_error("invalid format specifier");
2341
+ }
2342
+ specs.type = pres_type;
2343
+ return begin + 1;
2344
+ }
2345
+ } parse_presentation_type{begin, specs, arg_type};
2346
+
2347
+ for (;;) {
2348
+ switch (c) {
2349
+ case '<':
2350
+ case '>':
2351
+ case '^':
2352
+ enter_state(state::align);
2353
+ specs.align = parse_align(c);
2354
+ ++begin;
2355
+ break;
2356
+ case '+':
2357
+ case '-':
2358
+ case ' ':
2359
+ if (arg_type == type::none_type) return begin;
2360
+ enter_state(state::sign, in(arg_type, sint_set | float_set));
2361
+ switch (c) {
2362
+ case '+':
2363
+ specs.sign = sign::plus;
2364
+ break;
2365
+ case '-':
2366
+ specs.sign = sign::minus;
2367
+ break;
2368
+ case ' ':
2369
+ specs.sign = sign::space;
2370
+ break;
2371
+ }
2372
+ ++begin;
2373
+ break;
2374
+ case '#':
2375
+ if (arg_type == type::none_type) return begin;
2376
+ enter_state(state::hash, is_arithmetic_type(arg_type));
2377
+ specs.alt = true;
2378
+ ++begin;
2379
+ break;
2380
+ case '0':
2381
+ enter_state(state::zero);
2382
+ if (!is_arithmetic_type(arg_type)) {
2383
+ if (arg_type == type::none_type) return begin;
2384
+ throw_format_error("format specifier requires numeric argument");
2385
+ }
2386
+ if (specs.align == align::none) {
2387
+ // Ignore 0 if align is specified for compatibility with std::format.
2388
+ specs.align = align::numeric;
2389
+ specs.fill[0] = Char('0');
2390
+ }
2391
+ ++begin;
2392
+ break;
2393
+ case '1':
2394
+ case '2':
2395
+ case '3':
2396
+ case '4':
2397
+ case '5':
2398
+ case '6':
2399
+ case '7':
2400
+ case '8':
2401
+ case '9':
2402
+ case '{':
2403
+ enter_state(state::width);
2404
+ begin = parse_dynamic_spec(begin, end, specs.width, specs.width_ref, ctx);
2405
+ break;
2406
+ case '.':
2407
+ if (arg_type == type::none_type) return begin;
2408
+ enter_state(state::precision,
2409
+ in(arg_type, float_set | string_set | cstring_set));
2410
+ begin = parse_precision(begin, end, specs.precision, specs.precision_ref,
2411
+ ctx);
2412
+ break;
2413
+ case 'L':
2414
+ if (arg_type == type::none_type) return begin;
2415
+ enter_state(state::locale, is_arithmetic_type(arg_type));
2416
+ specs.localized = true;
2417
+ ++begin;
2418
+ break;
2419
+ case 'd':
2420
+ return parse_presentation_type(pres::dec, integral_set);
2421
+ case 'o':
2422
+ return parse_presentation_type(pres::oct, integral_set);
2423
+ case 'x':
2424
+ return parse_presentation_type(pres::hex_lower, integral_set);
2425
+ case 'X':
2426
+ return parse_presentation_type(pres::hex_upper, integral_set);
2427
+ case 'b':
2428
+ return parse_presentation_type(pres::bin_lower, integral_set);
2429
+ case 'B':
2430
+ return parse_presentation_type(pres::bin_upper, integral_set);
2431
+ case 'a':
2432
+ return parse_presentation_type(pres::hexfloat_lower, float_set);
2433
+ case 'A':
2434
+ return parse_presentation_type(pres::hexfloat_upper, float_set);
2435
+ case 'e':
2436
+ return parse_presentation_type(pres::exp_lower, float_set);
2437
+ case 'E':
2438
+ return parse_presentation_type(pres::exp_upper, float_set);
2439
+ case 'f':
2440
+ return parse_presentation_type(pres::fixed_lower, float_set);
2441
+ case 'F':
2442
+ return parse_presentation_type(pres::fixed_upper, float_set);
2443
+ case 'g':
2444
+ return parse_presentation_type(pres::general_lower, float_set);
2445
+ case 'G':
2446
+ return parse_presentation_type(pres::general_upper, float_set);
2447
+ case 'c':
2448
+ if (arg_type == type::bool_type)
2449
+ throw_format_error("invalid format specifier");
2450
+ return parse_presentation_type(pres::chr, integral_set);
2451
+ case 's':
2452
+ return parse_presentation_type(pres::string,
2453
+ bool_set | string_set | cstring_set);
2454
+ case 'p':
2455
+ return parse_presentation_type(pres::pointer, pointer_set | cstring_set);
2456
+ case '?':
2457
+ return parse_presentation_type(pres::debug,
2458
+ char_set | string_set | cstring_set);
2459
+ case '}':
2460
+ return begin;
2461
+ default: {
2462
+ if (*begin == '}') return begin;
2463
+ // Parse fill and alignment.
2464
+ auto fill_end = begin + code_point_length(begin);
2465
+ if (end - fill_end <= 0) {
2466
+ throw_format_error("invalid format specifier");
2467
+ return begin;
2468
+ }
2469
+ if (*begin == '{') {
2470
+ throw_format_error("invalid fill character '{'");
2471
+ return begin;
2472
+ }
2473
+ auto align = parse_align(to_ascii(*fill_end));
2474
+ enter_state(state::align, align != align::none);
2475
+ specs.fill = {begin, to_unsigned(fill_end - begin)};
2476
+ specs.align = align;
2477
+ begin = fill_end + 1;
2478
+ }
2479
+ }
2480
+ if (begin == end) return begin;
2481
+ c = to_ascii(*begin);
2482
+ }
2483
+ }
2484
+
2485
+ template <typename Char, typename Handler>
2486
+ FMT_CONSTEXPR auto parse_replacement_field(const Char* begin, const Char* end,
2487
+ Handler&& handler) -> const Char* {
2488
+ struct id_adapter {
2489
+ Handler& handler;
2490
+ int arg_id;
2491
+
2492
+ FMT_CONSTEXPR void on_auto() { arg_id = handler.on_arg_id(); }
2493
+ FMT_CONSTEXPR void on_index(int id) { arg_id = handler.on_arg_id(id); }
2494
+ FMT_CONSTEXPR void on_name(basic_string_view<Char> id) {
2495
+ arg_id = handler.on_arg_id(id);
2496
+ }
2497
+ };
2498
+
2499
+ ++begin;
2500
+ if (begin == end) return handler.on_error("invalid format string"), end;
2501
+ if (*begin == '}') {
2502
+ handler.on_replacement_field(handler.on_arg_id(), begin);
2503
+ } else if (*begin == '{') {
2504
+ handler.on_text(begin, begin + 1);
2505
+ } else {
2506
+ auto adapter = id_adapter{handler, 0};
2507
+ begin = parse_arg_id(begin, end, adapter);
2508
+ Char c = begin != end ? *begin : Char();
2509
+ if (c == '}') {
2510
+ handler.on_replacement_field(adapter.arg_id, begin);
2511
+ } else if (c == ':') {
2512
+ begin = handler.on_format_specs(adapter.arg_id, begin + 1, end);
2513
+ if (begin == end || *begin != '}')
2514
+ return handler.on_error("unknown format specifier"), end;
2515
+ } else {
2516
+ return handler.on_error("missing '}' in format string"), end;
2517
+ }
2518
+ }
2519
+ return begin + 1;
2520
+ }
2521
+
2522
+ template <bool IS_CONSTEXPR, typename Char, typename Handler>
2523
+ FMT_CONSTEXPR FMT_INLINE void parse_format_string(
2524
+ basic_string_view<Char> format_str, Handler&& handler) {
2525
+ auto begin = format_str.data();
2526
+ auto end = begin + format_str.size();
2527
+ if (end - begin < 32) {
2528
+ // Use a simple loop instead of memchr for small strings.
2529
+ const Char* p = begin;
2530
+ while (p != end) {
2531
+ auto c = *p++;
2532
+ if (c == '{') {
2533
+ handler.on_text(begin, p - 1);
2534
+ begin = p = parse_replacement_field(p - 1, end, handler);
2535
+ } else if (c == '}') {
2536
+ if (p == end || *p != '}')
2537
+ return handler.on_error("unmatched '}' in format string");
2538
+ handler.on_text(begin, p);
2539
+ begin = ++p;
2540
+ }
2541
+ }
2542
+ handler.on_text(begin, end);
2543
+ return;
2544
+ }
2545
+ struct writer {
2546
+ FMT_CONSTEXPR void operator()(const Char* from, const Char* to) {
2547
+ if (from == to) return;
2548
+ for (;;) {
2549
+ const Char* p = nullptr;
2550
+ if (!find<IS_CONSTEXPR>(from, to, Char('}'), p))
2551
+ return handler_.on_text(from, to);
2552
+ ++p;
2553
+ if (p == to || *p != '}')
2554
+ return handler_.on_error("unmatched '}' in format string");
2555
+ handler_.on_text(from, p);
2556
+ from = p + 1;
2557
+ }
2558
+ }
2559
+ Handler& handler_;
2560
+ } write = {handler};
2561
+ while (begin != end) {
2562
+ // Doing two passes with memchr (one for '{' and another for '}') is up to
2563
+ // 2.5x faster than the naive one-pass implementation on big format strings.
2564
+ const Char* p = begin;
2565
+ if (*begin != '{' && !find<IS_CONSTEXPR>(begin + 1, end, Char('{'), p))
2566
+ return write(begin, end);
2567
+ write(begin, p);
2568
+ begin = parse_replacement_field(p, end, handler);
2569
+ }
2570
+ }
2571
+
2572
+ template <typename T, bool = is_named_arg<T>::value> struct strip_named_arg {
2573
+ using type = T;
2574
+ };
2575
+ template <typename T> struct strip_named_arg<T, true> {
2576
+ using type = remove_cvref_t<decltype(T::value)>;
2577
+ };
2578
+
2579
+ template <typename T, typename ParseContext>
2580
+ FMT_CONSTEXPR auto parse_format_specs(ParseContext& ctx)
2581
+ -> decltype(ctx.begin()) {
2582
+ using char_type = typename ParseContext::char_type;
2583
+ using context = buffer_context<char_type>;
2584
+ using mapped_type = conditional_t<
2585
+ mapped_type_constant<T, context>::value != type::custom_type,
2586
+ decltype(arg_mapper<context>().map(std::declval<const T&>())),
2587
+ typename strip_named_arg<T>::type>;
2588
+ #if defined(__cpp_if_constexpr)
2589
+ if constexpr (std::is_default_constructible<
2590
+ formatter<mapped_type, char_type>>::value) {
2591
+ return formatter<mapped_type, char_type>().parse(ctx);
2592
+ } else {
2593
+ type_is_unformattable_for<T, char_type> _;
2594
+ return ctx.begin();
2595
+ }
2596
+ #else
2597
+ return formatter<mapped_type, char_type>().parse(ctx);
2598
+ #endif
2599
+ }
2600
+
2601
+ // Checks char specs and returns true iff the presentation type is char-like.
2602
+ template <typename Char>
2603
+ FMT_CONSTEXPR auto check_char_specs(const format_specs<Char>& specs) -> bool {
2604
+ if (specs.type != presentation_type::none &&
2605
+ specs.type != presentation_type::chr &&
2606
+ specs.type != presentation_type::debug) {
2607
+ return false;
2608
+ }
2609
+ if (specs.align == align::numeric || specs.sign != sign::none || specs.alt)
2610
+ throw_format_error("invalid format specifier for char");
2611
+ return true;
2612
+ }
2613
+
2614
+ #if FMT_USE_NONTYPE_TEMPLATE_ARGS
2615
+ template <int N, typename T, typename... Args, typename Char>
2616
+ constexpr auto get_arg_index_by_name(basic_string_view<Char> name) -> int {
2617
+ if constexpr (is_statically_named_arg<T>()) {
2618
+ if (name == T::name) return N;
2619
+ }
2620
+ if constexpr (sizeof...(Args) > 0)
2621
+ return get_arg_index_by_name<N + 1, Args...>(name);
2622
+ (void)name; // Workaround an MSVC bug about "unused" parameter.
2623
+ return -1;
2624
+ }
2625
+ #endif
2626
+
2627
+ template <typename... Args, typename Char>
2628
+ FMT_CONSTEXPR auto get_arg_index_by_name(basic_string_view<Char> name) -> int {
2629
+ #if FMT_USE_NONTYPE_TEMPLATE_ARGS
2630
+ if constexpr (sizeof...(Args) > 0)
2631
+ return get_arg_index_by_name<0, Args...>(name);
2632
+ #endif
2633
+ (void)name;
2634
+ return -1;
2635
+ }
2636
+
2637
+ template <typename Char, typename... Args> class format_string_checker {
2638
+ private:
2639
+ using parse_context_type = compile_parse_context<Char>;
2640
+ static constexpr int num_args = sizeof...(Args);
2641
+
2642
+ // Format specifier parsing function.
2643
+ // In the future basic_format_parse_context will replace compile_parse_context
2644
+ // here and will use is_constant_evaluated and downcasting to access the data
2645
+ // needed for compile-time checks: https://godbolt.org/z/GvWzcTjh1.
2646
+ using parse_func = const Char* (*)(parse_context_type&);
2647
+
2648
+ type types_[num_args > 0 ? static_cast<size_t>(num_args) : 1];
2649
+ parse_context_type context_;
2650
+ parse_func parse_funcs_[num_args > 0 ? static_cast<size_t>(num_args) : 1];
2651
+
2652
+ public:
2653
+ explicit FMT_CONSTEXPR format_string_checker(basic_string_view<Char> fmt)
2654
+ : types_{mapped_type_constant<Args, buffer_context<Char>>::value...},
2655
+ context_(fmt, num_args, types_),
2656
+ parse_funcs_{&parse_format_specs<Args, parse_context_type>...} {}
2657
+
2658
+ FMT_CONSTEXPR void on_text(const Char*, const Char*) {}
2659
+
2660
+ FMT_CONSTEXPR auto on_arg_id() -> int { return context_.next_arg_id(); }
2661
+ FMT_CONSTEXPR auto on_arg_id(int id) -> int {
2662
+ return context_.check_arg_id(id), id;
2663
+ }
2664
+ FMT_CONSTEXPR auto on_arg_id(basic_string_view<Char> id) -> int {
2665
+ #if FMT_USE_NONTYPE_TEMPLATE_ARGS
2666
+ auto index = get_arg_index_by_name<Args...>(id);
2667
+ if (index < 0) on_error("named argument is not found");
2668
+ return index;
2669
+ #else
2670
+ (void)id;
2671
+ on_error("compile-time checks for named arguments require C++20 support");
2672
+ return 0;
2673
+ #endif
2674
+ }
2675
+
2676
+ FMT_CONSTEXPR void on_replacement_field(int id, const Char* begin) {
2677
+ on_format_specs(id, begin, begin); // Call parse() on empty specs.
2678
+ }
2679
+
2680
+ FMT_CONSTEXPR auto on_format_specs(int id, const Char* begin, const Char*)
2681
+ -> const Char* {
2682
+ context_.advance_to(begin);
2683
+ // id >= 0 check is a workaround for gcc 10 bug (#2065).
2684
+ return id >= 0 && id < num_args ? parse_funcs_[id](context_) : begin;
2685
+ }
2686
+
2687
+ FMT_CONSTEXPR void on_error(const char* message) {
2688
+ throw_format_error(message);
2689
+ }
2690
+ };
2691
+
2692
+ // Reports a compile-time error if S is not a valid format string.
2693
+ template <typename..., typename S, FMT_ENABLE_IF(!is_compile_string<S>::value)>
2694
+ FMT_INLINE void check_format_string(const S&) {
2695
+ #ifdef FMT_ENFORCE_COMPILE_STRING
2696
+ static_assert(is_compile_string<S>::value,
2697
+ "FMT_ENFORCE_COMPILE_STRING requires all format strings to use "
2698
+ "FMT_STRING.");
2699
+ #endif
2700
+ }
2701
+ template <typename... Args, typename S,
2702
+ FMT_ENABLE_IF(is_compile_string<S>::value)>
2703
+ void check_format_string(S format_str) {
2704
+ using char_t = typename S::char_type;
2705
+ FMT_CONSTEXPR auto s = basic_string_view<char_t>(format_str);
2706
+ using checker = format_string_checker<char_t, remove_cvref_t<Args>...>;
2707
+ FMT_CONSTEXPR bool error = (parse_format_string<true>(s, checker(s)), true);
2708
+ ignore_unused(error);
2709
+ }
2710
+
2711
+ template <typename Char = char> struct vformat_args {
2712
+ using type = basic_format_args<
2713
+ basic_format_context<std::back_insert_iterator<buffer<Char>>, Char>>;
2714
+ };
2715
+ template <> struct vformat_args<char> {
2716
+ using type = format_args;
2717
+ };
2718
+
2719
+ // Use vformat_args and avoid type_identity to keep symbols short.
2720
+ template <typename Char>
2721
+ void vformat_to(buffer<Char>& buf, basic_string_view<Char> fmt,
2722
+ typename vformat_args<Char>::type args, locale_ref loc = {});
2723
+
2724
+ FMT_API void vprint_mojibake(std::FILE*, string_view, format_args);
2725
+ #ifndef _WIN32
2726
+ inline void vprint_mojibake(std::FILE*, string_view, format_args) {}
2727
+ #endif
2728
+ } // namespace detail
2729
+
2730
+ FMT_BEGIN_EXPORT
2731
+
2732
+ // A formatter specialization for natively supported types.
2733
+ template <typename T, typename Char>
2734
+ struct formatter<T, Char,
2735
+ enable_if_t<detail::type_constant<T, Char>::value !=
2736
+ detail::type::custom_type>> {
2737
+ private:
2738
+ detail::dynamic_format_specs<Char> specs_;
2739
+
2740
+ public:
2741
+ template <typename ParseContext>
2742
+ FMT_CONSTEXPR auto parse(ParseContext& ctx) -> const Char* {
2743
+ auto type = detail::type_constant<T, Char>::value;
2744
+ auto end =
2745
+ detail::parse_format_specs(ctx.begin(), ctx.end(), specs_, ctx, type);
2746
+ if (type == detail::type::char_type) detail::check_char_specs(specs_);
2747
+ return end;
2748
+ }
2749
+
2750
+ template <detail::type U = detail::type_constant<T, Char>::value,
2751
+ FMT_ENABLE_IF(U == detail::type::string_type ||
2752
+ U == detail::type::cstring_type ||
2753
+ U == detail::type::char_type)>
2754
+ FMT_CONSTEXPR void set_debug_format(bool set = true) {
2755
+ specs_.type = set ? presentation_type::debug : presentation_type::none;
2756
+ }
2757
+
2758
+ template <typename FormatContext>
2759
+ FMT_CONSTEXPR auto format(const T& val, FormatContext& ctx) const
2760
+ -> decltype(ctx.out());
2761
+ };
2762
+
2763
+ template <typename Char = char> struct runtime_format_string {
2764
+ basic_string_view<Char> str;
2765
+ };
2766
+
2767
+ /** A compile-time format string. */
2768
+ template <typename Char, typename... Args> class basic_format_string {
2769
+ private:
2770
+ basic_string_view<Char> str_;
2771
+
2772
+ public:
2773
+ template <typename S,
2774
+ FMT_ENABLE_IF(
2775
+ std::is_convertible<const S&, basic_string_view<Char>>::value)>
2776
+ FMT_CONSTEVAL FMT_INLINE basic_format_string(const S& s) : str_(s) {
2777
+ static_assert(
2778
+ detail::count<
2779
+ (std::is_base_of<detail::view, remove_reference_t<Args>>::value &&
2780
+ std::is_reference<Args>::value)...>() == 0,
2781
+ "passing views as lvalues is disallowed");
2782
+ #ifdef FMT_HAS_CONSTEVAL
2783
+ if constexpr (detail::count_named_args<Args...>() ==
2784
+ detail::count_statically_named_args<Args...>()) {
2785
+ using checker =
2786
+ detail::format_string_checker<Char, remove_cvref_t<Args>...>;
2787
+ detail::parse_format_string<true>(str_, checker(s));
2788
+ }
2789
+ #else
2790
+ detail::check_format_string<Args...>(s);
2791
+ #endif
2792
+ }
2793
+ basic_format_string(runtime_format_string<Char> fmt) : str_(fmt.str) {}
2794
+
2795
+ FMT_INLINE operator basic_string_view<Char>() const { return str_; }
2796
+ FMT_INLINE auto get() const -> basic_string_view<Char> { return str_; }
2797
+ };
2798
+
2799
+ #if FMT_GCC_VERSION && FMT_GCC_VERSION < 409
2800
+ // Workaround broken conversion on older gcc.
2801
+ template <typename...> using format_string = string_view;
2802
+ inline auto runtime(string_view s) -> string_view { return s; }
2803
+ #else
2804
+ template <typename... Args>
2805
+ using format_string = basic_format_string<char, type_identity_t<Args>...>;
2806
+ /**
2807
+ \rst
2808
+ Creates a runtime format string.
2809
+
2810
+ **Example**::
2811
+
2812
+ // Check format string at runtime instead of compile-time.
2813
+ fmt::print(fmt::runtime("{:d}"), "I am not a number");
2814
+ \endrst
2815
+ */
2816
+ inline auto runtime(string_view s) -> runtime_format_string<> { return {{s}}; }
2817
+ #endif
2818
+
2819
+ FMT_API auto vformat(string_view fmt, format_args args) -> std::string;
2820
+
2821
+ /**
2822
+ \rst
2823
+ Formats ``args`` according to specifications in ``fmt`` and returns the result
2824
+ as a string.
2825
+
2826
+ **Example**::
2827
+
2828
+ #include <fmt/core.h>
2829
+ std::string message = fmt::format("The answer is {}.", 42);
2830
+ \endrst
2831
+ */
2832
+ template <typename... T>
2833
+ FMT_NODISCARD FMT_INLINE auto format(format_string<T...> fmt, T&&... args)
2834
+ -> std::string {
2835
+ return vformat(fmt, fmt::make_format_args(args...));
2836
+ }
2837
+
2838
+ /** Formats a string and writes the output to ``out``. */
2839
+ template <typename OutputIt,
2840
+ FMT_ENABLE_IF(detail::is_output_iterator<OutputIt, char>::value)>
2841
+ auto vformat_to(OutputIt out, string_view fmt, format_args args) -> OutputIt {
2842
+ auto&& buf = detail::get_buffer<char>(out);
2843
+ detail::vformat_to(buf, fmt, args, {});
2844
+ return detail::get_iterator(buf, out);
2845
+ }
2846
+
2847
+ /**
2848
+ \rst
2849
+ Formats ``args`` according to specifications in ``fmt``, writes the result to
2850
+ the output iterator ``out`` and returns the iterator past the end of the output
2851
+ range. `format_to` does not append a terminating null character.
2852
+
2853
+ **Example**::
2854
+
2855
+ auto out = std::vector<char>();
2856
+ fmt::format_to(std::back_inserter(out), "{}", 42);
2857
+ \endrst
2858
+ */
2859
+ template <typename OutputIt, typename... T,
2860
+ FMT_ENABLE_IF(detail::is_output_iterator<OutputIt, char>::value)>
2861
+ FMT_INLINE auto format_to(OutputIt out, format_string<T...> fmt, T&&... args)
2862
+ -> OutputIt {
2863
+ return vformat_to(out, fmt, fmt::make_format_args(args...));
2864
+ }
2865
+
2866
+ template <typename OutputIt> struct format_to_n_result {
2867
+ /** Iterator past the end of the output range. */
2868
+ OutputIt out;
2869
+ /** Total (not truncated) output size. */
2870
+ size_t size;
2871
+ };
2872
+
2873
+ template <typename OutputIt, typename... T,
2874
+ FMT_ENABLE_IF(detail::is_output_iterator<OutputIt, char>::value)>
2875
+ auto vformat_to_n(OutputIt out, size_t n, string_view fmt, format_args args)
2876
+ -> format_to_n_result<OutputIt> {
2877
+ using traits = detail::fixed_buffer_traits;
2878
+ auto buf = detail::iterator_buffer<OutputIt, char, traits>(out, n);
2879
+ detail::vformat_to(buf, fmt, args, {});
2880
+ return {buf.out(), buf.count()};
2881
+ }
2882
+
2883
+ /**
2884
+ \rst
2885
+ Formats ``args`` according to specifications in ``fmt``, writes up to ``n``
2886
+ characters of the result to the output iterator ``out`` and returns the total
2887
+ (not truncated) output size and the iterator past the end of the output range.
2888
+ `format_to_n` does not append a terminating null character.
2889
+ \endrst
2890
+ */
2891
+ template <typename OutputIt, typename... T,
2892
+ FMT_ENABLE_IF(detail::is_output_iterator<OutputIt, char>::value)>
2893
+ FMT_INLINE auto format_to_n(OutputIt out, size_t n, format_string<T...> fmt,
2894
+ T&&... args) -> format_to_n_result<OutputIt> {
2895
+ return vformat_to_n(out, n, fmt, fmt::make_format_args(args...));
2896
+ }
2897
+
2898
+ /** Returns the number of chars in the output of ``format(fmt, args...)``. */
2899
+ template <typename... T>
2900
+ FMT_NODISCARD FMT_INLINE auto formatted_size(format_string<T...> fmt,
2901
+ T&&... args) -> size_t {
2902
+ auto buf = detail::counting_buffer<>();
2903
+ detail::vformat_to<char>(buf, fmt, fmt::make_format_args(args...), {});
2904
+ return buf.count();
2905
+ }
2906
+
2907
+ FMT_API void vprint(string_view fmt, format_args args);
2908
+ FMT_API void vprint(std::FILE* f, string_view fmt, format_args args);
2909
+
2910
+ /**
2911
+ \rst
2912
+ Formats ``args`` according to specifications in ``fmt`` and writes the output
2913
+ to ``stdout``.
2914
+
2915
+ **Example**::
2916
+
2917
+ fmt::print("Elapsed time: {0:.2f} seconds", 1.23);
2918
+ \endrst
2919
+ */
2920
+ template <typename... T>
2921
+ FMT_INLINE void print(format_string<T...> fmt, T&&... args) {
2922
+ const auto& vargs = fmt::make_format_args(args...);
2923
+ return detail::is_utf8() ? vprint(fmt, vargs)
2924
+ : detail::vprint_mojibake(stdout, fmt, vargs);
2925
+ }
2926
+
2927
+ /**
2928
+ \rst
2929
+ Formats ``args`` according to specifications in ``fmt`` and writes the
2930
+ output to the file ``f``.
2931
+
2932
+ **Example**::
2933
+
2934
+ fmt::print(stderr, "Don't {}!", "panic");
2935
+ \endrst
2936
+ */
2937
+ template <typename... T>
2938
+ FMT_INLINE void print(std::FILE* f, format_string<T...> fmt, T&&... args) {
2939
+ const auto& vargs = fmt::make_format_args(args...);
2940
+ return detail::is_utf8() ? vprint(f, fmt, vargs)
2941
+ : detail::vprint_mojibake(f, fmt, vargs);
2942
+ }
2943
+
2944
+ /**
2945
+ Formats ``args`` according to specifications in ``fmt`` and writes the
2946
+ output to the file ``f`` followed by a newline.
2947
+ */
2948
+ template <typename... T>
2949
+ FMT_INLINE void println(std::FILE* f, format_string<T...> fmt, T&&... args) {
2950
+ return fmt::print(f, "{}\n", fmt::format(fmt, std::forward<T>(args)...));
2951
+ }
2952
+
2953
+ /**
2954
+ Formats ``args`` according to specifications in ``fmt`` and writes the output
2955
+ to ``stdout`` followed by a newline.
2956
+ */
2957
+ template <typename... T>
2958
+ FMT_INLINE void println(format_string<T...> fmt, T&&... args) {
2959
+ return fmt::println(stdout, fmt, std::forward<T>(args)...);
2960
+ }
2961
+
2962
+ FMT_END_EXPORT
2963
+ FMT_GCC_PRAGMA("GCC pop_options")
2964
+ FMT_END_NAMESPACE
2965
+
2966
+ #ifdef FMT_HEADER_ONLY
2967
+ # include "format.h"
2968
+ #endif
2969
+ #endif // FMT_CORE_H_