|
From: Frank M. H. <fm...@us...> - 2007-02-20 21:34:48
|
Update of /cvsroot/boost-sandbox/boost-sandbox/libs/signals/doc/reference In directory sc8-pr-cvs3.sourceforge.net:/tmp/cvs-serv30550/reference Modified Files: signal_header.xml Log Message: Updated signalN reference to reflect changes for thread-safety. Index: signal_header.xml =================================================================== RCS file: /cvsroot/boost-sandbox/boost-sandbox/libs/signals/doc/reference/signal_header.xml,v retrieving revision 1.1 retrieving revision 1.2 diff -u -d -r1.1 -r1.2 --- signal_header.xml 7 Feb 2007 01:22:17 -0000 1.1 +++ signal_header.xml 20 Feb 2007 21:34:45 -0000 1.2 @@ -28,8 +28,10 @@ <template-type-parameter name="SlotFunction"> <default><classname>functionN</classname><R, T1, T2, ..., TN></default> </template-type-parameter> + <template-type-parameter name="ThreadingModel"> + <default><classname>signals::single_threaded</classname></default> + </template-type-parameter> </template> - <inherit access="public"><classname>signals::trackable</classname></inherit> <inherit access="private"> <type><classname>noncopyable</classname></type> <purpose>Exposition only</purpose> @@ -37,7 +39,7 @@ <purpose>Set of safe multicast callback types.</purpose> - <description> + <description> <para>The class template <classname>signalN</classname> covers several related classes signal0, signal1, signal2, etc., where the number suffix describes the number of function @@ -152,7 +154,7 @@ <throws><simpara>This routine meets the strong exception guarantee, where any exception thrown will cause the slot to not be - connected to the signal.</simpara></throws> + connected to the signal.</simpara></throws> <complexity><simpara>Constant time when connecting a slot without a group name or logarithmic in the number of groups @@ -196,7 +198,7 @@ number of slots connected to the signal.</simpara></complexity> </overloaded-method> - + <method name="disconnect_all_slots"> <type>void</type> <effects><simpara>Disconnects all slots connected to the signal.</simpara></effects> @@ -257,7 +259,7 @@ <parameter><paramtype>...</paramtype></parameter> <parameter name="aN"><paramtype>argN_type</paramtype></parameter> </signature> - + <signature cv="const"> <type>result_type</type> <parameter name="a1"><paramtype>arg1_type</paramtype></parameter> @@ -296,27 +298,31 @@ invoke the combiner as non-<computeroutput>const</computeroutput>.</simpara> - <simpara>Calling the function call operator may invoke undefined - behavior if no slots are connected to the signal, depending - on the combiner used. The default combiner is well-defined - for zero slots when the return type is void but is undefined - when the return type is any other type (because there is no + <simpara>Calling the function call operator may throw an + exception if no slots are connected to the signal, depending + on the combiner used. The default combiner will not throw + for zero slots when the return type is <code>void</code> or + <code>boost::optional<T></code>, + but will throw when the return type is any other type (because there is no way to synthesize a return value).</simpara></notes> </overloaded-method> </method-group> <method-group name="combiner access"> - <overloaded-method name="combiner"> - <signature> - <type>combiner_type&</type> - </signature> - <signature cv="const"> - <type>const combiner_type&</type> - </signature> + <method name="combiner" cv="const"> + <type>combiner_type</type> - <returns><simpara>A reference to the stored combiner.</simpara></returns> + <returns><simpara>A copy of the stored combiner.</simpara></returns> <throws><simpara>Will not throw.</simpara></throws> - </overloaded-method> + </method> + <method name="set_combiner"> + <type>void</type> + <parameter name="combiner"><paramtype>const combiner_type&</paramtype></parameter> + + <effects><simpara>Copies a new combiner into the signal for use with + future signal invocations.</simpara></effects> + <throws><simpara>Will not throw.</simpara></throws> + </method> </method-group> </class> @@ -350,7 +356,7 @@ type with N arguments instead of N separate arguments, and derives from the appropriate <classname>signalN</classname> instantiation.</para> - + <para>All functionality of this class template is in its base class <classname>signalN</classname>.</para> </description> |