Vinnie Falco
c1d7a83af2
buffers_cat fixes and coverage:
...
* Fix operator== for default constructed iterators
* More tests and code coverage
2018-12-19 20:59:20 -08:00
Vinnie Falco
ad2cdf0281
Tidy up msvc-14 workaround in multi_buffer
2018-12-19 20:59:20 -08:00
Vinnie Falco
e17a92f2a8
Workarounds for msvc-14
2018-12-13 19:38:44 -08:00
Vinnie Falco
d0183da6d0
Tidy up buffers_prefix and tests
2018-12-12 19:32:22 -08:00
Vinnie Falco
120d5481e2
Tidy up core files
2018-12-12 19:32:22 -08:00
Vinnie Falco
3e695d588a
static_buffer improvements:
...
* Revise documentation
* Specify exception safety
* Mark more functions noexcept
2018-12-12 19:32:21 -08:00
Vinnie Falco
4fec064ad8
Files return errc::bad_file_descriptor (API Change):
...
fix #1356
* File functions return errc::bad_file_descriptor
instead of errc::invalid_argument.
Actions Required:
* Callers checking for errc::invalid_argument from calls to
file APIs should check for errc::bad_file_descriptor instead.
2018-12-12 19:32:21 -08:00
Vinnie Falco
8262405064
multi_buffer improvements:
...
fix #1345
* Revise documentation
* Add reserve() member
* Add max_size() member
* Add shrink_to_fit() member
* Respect Allocator max_size
* Specify exception safety
2018-12-12 19:32:21 -08:00
Vinnie Falco
11c71d118f
flat_buffer improvements:
...
fix #1345
* Revise documentation
* Add reserve() member
* Add max_size() member
* Respect Allocator max_size
* Specify exception safety
2018-12-12 19:32:21 -08:00
Damian Jarek
34037d538e
Simplify handler_ptr:
...
Replace aligned_union in handler_ptr with the built-in one to reduce
the number of template instantiations and remove the reinterpret_casts
that were required.
Signed-off-by: Damian Jarek <damian.jarek93@gmail.com >
2018-12-02 20:23:18 -08:00
Vinnie Falco
773048c551
Simplify multi_buffer and static_buffer sequences
2018-12-02 17:52:01 -08:00
Vinnie Falco
f995fd41a3
net is a namespace alias for boost::asio:
...
The namespace alias beast::net replaces boost::asio in all code
and documentation.
2018-12-02 17:51:43 -08:00
Vinnie Falco
29cf6ce61f
Dynamic buffers improvements:
...
fix #1305
Applies to:
flat_buffer
flat_static_buffer
multi_buffer
static_buffer
Changes:
* Revised all javadocs
* Move construction does not invalidate in some cases
* non-const data() returns a mutable buffer sequence
* Add cdata() to also return constant readable bytes
* Eligible member functions are declared noexcept
2018-11-30 13:46:56 -08:00
Damian Jarek
836042fd24
Fix test::stream async_result transformation:
...
close #1322
async initiating functions must return init.result.get(). Returning the
result of post caused a compilation failure for custom completion tokens.
Signed-off-by: Damian Jarek <damian.jarek93@gmail.com >
2018-11-26 16:02:44 -08:00
Vinnie Falco
2585625459
Fix static_string uninitialized warning
2018-11-22 08:08:55 -08:00
Damian Jarek
b9eb1d75d9
Fix buffers_cat uninitialized warning
...
Signed-off-by: Damian Jarek <damian.jarek93@gmail.com >
2018-11-22 08:07:10 -08:00
Damian Jarek
d40255b357
Use lean_tuple in buffers_cat
...
Signed-off-by: Damian Jarek <damian.jarek93@gmail.com >
2018-11-21 12:47:38 -08:00
Vinnie Falco
15dd535c24
Use bind_front_handler:
...
The implementation uses bind_front_handler to reduce the
resources consumed when instantiating templates during
compilation.
2018-11-21 12:47:38 -08:00
Vinnie Falco
8962588cec
Fix a spurious gcc warning
2018-11-03 18:43:21 -07:00
Vinnie Falco
30ca9c59d3
Fix uninitialized comparison in buffers iterator
...
fix #1263
2018-11-01 21:10:54 -07:00
luz.paz
f3212eba48
Fix some typos:
...
fix #1255
Found via `codespell -q 3 -L uint,te,tim --skip="./test/extern/zlib*,./example/http/client/crawl*"`
2018-10-07 10:35:12 -07:00
Glen Fernandes
5e98c78951
Use boost::empty_value
...
fix #1233
2018-09-23 10:12:08 -07:00
Vinnie Falco
3f6190e015
Add missing includes
2018-09-18 09:10:42 -07:00
Glen Fernandes
8ed039200d
Use the exchange() idiom in move constructors
...
fix #1203
2018-07-23 09:19:16 -07:00
Vinnie Falco
92d34b9e3b
Use static_cast instead
...
fix #1163
2018-07-15 09:11:15 -07:00
Vinnie Falco
39b014263a
buffers_adapter improvements:
...
* Add value()
* Add value_type
* Add in-place constructor
2018-06-09 21:10:25 -07:00
Vinnie Falco
2c5ed4595a
Fix buffers_prefix iterator decrement
2018-06-09 13:01:30 -07:00
Vinnie Falco
bd3079f5b4
Fix buffers_adapter max_size
2018-06-09 13:01:30 -07:00
Vinnie Falco
da9bb07d12
Fix buffers_adapter iterator value type
2018-06-08 14:01:17 -07:00
Vinnie Falco
0afb380f50
Fix unused variable warning
...
fix #1119
2018-05-18 17:25:56 -07:00
Vinnie Falco
86342dd72b
Use executor_work_guard in composed operations:
...
fix #1076
As per Asio and Networking TS requirements, composed operations must
maintain an object of type executor_work_guard for the executor associated
with the I/O object, for the lifetime of the asynchronous operation.
This is in addition to the requirement for maintaining an object of type
executor_work_guard for the executor associated with the handler.
2018-04-10 08:03:04 -07:00
Vinnie Falco
12cc10f8bb
Revert "Tidy up calls to post()"
...
This reverts commit 5eaa2be85e .
2018-03-22 20:13:39 -07:00
Vinnie Falco
4b0c14fe5a
Use boost::is_convertible as a workaround
2018-03-13 10:47:07 -07:00
Vinnie Falco
5eaa2be85e
Tidy up calls to post()
2018-03-04 13:19:17 -08:00
Vinnie Falco
726118468b
Add asio_handler_invoke overloads for stream algorithms:
...
fix #1012
This fixes a bug where asynchronous stream alogrithms do not
work correctly with the legacy `io_service::strand` implementation.
2018-03-01 08:31:57 -08:00
Vinnie Falco
d79950d95c
DynamicBuffer input areas are not mutable
...
fix #1014
2018-02-21 13:19:14 -08:00
Vinnie Falco
d855bdefd8
Type check completion handlers
...
fix #988
2018-01-26 08:58:19 -08:00
Paul "TBBle" Hampson
0efc246466
Use boost::winapi::GetLastError() consistently:
...
This replaces a few direct calls to ::GetLastError, and also removes a
couple of duplicate calls when the value was already held locally.
2018-01-12 12:30:39 -08:00
Paul "TBBle" Hampson
035248cefb
Use make_error_code for setting an error_code from errc:
...
In Boost.System, `boost::system::errc` is a namespace
containing ints. In C++11, std::errc is an enum marked
as an `error_condition`.
`error_code::assign` is specified as taking an int only,
while make_error_code is able to deal correctly with both forms.
2018-01-12 12:30:39 -08:00
Vinnie Falco
3546eff033
Remove BOOST_VERSION checks
...
fix #722
2018-01-12 12:30:39 -08:00
Damian Jarek
285965d82e
handler_ptr gives the strong exception guarantee (API Change):
...
* The handler_ptr constructor now provides the
strong exception guarantee.
* The signature for managed objects constructed by
`handler_ptr` receives a const reference to the handler.
Actions required:
* Change the constructor signature for state objects
used with handler_ptr to receive a const reference to
the handler.
2017-12-08 10:58:46 -08:00
Damian Jarek
e08132106e
handler_ptr is move-only:
...
It is no longer a reference counted object and now has semantics
close to a std::unique_ptr.
Signed-off-by: Damian Jarek <damian.jarek93@gmail.com >
2017-12-04 13:07:17 -08:00
Damian Jarek
200e898f7e
Don't copy completion handlers:
...
All asynchronous operations will now be able to use move-only
CompletionHandlers.
Signed-off-by: Damian Jarek <damian.jarek93@gmail.com >
2017-12-04 12:14:40 -08:00
Vinnie Falco
eb0cc97e1a
Protect calls from macros
...
fix #918
2017-12-04 12:14:11 -08:00
Vinnie Falco
b59d0a5cd5
Use variant in buffers_cat_view
2017-11-26 12:18:53 -08:00
Sergey M․
8e75ed26d1
Revisit boost library min/max guidance
...
refs #170
2017-11-05 13:03:09 -08:00
Berkus Decker
bea7d6e019
Add BOOST_BEAST_NO_POSIX_FADVISE
2017-10-25 10:17:25 -07:00
Vinnie Falco
6ccc61d940
Fix buffered_read_stream async_read_some signature
2017-10-24 14:26:05 -07:00
Andrey Semashev
ab2a225a9a
Update Boost.WinAPI usage to the new location and namespace.
2017-10-24 13:32:50 -07:00
Vinnie Falco
41e61a7458
Fix executor type compilation
2017-10-24 09:33:29 -07:00