Skip to content

Instantly share code, notes, and snippets.

@ryantm
Created March 17, 2018 18:31
Show Gist options
  • Save ryantm/834ad2743ce2f56612f8ba9ff9a4e5b5 to your computer and use it in GitHub Desktop.
Save ryantm/834ad2743ce2f56612f8ba9ff9a4e5b5 to your computer and use it in GitHub Desktop.
/nix/store/1js10q8jgqmpk6ashz63am7f9xl37kvs-asio-1.12.0
├── include
│   ├── asio
│   │   ├── associated_allocator.hpp
│   │   ├── associated_executor.hpp
│   │   ├── async_result.hpp
│   │   ├── basic_datagram_socket.hpp
│   │   ├── basic_deadline_timer.hpp
│   │   ├── basic_io_object.hpp
│   │   ├── basic_raw_socket.hpp
│   │   ├── basic_seq_packet_socket.hpp
│   │   ├── basic_serial_port.hpp
│   │   ├── basic_signal_set.hpp
│   │   ├── basic_socket_acceptor.hpp
│   │   ├── basic_socket.hpp
│   │   ├── basic_socket_iostream.hpp
│   │   ├── basic_socket_streambuf.hpp
│   │   ├── basic_streambuf_fwd.hpp
│   │   ├── basic_streambuf.hpp
│   │   ├── basic_stream_socket.hpp
│   │   ├── basic_waitable_timer.hpp
│   │   ├── bind_executor.hpp
│   │   ├── buffered_read_stream_fwd.hpp
│   │   ├── buffered_read_stream.hpp
│   │   ├── buffered_stream_fwd.hpp
│   │   ├── buffered_stream.hpp
│   │   ├── buffered_write_stream_fwd.hpp
│   │   ├── buffered_write_stream.hpp
│   │   ├── buffer.hpp
│   │   ├── buffers_iterator.hpp
│   │   ├── completion_condition.hpp
│   │   ├── connect.hpp
│   │   ├── coroutine.hpp
│   │   ├── datagram_socket_service.hpp
│   │   ├── deadline_timer.hpp
│   │   ├── deadline_timer_service.hpp
│   │   ├── defer.hpp
│   │   ├── detail
│   │   │   ├── array_fwd.hpp
│   │   │   ├── array.hpp
│   │   │   ├── assert.hpp
│   │   │   ├── atomic_count.hpp
│   │   │   ├── base_from_completion_cond.hpp
│   │   │   ├── bind_handler.hpp
│   │   │   ├── buffered_stream_storage.hpp
│   │   │   ├── buffer_resize_guard.hpp
│   │   │   ├── buffer_sequence_adapter.hpp
│   │   │   ├── call_stack.hpp
│   │   │   ├── chrono.hpp
│   │   │   ├── chrono_time_traits.hpp
│   │   │   ├── completion_handler.hpp
│   │   │   ├── concurrency_hint.hpp
│   │   │   ├── conditionally_enabled_event.hpp
│   │   │   ├── conditionally_enabled_mutex.hpp
│   │   │   ├── config.hpp
│   │   │   ├── consuming_buffers.hpp
│   │   │   ├── cstddef.hpp
│   │   │   ├── cstdint.hpp
│   │   │   ├── date_time_fwd.hpp
│   │   │   ├── deadline_timer_service.hpp
│   │   │   ├── dependent_type.hpp
│   │   │   ├── descriptor_ops.hpp
│   │   │   ├── descriptor_read_op.hpp
│   │   │   ├── descriptor_write_op.hpp
│   │   │   ├── dev_poll_reactor.hpp
│   │   │   ├── epoll_reactor.hpp
│   │   │   ├── eventfd_select_interrupter.hpp
│   │   │   ├── event.hpp
│   │   │   ├── executor_op.hpp
│   │   │   ├── fd_set_adapter.hpp
│   │   │   ├── fenced_block.hpp
│   │   │   ├── functional.hpp
│   │   │   ├── gcc_arm_fenced_block.hpp
│   │   │   ├── gcc_hppa_fenced_block.hpp
│   │   │   ├── gcc_sync_fenced_block.hpp
│   │   │   ├── gcc_x86_fenced_block.hpp
│   │   │   ├── global.hpp
│   │   │   ├── handler_alloc_helpers.hpp
│   │   │   ├── handler_cont_helpers.hpp
│   │   │   ├── handler_invoke_helpers.hpp
│   │   │   ├── handler_tracking.hpp
│   │   │   ├── handler_type_requirements.hpp
│   │   │   ├── handler_work.hpp
│   │   │   ├── hash_map.hpp
│   │   │   ├── impl
│   │   │   │   ├── buffer_sequence_adapter.ipp
│   │   │   │   ├── descriptor_ops.ipp
│   │   │   │   ├── dev_poll_reactor.hpp
│   │   │   │   ├── dev_poll_reactor.ipp
│   │   │   │   ├── epoll_reactor.hpp
│   │   │   │   ├── epoll_reactor.ipp
│   │   │   │   ├── eventfd_select_interrupter.ipp
│   │   │   │   ├── handler_tracking.ipp
│   │   │   │   ├── kqueue_reactor.hpp
│   │   │   │   ├── kqueue_reactor.ipp
│   │   │   │   ├── null_event.ipp
│   │   │   │   ├── pipe_select_interrupter.ipp
│   │   │   │   ├── posix_event.ipp
│   │   │   │   ├── posix_mutex.ipp
│   │   │   │   ├── posix_thread.ipp
│   │   │   │   ├── posix_tss_ptr.ipp
│   │   │   │   ├── reactive_descriptor_service.ipp
│   │   │   │   ├── reactive_serial_port_service.ipp
│   │   │   │   ├── reactive_socket_service_base.ipp
│   │   │   │   ├── resolver_service_base.ipp
│   │   │   │   ├── scheduler.ipp
│   │   │   │   ├── select_reactor.hpp
│   │   │   │   ├── select_reactor.ipp
│   │   │   │   ├── service_registry.hpp
│   │   │   │   ├── service_registry.ipp
│   │   │   │   ├── signal_set_service.ipp
│   │   │   │   ├── socket_ops.ipp
│   │   │   │   ├── socket_select_interrupter.ipp
│   │   │   │   ├── strand_executor_service.hpp
│   │   │   │   ├── strand_executor_service.ipp
│   │   │   │   ├── strand_service.hpp
│   │   │   │   ├── strand_service.ipp
│   │   │   │   ├── throw_error.ipp
│   │   │   │   ├── timer_queue_ptime.ipp
│   │   │   │   ├── timer_queue_set.ipp
│   │   │   │   ├── win_event.ipp
│   │   │   │   ├── win_iocp_handle_service.ipp
│   │   │   │   ├── win_iocp_io_context.hpp
│   │   │   │   ├── win_iocp_io_context.ipp
│   │   │   │   ├── win_iocp_serial_port_service.ipp
│   │   │   │   ├── win_iocp_socket_service_base.ipp
│   │   │   │   ├── win_mutex.ipp
│   │   │   │   ├── win_object_handle_service.ipp
│   │   │   │   ├── winrt_ssocket_service_base.ipp
│   │   │   │   ├── winrt_timer_scheduler.hpp
│   │   │   │   ├── winrt_timer_scheduler.ipp
│   │   │   │   ├── winsock_init.ipp
│   │   │   │   ├── win_static_mutex.ipp
│   │   │   │   ├── win_thread.ipp
│   │   │   │   └── win_tss_ptr.ipp
│   │   │   ├── io_control.hpp
│   │   │   ├── is_buffer_sequence.hpp
│   │   │   ├── is_executor.hpp
│   │   │   ├── keyword_tss_ptr.hpp
│   │   │   ├── kqueue_reactor.hpp
│   │   │   ├── limits.hpp
│   │   │   ├── local_free_on_block_exit.hpp
│   │   │   ├── macos_fenced_block.hpp
│   │   │   ├── memory.hpp
│   │   │   ├── mutex.hpp
│   │   │   ├── noncopyable.hpp
│   │   │   ├── null_event.hpp
│   │   │   ├── null_fenced_block.hpp
│   │   │   ├── null_global.hpp
│   │   │   ├── null_mutex.hpp
│   │   │   ├── null_reactor.hpp
│   │   │   ├── null_signal_blocker.hpp
│   │   │   ├── null_socket_service.hpp
│   │   │   ├── null_static_mutex.hpp
│   │   │   ├── null_thread.hpp
│   │   │   ├── null_tss_ptr.hpp
│   │   │   ├── object_pool.hpp
│   │   │   ├── old_win_sdk_compat.hpp
│   │   │   ├── operation.hpp
│   │   │   ├── op_queue.hpp
│   │   │   ├── pipe_select_interrupter.hpp
│   │   │   ├── pop_options.hpp
│   │   │   ├── posix_event.hpp
│   │   │   ├── posix_fd_set_adapter.hpp
│   │   │   ├── posix_global.hpp
│   │   │   ├── posix_mutex.hpp
│   │   │   ├── posix_signal_blocker.hpp
│   │   │   ├── posix_static_mutex.hpp
│   │   │   ├── posix_thread.hpp
│   │   │   ├── posix_tss_ptr.hpp
│   │   │   ├── push_options.hpp
│   │   │   ├── reactive_descriptor_service.hpp
│   │   │   ├── reactive_null_buffers_op.hpp
│   │   │   ├── reactive_serial_port_service.hpp
│   │   │   ├── reactive_socket_accept_op.hpp
│   │   │   ├── reactive_socket_connect_op.hpp
│   │   │   ├── reactive_socket_recvfrom_op.hpp
│   │   │   ├── reactive_socket_recvmsg_op.hpp
│   │   │   ├── reactive_socket_recv_op.hpp
│   │   │   ├── reactive_socket_send_op.hpp
│   │   │   ├── reactive_socket_sendto_op.hpp
│   │   │   ├── reactive_socket_service_base.hpp
│   │   │   ├── reactive_socket_service.hpp
│   │   │   ├── reactive_wait_op.hpp
│   │   │   ├── reactor_fwd.hpp
│   │   │   ├── reactor.hpp
│   │   │   ├── reactor_op.hpp
│   │   │   ├── reactor_op_queue.hpp
│   │   │   ├── recycling_allocator.hpp
│   │   │   ├── regex_fwd.hpp
│   │   │   ├── resolve_endpoint_op.hpp
│   │   │   ├── resolve_op.hpp
│   │   │   ├── resolve_query_op.hpp
│   │   │   ├── resolver_service_base.hpp
│   │   │   ├── resolver_service.hpp
│   │   │   ├── scheduler.hpp
│   │   │   ├── scheduler_operation.hpp
│   │   │   ├── scheduler_thread_info.hpp
│   │   │   ├── scoped_lock.hpp
│   │   │   ├── scoped_ptr.hpp
│   │   │   ├── select_interrupter.hpp
│   │   │   ├── select_reactor.hpp
│   │   │   ├── service_registry.hpp
│   │   │   ├── signal_blocker.hpp
│   │   │   ├── signal_handler.hpp
│   │   │   ├── signal_init.hpp
│   │   │   ├── signal_op.hpp
│   │   │   ├── signal_set_service.hpp
│   │   │   ├── socket_holder.hpp
│   │   │   ├── socket_ops.hpp
│   │   │   ├── socket_option.hpp
│   │   │   ├── socket_select_interrupter.hpp
│   │   │   ├── socket_types.hpp
│   │   │   ├── solaris_fenced_block.hpp
│   │   │   ├── static_mutex.hpp
│   │   │   ├── std_event.hpp
│   │   │   ├── std_fenced_block.hpp
│   │   │   ├── std_global.hpp
│   │   │   ├── std_mutex.hpp
│   │   │   ├── std_static_mutex.hpp
│   │   │   ├── std_thread.hpp
│   │   │   ├── strand_executor_service.hpp
│   │   │   ├── strand_service.hpp
│   │   │   ├── string_view.hpp
│   │   │   ├── thread_context.hpp
│   │   │   ├── thread_group.hpp
│   │   │   ├── thread.hpp
│   │   │   ├── thread_info_base.hpp
│   │   │   ├── throw_error.hpp
│   │   │   ├── throw_exception.hpp
│   │   │   ├── timer_queue_base.hpp
│   │   │   ├── timer_queue.hpp
│   │   │   ├── timer_queue_ptime.hpp
│   │   │   ├── timer_queue_set.hpp
│   │   │   ├── timer_scheduler_fwd.hpp
│   │   │   ├── timer_scheduler.hpp
│   │   │   ├── tss_ptr.hpp
│   │   │   ├── type_traits.hpp
│   │   │   ├── variadic_templates.hpp
│   │   │   ├── wait_handler.hpp
│   │   │   ├── wait_op.hpp
│   │   │   ├── winapp_thread.hpp
│   │   │   ├── wince_thread.hpp
│   │   │   ├── win_event.hpp
│   │   │   ├── win_fd_set_adapter.hpp
│   │   │   ├── win_fenced_block.hpp
│   │   │   ├── win_global.hpp
│   │   │   ├── win_iocp_handle_read_op.hpp
│   │   │   ├── win_iocp_handle_service.hpp
│   │   │   ├── win_iocp_handle_write_op.hpp
│   │   │   ├── win_iocp_io_context.hpp
│   │   │   ├── win_iocp_null_buffers_op.hpp
│   │   │   ├── win_iocp_operation.hpp
│   │   │   ├── win_iocp_overlapped_op.hpp
│   │   │   ├── win_iocp_overlapped_ptr.hpp
│   │   │   ├── win_iocp_serial_port_service.hpp
│   │   │   ├── win_iocp_socket_accept_op.hpp
│   │   │   ├── win_iocp_socket_connect_op.hpp
│   │   │   ├── win_iocp_socket_recvfrom_op.hpp
│   │   │   ├── win_iocp_socket_recvmsg_op.hpp
│   │   │   ├── win_iocp_socket_recv_op.hpp
│   │   │   ├── win_iocp_socket_send_op.hpp
│   │   │   ├── win_iocp_socket_service_base.hpp
│   │   │   ├── win_iocp_socket_service.hpp
│   │   │   ├── win_iocp_thread_info.hpp
│   │   │   ├── win_iocp_wait_op.hpp
│   │   │   ├── win_mutex.hpp
│   │   │   ├── win_object_handle_service.hpp
│   │   │   ├── winrt_async_manager.hpp
│   │   │   ├── winrt_async_op.hpp
│   │   │   ├── winrt_resolve_op.hpp
│   │   │   ├── winrt_resolver_service.hpp
│   │   │   ├── winrt_socket_connect_op.hpp
│   │   │   ├── winrt_socket_recv_op.hpp
│   │   │   ├── winrt_socket_send_op.hpp
│   │   │   ├── winrt_ssocket_service_base.hpp
│   │   │   ├── winrt_ssocket_service.hpp
│   │   │   ├── winrt_timer_scheduler.hpp
│   │   │   ├── winrt_utils.hpp
│   │   │   ├── winsock_init.hpp
│   │   │   ├── win_static_mutex.hpp
│   │   │   ├── win_thread.hpp
│   │   │   ├── win_tss_ptr.hpp
│   │   │   ├── work_dispatcher.hpp
│   │   │   └── wrapped_handler.hpp
│   │   ├── dispatch.hpp
│   │   ├── error_code.hpp
│   │   ├── error.hpp
│   │   ├── execution_context.hpp
│   │   ├── executor.hpp
│   │   ├── executor_work_guard.hpp
│   │   ├── generic
│   │   │   ├── basic_endpoint.hpp
│   │   │   ├── datagram_protocol.hpp
│   │   │   ├── detail
│   │   │   │   ├── endpoint.hpp
│   │   │   │   └── impl
│   │   │   │   └── endpoint.ipp
│   │   │   ├── raw_protocol.hpp
│   │   │   ├── seq_packet_protocol.hpp
│   │   │   └── stream_protocol.hpp
│   │   ├── handler_alloc_hook.hpp
│   │   ├── handler_continuation_hook.hpp
│   │   ├── handler_invoke_hook.hpp
│   │   ├── handler_type.hpp
│   │   ├── high_resolution_timer.hpp
│   │   ├── impl
│   │   │   ├── buffered_read_stream.hpp
│   │   │   ├── buffered_write_stream.hpp
│   │   │   ├── connect.hpp
│   │   │   ├── defer.hpp
│   │   │   ├── dispatch.hpp
│   │   │   ├── error_code.ipp
│   │   │   ├── error.ipp
│   │   │   ├── execution_context.hpp
│   │   │   ├── execution_context.ipp
│   │   │   ├── executor.hpp
│   │   │   ├── executor.ipp
│   │   │   ├── handler_alloc_hook.ipp
│   │   │   ├── io_context.hpp
│   │   │   ├── io_context.ipp
│   │   │   ├── post.hpp
│   │   │   ├── read_at.hpp
│   │   │   ├── read.hpp
│   │   │   ├── read_until.hpp
│   │   │   ├── serial_port_base.hpp
│   │   │   ├── serial_port_base.ipp
│   │   │   ├── spawn.hpp
│   │   │   ├── src.cpp
│   │   │   ├── src.hpp
│   │   │   ├── system_context.hpp
│   │   │   ├── system_context.ipp
│   │   │   ├── system_executor.hpp
│   │   │   ├── thread_pool.hpp
│   │   │   ├── thread_pool.ipp
│   │   │   ├── use_future.hpp
│   │   │   ├── write_at.hpp
│   │   │   └── write.hpp
│   │   ├── io_context.hpp
│   │   ├── io_context_strand.hpp
│   │   ├── io_service.hpp
│   │   ├── io_service_strand.hpp
│   │   ├── ip
│   │   │   ├── address.hpp
│   │   │   ├── address_v4.hpp
│   │   │   ├── address_v4_iterator.hpp
│   │   │   ├── address_v4_range.hpp
│   │   │   ├── address_v6.hpp
│   │   │   ├── address_v6_iterator.hpp
│   │   │   ├── address_v6_range.hpp
│   │   │   ├── bad_address_cast.hpp
│   │   │   ├── basic_endpoint.hpp
│   │   │   ├── basic_resolver_entry.hpp
│   │   │   ├── basic_resolver.hpp
│   │   │   ├── basic_resolver_iterator.hpp
│   │   │   ├── basic_resolver_query.hpp
│   │   │   ├── basic_resolver_results.hpp
│   │   │   ├── detail
│   │   │   │   ├── endpoint.hpp
│   │   │   │   ├── impl
│   │   │   │   │   └── endpoint.ipp
│   │   │   │   └── socket_option.hpp
│   │   │   ├── host_name.hpp
│   │   │   ├── icmp.hpp
│   │   │   ├── impl
│   │   │   │   ├── address.hpp
│   │   │   │   ├── address.ipp
│   │   │   │   ├── address_v4.hpp
│   │   │   │   ├── address_v4.ipp
│   │   │   │   ├── address_v6.hpp
│   │   │   │   ├── address_v6.ipp
│   │   │   │   ├── basic_endpoint.hpp
│   │   │   │   ├── host_name.ipp
│   │   │   │   ├── network_v4.hpp
│   │   │   │   ├── network_v4.ipp
│   │   │   │   ├── network_v6.hpp
│   │   │   │   └── network_v6.ipp
│   │   │   ├── multicast.hpp
│   │   │   ├── network_v4.hpp
│   │   │   ├── network_v6.hpp
│   │   │   ├── resolver_base.hpp
│   │   │   ├── resolver_query_base.hpp
│   │   │   ├── resolver_service.hpp
│   │   │   ├── tcp.hpp
│   │   │   ├── udp.hpp
│   │   │   ├── unicast.hpp
│   │   │   └── v6_only.hpp
│   │   ├── is_executor.hpp
│   │   ├── is_read_buffered.hpp
│   │   ├── is_write_buffered.hpp
│   │   ├── local
│   │   │   ├── basic_endpoint.hpp
│   │   │   ├── connect_pair.hpp
│   │   │   ├── datagram_protocol.hpp
│   │   │   ├── detail
│   │   │   │   ├── endpoint.hpp
│   │   │   │   └── impl
│   │   │   │   └── endpoint.ipp
│   │   │   └── stream_protocol.hpp
│   │   ├── packaged_task.hpp
│   │   ├── placeholders.hpp
│   │   ├── posix
│   │   │   ├── basic_descriptor.hpp
│   │   │   ├── basic_stream_descriptor.hpp
│   │   │   ├── descriptor_base.hpp
│   │   │   ├── descriptor.hpp
│   │   │   ├── stream_descriptor.hpp
│   │   │   └── stream_descriptor_service.hpp
│   │   ├── post.hpp
│   │   ├── raw_socket_service.hpp
│   │   ├── read_at.hpp
│   │   ├── read.hpp
│   │   ├── read_until.hpp
│   │   ├── seq_packet_socket_service.hpp
│   │   ├── serial_port_base.hpp
│   │   ├── serial_port.hpp
│   │   ├── serial_port_service.hpp
│   │   ├── signal_set.hpp
│   │   ├── signal_set_service.hpp
│   │   ├── socket_acceptor_service.hpp
│   │   ├── socket_base.hpp
│   │   ├── spawn.hpp
│   │   ├── ssl
│   │   │   ├── context_base.hpp
│   │   │   ├── context.hpp
│   │   │   ├── detail
│   │   │   │   ├── buffered_handshake_op.hpp
│   │   │   │   ├── engine.hpp
│   │   │   │   ├── handshake_op.hpp
│   │   │   │   ├── impl
│   │   │   │   │   ├── engine.ipp
│   │   │   │   │   └── openssl_init.ipp
│   │   │   │   ├── io.hpp
│   │   │   │   ├── openssl_init.hpp
│   │   │   │   ├── openssl_types.hpp
│   │   │   │   ├── password_callback.hpp
│   │   │   │   ├── read_op.hpp
│   │   │   │   ├── shutdown_op.hpp
│   │   │   │   ├── stream_core.hpp
│   │   │   │   ├── verify_callback.hpp
│   │   │   │   └── write_op.hpp
│   │   │   ├── error.hpp
│   │   │   ├── impl
│   │   │   │   ├── context.hpp
│   │   │   │   ├── context.ipp
│   │   │   │   ├── error.ipp
│   │   │   │   ├── rfc2818_verification.ipp
│   │   │   │   └── src.hpp
│   │   │   ├── rfc2818_verification.hpp
│   │   │   ├── stream_base.hpp
│   │   │   ├── stream.hpp
│   │   │   ├── verify_context.hpp
│   │   │   └── verify_mode.hpp
│   │   ├── ssl.hpp
│   │   ├── steady_timer.hpp
│   │   ├── strand.hpp
│   │   ├── streambuf.hpp
│   │   ├── stream_socket_service.hpp
│   │   ├── system_context.hpp
│   │   ├── system_error.hpp
│   │   ├── system_executor.hpp
│   │   ├── system_timer.hpp
│   │   ├── thread.hpp
│   │   ├── thread_pool.hpp
│   │   ├── time_traits.hpp
│   │   ├── ts
│   │   │   ├── buffer.hpp
│   │   │   ├── executor.hpp
│   │   │   ├── internet.hpp
│   │   │   ├── io_context.hpp
│   │   │   ├── netfwd.hpp
│   │   │   ├── net.hpp
│   │   │   ├── socket.hpp
│   │   │   └── timer.hpp
│   │   ├── unyield.hpp
│   │   ├── use_future.hpp
│   │   ├── uses_executor.hpp
│   │   ├── version.hpp
│   │   ├── waitable_timer_service.hpp
│   │   ├── wait_traits.hpp
│   │   ├── windows
│   │   │   ├── basic_handle.hpp
│   │   │   ├── basic_object_handle.hpp
│   │   │   ├── basic_random_access_handle.hpp
│   │   │   ├── basic_stream_handle.hpp
│   │   │   ├── object_handle.hpp
│   │   │   ├── object_handle_service.hpp
│   │   │   ├── overlapped_handle.hpp
│   │   │   ├── overlapped_ptr.hpp
│   │   │   ├── random_access_handle.hpp
│   │   │   ├── random_access_handle_service.hpp
│   │   │   ├── stream_handle.hpp
│   │   │   └── stream_handle_service.hpp
│   │   ├── write_at.hpp
│   │   ├── write.hpp
│   │   └── yield.hpp
│   └── asio.hpp
└── nix-support
└── propagated-build-inputs
23 directories, 475 files
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment