Commit Graph

102 Commits

Author SHA1 Message Date
Frank Mori Hess
46fb80dc3e Added test for deconstruct on a class derived from enable_shared_from_this.
[SVN r51036]
2009-02-05 20:57:09 +00:00
Frank Mori Hess
281fc012bd Added checks for double postconstructs.
[SVN r51033]
2009-02-05 19:54:39 +00:00
Frank Mori Hess
a266d6c1d4 Fixed return type for 0 argument and variadic deconstruct overloads.
[SVN r50968]
2009-02-02 16:51:18 +00:00
Frank Mori Hess
2a4c44e298 Reworked deconstruct<>() so it operates non-intrusively via
argument-dependent lookup instead of needing postconstructible
and predestructible base classes.  Also added support for
passing arguments to postconstructors.



[SVN r50938]
2009-02-01 01:12:03 +00:00
Frank Mori Hess
cb96c616ba Added missing include of bind.hpp.
[SVN r50914]
2009-01-30 21:02:12 +00:00
Frank Mori Hess
d04da18498 Got rid of non-portable __PRETTY_FUNCTION__.
[SVN r50913]
2009-01-30 21:01:58 +00:00
Frank Mori Hess
deacb19005 Added test of passing template type parameters through signal_type
positionally.



[SVN r50786]
2009-01-26 16:17:55 +00:00
Frank Mori Hess
010067e800 Added test of signature_type keyword.
[SVN r50784]
2009-01-26 15:32:29 +00:00
Frank Mori Hess
2d2d242d2a Added signal_type metafunction which uses Boost.Parameter
to enable named template type parameters when
declarng signals.


[SVN r50747]
2009-01-23 16:14:14 +00:00
Frank Mori Hess
bbc093ae4d Added boost::signals2::deconstruct, which is similar to boost::make_shared
except with postconstructible/predestructible support.  All overloads of
deconstruct may be made a friend by making 
boost::signals2::deconstruct_access a friend.



[SVN r50642]
2009-01-16 20:55:42 +00:00
Frank Mori Hess
716314fa7e Tweaked a test slightly to test shared_connection_block::unblock()
method.



[SVN r50597]
2009-01-14 20:44:44 +00:00
Frank Mori Hess
d56dcc3ec0 Brought back trackable class, to ease porting of existing
single-threaded code from Boost.Signals to Boost.Signals2.



[SVN r50579]
2009-01-14 16:58:30 +00:00
Frank Mori Hess
7af3bd4891 Added test for boost::signals2::dummy_mutex.
[SVN r50576]
2009-01-14 16:46:41 +00:00
Frank Mori Hess
467e922fd8 Made mutex_test slightly less likely to deadlock in the
event of test failure.



[SVN r50566]
2009-01-13 19:49:57 +00:00
Frank Mori Hess
f21dc3c4bb Added test program for boost::signals2::mutex, based on
libs/thread/test/test_mutex.cpp.


[SVN r50565]
2009-01-13 19:45:02 +00:00
Frank Mori Hess
b1deb11868 Added test of tracking a null but not empty shared_ptr.
[SVN r50318]
2008-12-18 22:03:52 +00:00
Frank Mori Hess
ea200f05f3 Added comparison benchmark between Boost.Signals and Signals2.
[SVN r50251]
2008-12-12 21:19:53 +00:00
Frank Mori Hess
4e5ff310ae Fixed bug in default ExtendedSlotFunction template type parameter
for preferred syntax signals2::signal.  Added test code for
extended slots to signal_test.



[SVN r49593]
2008-11-04 21:03:16 +00:00
Frank Mori Hess
50c3420bb5 Added extended_slot_type and connect_extended() to signal classes.
[SVN r49182]
2008-10-08 18:11:22 +00:00
Frank Mori Hess
88dfed5d71 Made shared_connection_block take a const reference to a signal.
This is more consistent since connection::disconnect is a const method.


[SVN r49152]
2008-10-06 20:13:58 +00:00
Frank Mori Hess
2786ebc21c Test auto tracking of signal wrapped in a reference_wrapper.
[SVN r49117]
2008-10-02 18:20:05 +00:00
Frank Mori Hess
37414f5597 Brought back slot self-disconnection via throwing expired_slot, as it's the
only thread-safe way for a slot to disconnect itself.



[SVN r49102]
2008-10-02 01:34:35 +00:00
Frank Mori Hess
322cf4fee9 Added test to make sure slot.hpp can compile on its
own, and added missing include so it passes.



[SVN r49082]
2008-10-01 15:11:00 +00:00
Frank Mori Hess
4ba9db8e27 Added signals2::optional_last_value, and made it the default
combiner for signals.  It is preferrable to last_value since it
never throws.


[SVN r49076]
2008-09-30 20:28:23 +00:00
Frank Mori Hess
ec235baa99 Changed signal type to portable syntax so test will run on older compilers.
[SVN r49073]
2008-09-30 19:12:22 +00:00
Frank Mori Hess
bfd79d94a1 Simplified behavior of scoped_connection::release. Removed swaps
for scoped_connection since the base class swaps work fine for
scoped_connection too now.


