Vinnie Falco
f4e2a327c8
Don't use dynamic_buffer_ref
2019-03-07 12:56:40 -08:00
Vinnie Falco
45353a7f04
handler_ptr is deprecated (API Change):
...
* `handler_ptr` is deprecated and should not be used.
Actions Required:
* Replace use of `handler_ptr` with `stable_async_base`
and `allocate_stable`.
2019-03-06 10:38:08 -08:00
Vinnie Falco
e073a9e7fc
Tidy up docs
2019-03-05 20:15:07 -08:00
Vinnie Falco
9f2b0ce1db
Rename to buffer_bytes
2019-03-05 11:09:53 -08:00
Vinnie Falco
6ccdcdf51d
buffer_size is in buffer_traits.hpp
2019-03-05 11:09:50 -08:00
Vinnie Falco
8e2620e2b1
Doc tidy
2019-03-05 08:00:14 -08:00
Vinnie Falco
8c53abe6e5
Support -fno-exceptions
2019-03-01 13:52:50 -08:00
Vinnie Falco
c510662c67
Add test::stream::service
2019-02-27 14:05:16 -08:00
Vinnie Falco
7953ac281f
Pass references as pointers to async_initiate
2019-02-26 07:21:05 -08:00
Vinnie Falco
ab9a4c66e0
Doc work
2019-02-26 07:21:04 -08:00
Damian Jarek
e9ba521c60
Cleanup in test::stream internals:
...
* avoid one instantiation of `bind_handler_front`
* avoid going through the 2-arg post unnecessarily in `read_op`
Signed-off-by: Damian Jarek <damian.jarek93@gmail.com >
2019-02-26 07:20:48 -08:00
Vinnie Falco
0647c902ac
role_type is in boost/beast/core/role.hpp (API Change):
...
This enumeration is now part of the library core and
not specific to websocket.
2019-02-26 07:20:46 -08:00
Vinnie Falco
81f33a0f89
Rename to async_base, stable_async_base
2019-02-26 07:20:08 -08:00
Vinnie Falco
59bda5d9c6
basic_parser is abstract, not CRTP (API Change):
...
* `basic_parser` now uses pure virtual member functions instead
of the curiously recurring template pattern.
Actions Required:
* Change uses of the `basic_parser` type to omit the `Derived`
template parameter
* Classes derived from `basic_parser` no longer need to friend
the base.
* Virtual functions in the derived class may be marked `override`.
2019-02-23 11:15:59 -08:00
Vinnie Falco
bbd62dd181
ssl_stream is a public interface
2019-02-23 09:57:45 -08:00
Vinnie Falco
46eb006757
Tidy up docs
2019-02-22 19:46:29 -08:00
Damian Jarek
d048aa8e7e
More split definitions in test::stream
...
Signed-off-by: Damian Jarek <damian.jarek93@gmail.com >
2019-02-22 17:42:44 -08:00
Vinnie Falco
955354b9dd
Enable split Beast compilation for tests
2019-02-22 17:27:27 -08:00
Vinnie Falco
90b783cb62
detect_ssl, async_detect_ssl are public interfaces
2019-02-22 15:39:34 -08:00
Vinnie Falco
6ada618c12
Check BOOST_NO_CXX11_THREAD_LOCAL
2019-02-21 11:09:02 -08:00
Vinnie Falco
d08cc82e15
Use async_initiate
2019-02-21 06:39:35 -08:00
Vinnie Falco
eea3929b26
Concept check tidying
2019-02-20 19:19:59 -08:00
Vinnie Falco
2b92189b65
Doc tidying
2019-02-20 19:09:21 -08:00
Vinnie Falco
6baa607295
Fixes to support Asio changes (API Change):
...
This adjusts Beast's interfaces and implementation to match
the changes in Boost.Asio.
2019-02-19 16:23:30 -08:00
Vinnie Falco
79c777e776
Tidying and fixes
2019-02-18 12:18:27 -08:00
Vinnie Falco
f21358186e
Add websocket::stream timeouts
2019-02-18 12:18:27 -08:00
Vinnie Falco
dfd08bf6ae
Refactor websocket::stream operations
2019-02-18 12:18:27 -08:00
Vinnie Falco
5c01953076
Remove unused file
2019-02-16 15:09:35 -08:00
Vinnie Falco
f41363c60c
Add async_op_base::invoke
2019-02-16 15:09:33 -08:00
Vinnie Falco
fdaf2ea7e1
Rename to async_op_base::invoke_now
2019-02-16 13:36:01 -08:00
Vinnie Falco
a781285e2f
Add experimental test/handler.hpp
2019-02-16 13:36:01 -08:00
Vinnie Falco
f15bbf10b4
flat_stream tests and tidy
2019-02-08 10:57:58 -08:00
Vinnie Falco
27a6f57200
Add flat_stream:
...
flat_stream, previously in _experimental, is now a public API.
2019-02-07 17:37:18 -08:00
Vinnie Falco
812a19706a
Improvements to test::stream:
...
The behavior of the test stream when either
end is destroyed or closed is well-defined.
2019-02-06 21:21:25 -08:00
Damian Jarek
34362256c0
Fixes to test::stream::async_read:
...
- Call the completion handler with the correct signature
- Replicate ASIO socket behavior of async operation completions
- Fix a data race between read_op and a call to stream::nread()
Signed-off-by: Damian Jarek <damian.jarek93@gmail.com >
2019-02-05 16:14:45 -08:00
Vinnie Falco
adcd4bc0c9
is_completion_handler, type_traits.hpp are deprecated (API Change):
...
* is_completion_handler is deprecated
* type_traits.hpp is a deprecated include
These items will be removed in the next version
* Include the new header file for the types needed:
- stream_traits.hpp
- file_base.hpp
* Use std::is_invocable instead of is_completion_handler
2019-02-05 14:16:30 -08:00
Vinnie Falco
9cee4e053f
Add executor_type trait
2019-02-05 07:46:09 -08:00
Vinnie Falco
4b7c33d781
Remove unnecessary file
2019-02-04 19:53:11 -08:00
Vinnie Falco
8814ac4b35
Remove unused file
2019-02-04 07:23:50 -08:00
Vinnie Falco
35dbd140d4
Add buffer_size
2019-02-03 12:59:11 -08:00
Vinnie Falco
17ada67f0d
Add dynamic_buffer_ref
2019-02-02 16:14:10 -08:00
Vinnie Falco
a142969c5d
Qualify buffer_copy, don't qualify buffer_size:
...
fix #1416
* Calls to buffer_copy are qualified as net::buffer_copy
* Calls to buffer_size are made unqualified, permitting
argument dependent lookup to take effect.
2019-02-02 13:01:27 -08:00
Vinnie Falco
5b0b218d96
test::stream maintains a handler work guard
...
fix #1418
2019-02-02 10:30:12 -08:00
Vinnie Falco
49deee4a69
Add close_socket, beast_close_socket customization:
...
This algorithm allows a socket-like object to be closed in
a generic context. The customization point enables user-defined
types to define the close algorithm to use with `close_socket`.
2019-02-01 14:05:07 -08:00
Vinnie Falco
60c96104ec
lowest_layer is removed (API Change):
...
The nested function lowest_layer and nested type lowest_layer_type
are removed from all stream layers.
Actions Required:
* Remove lowest_layer and lowest_layer_type from user-defined streams.
* Use the get_lowest_layer free function and the lowest_layer_type trait
as needed.
2019-01-22 04:59:07 -08:00
Vinnie Falco
03bf9144b7
Unit test macros use the global suite
...
fix #1411
2019-01-17 17:19:00 -08:00
Vinnie Falco
3599ccb09a
Add tests for async_op_base
2019-01-11 20:06:56 -08:00
Vinnie Falco
5292df6e72
async_op_base is a public interface:
...
This utility simplifies the authoring of composed
operations, see documentation for details.
2019-01-09 09:54:53 -08:00
Vinnie Falco
b46953f1bd
Use async_op_base:
...
Composed operation implementations use async_op_base and
stable_async_op_base, to eliminate redundant boilerplate.
2019-01-09 09:54:42 -08:00
Vinnie Falco
9e44ae7be5
Refactor async_op_base:
...
* Renamed to async_op_base (was operation_base)
* Executor1 is explicit
* Add stable_async_op_base refinement
2019-01-09 09:54:15 -08:00