Vinnie Falco
5149cf8495
Add drain_buffer class
...
fix #457
2017-07-20 08:12:19 -07:00
Vinnie Falco
23863230de
flat_buffer is an AllocatorAwareContainer
...
fix #453
2017-07-20 08:12:19 -07:00
Vinnie Falco
7b56f352b4
Add construct, destroy to handler_alloc
...
fix #432
2017-07-20 08:12:19 -07:00
Vinnie Falco
196d9c60fa
multi_buffer implementation change (API Change):
...
fix #440
WARNING
multi_buffer constructor now takes a maximum size instead of the
"allocation size". This is a breaking change. The allocation size
feature is removed. To update calling code, remove the allocation
size parameter from call sites.
* multi_buffer now uses a geometric growth algorithm for better performance.
2017-07-20 08:12:19 -07:00
Vinnie Falco
7952578e1d
Tune up static_buffer (API Change):
...
The static buffer is updated:
* reset() is no longer a member. Use b.consume(b.size()) instead.
* Simplified implementaton, uses asio instead of custom types
* Better stream performance: consuming the input makes room
available in the output. This class is now suitable for
HTTP reads.
These changes permit the static_buffer wrapper to adapt a user
memory buffer if desired, including a stack based array.
The static_buffer_n class may also be used for this purpose,
it comes with its own storage.
2017-07-20 08:12:19 -07:00
Vinnie Falco
96131eb243
Add missing handler_alloc nested types
...
fix #432
2017-07-20 08:12:18 -07:00
Vinnie Falco
943830f6ed
Fields concept work
2017-07-20 08:12:18 -07:00
Vinnie Falco
b38f8260b8
Add HEAD request example
2017-07-20 08:12:18 -07:00
Vinnie Falco
12c7c24e5a
Use <iosfwd> instead of <ostream>
2017-07-20 08:12:18 -07:00
Vinnie Falco
d3049fa03b
Documentation work
2017-07-20 08:12:18 -07:00
Vinnie Falco
5c46845208
Documentation work
2017-07-20 08:12:18 -07:00
Vinnie Falco
8a22350119
Tidy up traits
...
fix #406
2017-07-20 08:12:18 -07:00
Vinnie Falco
4b158e45ba
Remove detail::sync_ostream
...
fix #418
2017-07-20 08:12:18 -07:00
Vinnie Falco
9ab9f09189
Make buffer_prefix_view public
...
fix #408
2017-07-20 08:12:18 -07:00
Vinnie Falco
982d20001f
Rename to buffer_cat_view (API Change)
...
fix #408
2017-07-20 08:12:18 -07:00
Vinnie Falco
afab639532
Fix leak in basic_flat_buffer
2017-07-20 08:12:17 -07:00
Vinnie Falco
02d5aedc29
Refactor HTTP serialization and parsing (API Change):
...
fix #404
Parsing and serialization interfaces have been fine tuned and unified.
For parsing these stream operations are defined:
* read
* read_header
* read_some
* async_read
* async_read_header
* async_read_some
For serialization these stream operations are defined:
* write
* write_header
* write_some
* async_write
* async_write_header
* async_write_some
2017-07-20 08:12:17 -07:00
Vinnie Falco
b76eb2864e
buffer_size overload for basic_multi_buffer::const_buffers_type
2017-07-20 08:12:17 -07:00
Vinnie Falco
75b0571e83
Refactor type_traits (API Change):
...
fix #373
* concepts.hpp is renamed to type_traits.hpp
* Body reader and writer concepts are renamed
2017-07-20 08:12:17 -07:00
Vinnie Falco
4ed6a7fe21
Disable reverse_iterator buffer_view test
2017-07-20 08:12:17 -07:00
Vinnie Falco
056bf5ff99
buffer_view skips empty buffer sequences
2017-07-20 08:12:17 -07:00
Vinnie Falco
f0349efddc
Workaround for boost::asio::basic_streambuf type check
2017-07-20 08:12:17 -07:00
Vinnie Falco
2b18193f7d
Make buffers_adapter meet requirements
...
fix #386
2017-07-20 08:12:17 -07:00
Vinnie Falco
7c47668cbb
Tidy up is_dynamic_buffer traits test
2017-07-20 08:12:17 -07:00
Vinnie Falco
600f6da5a3
Fix async return values in docs
2017-07-20 08:12:17 -07:00
Vinnie Falco
24fd5ec8af
Use BOOST_STATIC_ASSERT
...
fix #380
2017-07-20 08:12:17 -07:00
Vinnie Falco
02033c7412
Tidy up and make get_lowest_layer public
...
fix #379
2017-07-20 08:12:17 -07:00
Vinnie Falco
e86ca5d66b
Require Boost 1.58 or later
2017-07-20 08:12:17 -07:00
Vinnie Falco
929174d4d8
Tidy up read_size_helper and dynamic buffers
...
fix #376
2017-07-20 08:12:17 -07:00
Vinnie Falco
3543b4b913
Use BOOST_THROW_EXCEPTION
...
fix #370
2017-07-20 08:12:17 -07:00
Vinnie Falco
39697ea37f
Additional constructors for consuming_buffers
2017-07-20 08:12:17 -07:00
Vinnie Falco
b76d19c3cb
Tidy up buffer_prefix overloads and test
2017-07-20 08:12:17 -07:00
Vinnie Falco
000349ba23
Fix strict aliasing warnings in buffers_view
2017-07-20 08:12:17 -07:00
Vinnie Falco
9e16e24ec4
Make buffers_view a public interface
2017-07-20 08:12:17 -07:00
Vinnie Falco
4332844d89
Fix javadoc typo
2017-07-20 08:12:17 -07:00
Vinnie Falco
71e4fbe428
Remove handler helpers, tidy up hook invocations (API Change)
2017-07-20 08:12:17 -07:00
Vinnie Falco
68a0f3af4f
Rename prepare_buffer(s) to buffer_prefix (API Change)
2017-07-20 08:12:17 -07:00
Vinnie Falco
51f11f0902
Concept revision and documentation (API Change):
...
The concept type traits are renamed for consistency,
and consolidated into a single header file <beast/core/type_traits.hpp>
A new section, Core Concepts, is added to the documentation describing all
of the core utility classes and functions. This also includes a complete
explanation and sample program describing how to write asynchronous initiation
functions and their associated composed operations.
2017-07-20 08:12:16 -07:00
Vinnie Falco
aa8a0a2a4b
Replace asynchronous helper macros with template aliases (API Change)
2017-07-20 08:12:16 -07:00
Vinnie Falco
043386aeb3
Move prepare_buffers to prepare_buffer.hpp (API Change)
...
fix #338
2017-07-20 08:12:16 -07:00
Vinnie Falco
7d8e40537a
Remove placeholders (API Change)
2017-07-20 08:12:16 -07:00
Vinnie Falco
761e005fd6
Fix basic_streambuf movable trait
2017-07-20 08:12:16 -07:00
Vinnie Falco
f097f401cb
Consolidate get_lowest_layer in type_traits.hpp
...
fix #347
2017-07-20 08:12:16 -07:00
Vinnie Falco
4edd797611
Add to_static_string:
...
This function converts integers to their decimal
representation as a static string.
In addition, static_string::resize no longer initializes
characters if the new size is larger.
2017-07-20 08:12:16 -07:00
Vinnie Falco
140bf5cb1d
ostream workaround for gcc 4.8.4
2017-07-20 08:12:16 -07:00
Vinnie Falco
5c9e6c0fc0
Increase ostream test coverage
2017-07-20 08:12:16 -07:00
Vinnie Falco
d9562ff525
Harmonize concepts and identifiers with net-ts (API Change):
...
fix #321
This synchronizes identifier names and some implementation details
with the Networking-TS document and reference implementation.
The following interfaces have changed:
* async_completion
* is_buffer_sequence (removed)
* is_const_buffer_sequence (was is_ConstBufferSequence)
* is_dynamic_buffer (was is_DynamicBuffer)
* is_mutable_buffer_sequence (was is_MutableBufferSequence)
* async_result (new)
* BEAST_HANDLER_TYPE macro (new)
* BEAST_INITFN_RESULT_TYPE macro (new)
Filename changes:
* async_result.hpp (was async_completion.hpp)
2017-07-20 08:12:16 -07:00
Vinnie Falco
84ece031f2
Use beast::string_view alias
2017-07-20 08:12:16 -07:00
Vinnie Falco
fc0e356149
Rename to buffered_read_stream (API Change):
...
dynabuf_readstream is renamed to buffered_read_stream.
2017-07-20 08:12:16 -07:00
Vinnie Falco
aa9f42cd06
Rename to static_buffer, static_buffer_n (API Change):
...
These classes are renamed:
* static_streambuf to static_buffer
* static_streambuf_n to static_buffer_n
2017-07-20 08:12:16 -07:00