Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/windirstat/llfio.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'attic/doc/generated/class_future.qbk')
-rw-r--r--attic/doc/generated/class_future.qbk114
1 files changed, 114 insertions, 0 deletions
diff --git a/attic/doc/generated/class_future.qbk b/attic/doc/generated/class_future.qbk
new file mode 100644
index 00000000..2a770f7f
--- /dev/null
+++ b/attic/doc/generated/class_future.qbk
@@ -0,0 +1,114 @@
+[/============================================================================
+ Boost.AFIO
+
+ Use, modification and distribution is subject to the Boost Software License,
+ Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at
+ http://www.boost.org/LICENSE_1_0.txt)
+=============================================================================/]
+
+
+[/ Generated by doxygen_xml2qbk 1.1.1, don't change, will be overwritten automatically]
+[/ Generated from doxy/doxygen_output/xml\classboost_1_1afio_1_1future.xml]
+[section:future future]
+'''<?dbhtml-include href="disqus_identifiers/future.html"?>'''
+
+'''<indexterm><primary>future</primary></indexterm>'''
+The future status of a scheduled asynchronous operation.
+
+[heading Description]
+Other than the fact that [^`get()`] returns a [^`T`] and [^`get_handle()`] returns a handle, the errored and excepted state for both is identical and non-consuming for both.
+
+Finally, note that there is a freely available type slice from [^`future<T>`] to [^`future<void>`] which moves/copies only the [^`future<void>`] part of the [^`future<T>`], leaving the [^`T`] behind. This is because the AFIO engine resides behind a stable ABI layer which cannot know anything about arbitrary types, and therefore it accepts only [^`future<void>`]. Equally, this means you can supply a [^`future<T>`] as a precondition to another op safe in the knowledge that any [^`T`] part will remain untouched for later consumption.
+
+[heading Synopsis]
+``template<class T, >
+class future
+{
+ // ...
+};
+``
+
+[heading Template parameter(s)]
+[table
+[[Parameter] [Default] [Description]]
+[[class T] [void] []]
+[[] [] [Any returned result. Note this is defaulted to [^`void`] for you, so usually you write [^`future<>`]. As of v1.4 of the AFIO engine, the legacy [^`async_io_op`] struct has been replaced with this custom future type based on the lightweight future-promise factory toolkit in forthcoming Boost.Monad. This custom future type consists of two pieces of future data each with different semantics:A [^`handle_ptr`] retrieved using [^`get_handle()`], [^`operator*`] and [^`operator->`] - this is the shared i/o handle returned by the asynchronous operation. This has non-consuming semantics i.e. you can call [^`get_handle()`] as many times as you like. Note that for legacy compatibility reasons, calling [^`get_handle()`] on an invalid instance returns a null shared pointer instead of an exception throw.If T is non-void, any type [^`T`] - this is any additional data returned by an asynchronous operation above and beyond the i/o handle (e.g. [^`enumerate()`] returns a [^`std::pair<std::vector<``directory_entry``>, bool>`]. This has ['consuming] semantics, so calling [^`get()`] returns the result exactly once.]]
+]
+
+[heading Constructor(s)]
+[table
+[[Function] [Description] [Parameters] ]
+[[``future()``
+
+] [] [
+
+]]
+[[``future(dispatcher * parent, size_t id, shared_future< handle_ptr > handle,
+ stl_future< T > result, bool check_handle = true, bool validate = true)``
+
+] [] [[* dispatcher *]: ['parent]: The dispatcher this op belongs to.
+
+[* size_t]: ['id]: The unique non-zero id of this op.
+
+[* shared_future< handle_ptr >]: ['handle]: A shared_future to shared state between all instances of this reference.
+
+[* stl_future< T >]: ['result]: A future to any result from the operation.
+
+[* bool]: ['check_handle]: Whether to have validation additionally check if a handle is not null
+
+[* bool]: ['validate]: Whether to check the inputs and shared state for valid (and not errored) values
+
+
+
+]]
+[[``future(future< void > && o, stl_future< T > && result)``
+
+] [] [[* future< void > &&]: ['o]: The future<void>
+
+[* stl_future< T > &&]: ['result]: The future<T> to add
+
+
+
+]]
+]
+
+[heading Member Function(s)]
+[table
+[[Function] [Description] [Parameters] [Returns]]
+[[``bool valid(bool just_handle = false)``
+
+] [True if this future is valid. ] [[* bool]: ['just_handle]:
+
+
+
+][
+
+]
+]
+[[``T get()``
+
+] [Waits for the future to become ready, returning any value or rethrowing any exception found. Throws a [^`future_errc::no_state`] if this future is invalid. ] [
+
+][
+
+]
+]
+[[``template<class U>
+auto then(U && f)``
+
+] [Schedules a callable to be invoked after this future becomes ready. If this future is null, use the current async file i/o dispatcher. ] [[* U &&]: ['f]:
+
+
+
+][
+
+]
+]
+]
+
+[heading Header]
+`#include <boost/afio/v2/afio.hpp>`
+
+'''<?dbhtml-include href="disqus_comments.html"?>'''
+[endsect]
+