fix#2417
This improves inter-conversion between string_view implementations. Some observable differences for users:
- core::string_view no longer supports the .to_string() or .clear() extensions from Utility
- code that relied on .max_size() returning .size(), needs to be fixed to .size() instead
- remove_suffix() and remove_prefix() were more lenient than the standard specs; be sure you don't rely on it clamping the argument to valid range
- BOOST_NO_CXX11_EXPLICIT_CONVERSION_OPERATORS no longer suppresses conversions to std::string
- core::string_view adds .contains() and various bugs fixed
Merges PR#2414
I used this example to start building my WebSocket application, however, I noticed that upon removing the echoing in the on_read method, the server repeatedly throws errors without exiting the method.
You can recreate this problem by replacing the async_write with do_write and cause any error (i.e. client reloads the page).
Adding a return statement here would make debugging for future changes much easier and it wouldn't harm the existing echoing in any way.
Allow unit tests to compile with rtti=off
This struct is only used to make sure that there are no duplication of
test suites. Move it to a concept that works with RTTI disabled.
Signed-off-by: Ed Tanous <ed@tanous.net>
close#2337
Original commit message
fixed an error in websocket_client_async_ssl
close#2315
in this example host_ string should be updated after SSL_set_tlsext_host_name just like the synced version, otherwise this would cause a handshake error
Currently, the test stream code doesn't compile when both debug builds
(namely assertions) are enabled along with disabling rtti. The current
code directly uses type_id(), which isn't available without rtti.
This commit allows stream.hpp to compile without rtti enabled.
Signed-off-by: Ed Tanous <ed@tanous.net>
close#2331