[SVN r49068]
2008-09-30 15:35:42 +00:00
Frank Mori Hess
4cbb8f8f91 Combiners don't have to catch expired_slot anymore.
[SVN r49035]
2008-09-29 20:31:51 +00:00
Frank Mori Hess
69e80f4fce Fixed compile error.
[SVN r49004]
2008-09-29 15:12:52 +00:00
Frank Mori Hess
87c9cf74fd Tweaked interface of connection_body_base a bit. Added free swap functions
for connection classes.  Added scoped_connection::release.  Made
scoped_connection noncopyable.


[SVN r49003]
2008-09-29 15:05:04 +00:00
Frank Mori Hess
e85d12b2c2 Updated test to reflect ThreadingModel->Mutex template type parameter
change in API.



[SVN r48954]
2008-09-24 19:46:33 +00:00
Frank Mori Hess
4f5e801a41 Fixed up header comments
[SVN r48945]
2008-09-24 14:48:26 +00:00
Frank Mori Hess
a712ce3a9b Added small test program for deconstruct_ptr and friends.
[SVN r48943]
2008-09-24 14:40:44 +00:00
Frank Mori Hess
d8de489212 Moved everything into signals2 namespace. Moved headers
accordingly to conform with boost policy.  Have not
updated documentation to reflect changes yet.


[SVN r48932]
2008-09-23 20:23:22 +00:00
Frank Mori Hess
6a2d77de69 Added a very basic test of using non-default threading models.
[SVN r44099]
2008-04-07 17:53:55 +00:00
Frank Mori Hess
ffdba806c6 Added test for problem with signalslib::detail::grouped_list
copy construction.



[SVN r43562]
2008-03-11 15:10:07 +00:00
Frank Mori Hess
ac8bf068e5 Added regression test for re-assignment of scoped_connection.
[SVN r43557]
2008-03-10 20:58:35 +00:00
Frank Mori Hess
fe1cfb0afa Added a new little test program for adding test for bugs as they
are discovered/fixed.



[SVN r43431]
2008-02-28 19:58:18 +00:00
Frank Mori Hess
139366ab4a Modified track_test to correctly test automatic disconnection of
signal used as slot, without explicit tracking.



[SVN r43426]
2008-02-27 20:04:23 +00:00
Frank Mori Hess
087da776e9 Added support for tracking signal objects. Moved signal_base out
of detail namespace, since it is used as an argument in a public
method now.  Fixed track_test.cpp to use new signal tracking
method.


[SVN r42446]
2008-01-03 22:10:00 +00:00
Frank Mori Hess
406d7aaa08 Restored Doug's copyright line that must have been accidentally deleted.
[SVN r39521]
2007-09-25 13:52:55 +00:00
Frank Mori Hess
436c0aa818 We can't explicitly track signals, except in the normal way with
shared_ptr.


[SVN r3777]
2007-03-13 17:38:37 +00:00
Frank Mori Hess
dd5e39db65 Test explicit slot-to-slot tracking.
[SVN r3758]
2007-03-05 14:51:26 +00:00
Frank Mori Hess
84dd05468f Made slots throw bad_weak_ptr when called with expired tracked
objects.  Combiners now have to catch bad_weak_ptr exceptions
thrown on slot iterator dereference.  Tracking works automatically
now for slots that call other slots.


[SVN r3756]
2007-03-02 22:04:47 +00:00
Frank Mori Hess
61a18d5ac0 Got rid of signalslib::connection::block() and unblock() and replaced
them with exception-safe signalslib::shared_connection_block() class.
The new way is also more useable in a multi-threaded context, since
it prevents one thread from unexpectedly unblocking a
connection that another thread wants blocked.


[SVN r3754]
2007-03-02 16:00:39 +00:00
Frank Mori Hess
907cf1e513 Added little benchmark program
[SVN r3750]
2007-02-28 20:49:36 +00:00
Frank Mori Hess
fc5da3c9af Altered tests to account for changes from signals to thread_safe_signals.
[SVN r3748]
2007-02-28 19:44:09 +00:00
Frank Mori Hess
e6dd4d2c44 Added test programs from boost/libs/signals/test
[SVN r3746]
2007-02-28 19:16:04 +00:00
Frank Mori Hess
724e89c855 My problems with bind syntactic sugar appear to be a compiler bug after
all.  The errors go away with gcc 4.1.2


[SVN r3744]
2007-02-28 17:08:12 +00:00
Frank Mori Hess
877777b79f Fixed tracking of signals as slots, and added a test for same.
[SVN r3742]
2007-02-28 16:19:41 +00:00
Frank Mori Hess
bef2bfc4fb Added some templated copy constructors to slot class, to prevent
loss of tracking on copy construction.


[SVN r3741]
2007-02-28 15:54:22 +00:00
Frank Mori Hess
a24b8410bf Make tracking of double argument less meaningless by passing reference
instead of copy.


[SVN r3739]
2007-02-27 22:24:33 +00:00
Frank Mori Hess
a7d581107b Added Signature template parameter to slot class, so that an
operator() could be added.  Bind can be used to bind together
slots with different signatures now.  Added some syntactic
sugar to slot constructors, so a bind() call is inserted automatically
for the constructors that take more than one argument.
All tracking for automatic connection
management is now done through slot::track().
Added track_test.cpp test program, which tests some of the new
functionality.


[SVN r3738]
2007-02-27 21:19:25 +00:00