From dc2493e7525bb7633f697ef10f72b72b46222249 Mon Sep 17 00:00:00 2001 From: Andy Belle-Isle Date: Fri, 30 Aug 2019 00:45:36 -0400 Subject: Forget what I said, I just need to change git attributes to mark for vendor --- lib/sol2/docs/source/api/as_args.rst | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) create mode 100644 lib/sol2/docs/source/api/as_args.rst (limited to 'lib/sol2/docs/source/api/as_args.rst') diff --git a/lib/sol2/docs/source/api/as_args.rst b/lib/sol2/docs/source/api/as_args.rst new file mode 100644 index 0000000..36fe5c1 --- /dev/null +++ b/lib/sol2/docs/source/api/as_args.rst @@ -0,0 +1,25 @@ +as_args +======= +*turn an iterable argument into multiple arguments* + + +.. code-block:: cpp + + template + struct as_args_t { ... }; + + template + as_args_t as_args( T&& ); + + +``sol::as_args`` is a function that that takes an iterable and turns it into multiple arguments to a function call. It forwards its arguments, and is meant to be used as shown below: + + +.. literalinclude:: ../../../examples/source/args_from_container.cpp + :caption: args_from_container.cpp + :name: args-from-container + :linenos: + +It is basically implemented as a `one-way customization point`_. For more information about customization points, see the :doc:`tutorial on how to customize sol to work with your types<../tutorial/customization>`. + +.. _one-way customization point: https://github.com/ThePhD/sol2/blob/develop/sol/as_args.hpp -- cgit v1.2.3