Commit graph

407 commits

Author SHA1 Message Date
clitte_bbt
1e3c460b3c Adding a bit of documentation.
git-svn-id: svn://svn.code.sf.net/p/loki-lib/code/trunk@793 7ec92016-0320-0410-acc4-a06ded1c099a
2006-12-17 16:43:55 +00:00
clitte_bbt
10f1b011c6 Integration of SmartPointer encapsulation policy for CachedFactory.
Once the smart pointer goes out of scope, the object is automatically returned to the Cache.

git-svn-id: svn://svn.code.sf.net/p/loki-lib/code/trunk@792 7ec92016-0320-0410-acc4-a06ded1c099a
2006-12-17 14:59:06 +00:00
rich_sposato
97e1fd6b59 Moved Locker class out of LockedStorage to accomodate GCC compiler.
git-svn-id: svn://svn.code.sf.net/p/loki-lib/code/trunk@791 7ec92016-0320-0410-acc4-a06ded1c099a
2006-12-15 01:36:29 +00:00
rich_sposato
6eabeea489 Added documentation comments for LockedStorage policy.
git-svn-id: svn://svn.code.sf.net/p/loki-lib/code/trunk@790 7ec92016-0320-0410-acc4-a06ded1c099a
2006-11-29 19:16:39 +00:00
clitte_bbt
3b3153fd32 Using "using" in a header could lead to error in client code.
git-svn-id: svn://svn.code.sf.net/p/loki-lib/code/trunk@789 7ec92016-0320-0410-acc4-a06ded1c099a
2006-11-27 20:45:39 +00:00
clitte_bbt
325c79f896 Making old and new Factory code more coherent.
git-svn-id: svn://svn.code.sf.net/p/loki-lib/code/trunk@788 7ec92016-0320-0410-acc4-a06ded1c099a
2006-11-24 22:30:54 +00:00
syntheticpp
b072da9f73 clock/clock_t are not in std:: on msvc, fix wrong type of pure virtual functions
git-svn-id: svn://svn.code.sf.net/p/loki-lib/code/trunk@787 7ec92016-0320-0410-acc4-a06ded1c099a
2006-11-22 22:56:46 +00:00
clitte_bbt
7dc499a4e1 Adding several const, assert, and small optimizations
git-svn-id: svn://svn.code.sf.net/p/loki-lib/code/trunk@785 7ec92016-0320-0410-acc4-a06ded1c099a
2006-11-21 20:31:27 +00:00
rich_sposato
eb92853ac1 Added LockedStorage policy for feature 1441024.
git-svn-id: svn://svn.code.sf.net/p/loki-lib/code/trunk@783 7ec92016-0320-0410-acc4-a06ded1c099a
2006-11-21 01:34:45 +00:00
rich_sposato
d560a3f491 Made Lock and Unlock functions public.
git-svn-id: svn://svn.code.sf.net/p/loki-lib/code/trunk@782 7ec92016-0320-0410-acc4-a06ded1c099a
2006-11-21 01:32:26 +00:00
clitte_bbt
1ecc9448b9 Added caution about accuracy of the std::clock() function of RateLimitedPolicy under linux and Cygwin environnement.
git-svn-id: svn://svn.code.sf.net/p/loki-lib/code/trunk@781 7ec92016-0320-0410-acc4-a06ded1c099a
2006-11-20 23:43:08 +00:00
syntheticpp
1a98988134 fix compiler error on the SUN, hope no compiler defines a upper case letter, thanks to Rob Yull
git-svn-id: svn://svn.code.sf.net/p/loki-lib/code/trunk@777 7ec92016-0320-0410-acc4-a06ded1c099a
2006-11-09 13:26:08 +00:00
syntheticpp
9f8c7ea485 also produce a verbose error message with gcc, make the macro more readable
git-svn-id: svn://svn.code.sf.net/p/loki-lib/code/trunk@776 7ec92016-0320-0410-acc4-a06ded1c099a
2006-11-09 13:12:57 +00:00
rich_sposato
92daa47cbd Added comment explaining why ObjectLevelLockable policy does not work for singletons.
git-svn-id: svn://svn.code.sf.net/p/loki-lib/code/trunk@774 7ec92016-0320-0410-acc4-a06ded1c099a
2006-11-03 00:52:31 +00:00
clitte_bbt
228666b49c Added Doxygen documentation
git-svn-id: svn://svn.code.sf.net/p/loki-lib/code/trunk@771 7ec92016-0320-0410-acc4-a06ded1c099a
2006-10-27 18:05:03 +00:00
syntheticpp
6060322298 Loki:: is now part of the macro
git-svn-id: svn://svn.code.sf.net/p/loki-lib/code/trunk@770 7ec92016-0320-0410-acc4-a06ded1c099a
2006-10-26 15:36:20 +00:00
syntheticpp
8f7c3b42d7 ove macro values into Loki namespace
git-svn-id: svn://svn.code.sf.net/p/loki-lib/code/trunk@769 7ec92016-0320-0410-acc4-a06ded1c099a
2006-10-26 10:58:19 +00:00
syntheticpp
f643f9a5d8 use recursive definition, it's more standard conform
git-svn-id: svn://svn.code.sf.net/p/loki-lib/code/trunk@768 7ec92016-0320-0410-acc4-a06ded1c099a
2006-10-25 20:40:40 +00:00
clitte_bbt
07d6c5d61f Added Doxygen documentation
git-svn-id: svn://svn.code.sf.net/p/loki-lib/code/trunk@767 7ec92016-0320-0410-acc4-a06ded1c099a
2006-10-22 22:28:24 +00:00
syntheticpp
37f2743043 add empty definition to NeverMatched, the AIX compiler needs it, Thanks to Dieter Rosch
git-svn-id: svn://svn.code.sf.net/p/loki-lib/code/trunk@766 7ec92016-0320-0410-acc4-a06ded1c099a
2006-10-20 10:12:15 +00:00
syntheticpp
4c6d670e3d remove injected friends. Thanks to SIGOURE Benoit
git-svn-id: svn://svn.code.sf.net/p/loki-lib/code/trunk@765 7ec92016-0320-0410-acc4-a06ded1c099a
2006-10-18 13:55:32 +00:00
syntheticpp
b831f56c1f subversion uses $ instead of $
git-svn-id: svn://svn.code.sf.net/p/loki-lib/code/trunk@754 7ec92016-0320-0410-acc4-a06ded1c099a
2006-10-17 19:59:11 +00:00
syntheticpp
d7111eb063 subversion uses $ instead of $
git-svn-id: svn://svn.code.sf.net/p/loki-lib/code/trunk@751 7ec92016-0320-0410-acc4-a06ded1c099a
2006-10-17 19:50:37 +00:00
syntheticpp
3a9f56e73f subversion uses $ instead of $
git-svn-id: svn://svn.code.sf.net/p/loki-lib/code/trunk@750 7ec92016-0320-0410-acc4-a06ded1c099a
2006-10-17 19:50:02 +00:00
syntheticpp
7a5fd28c6f subversion uses $ instead of $
git-svn-id: svn://svn.code.sf.net/p/loki-lib/code/trunk@749 7ec92016-0320-0410-acc4-a06ded1c099a
2006-10-17 19:49:26 +00:00
syntheticpp
6ff056624a subversion uses $ instead of $
git-svn-id: svn://svn.code.sf.net/p/loki-lib/code/trunk@748 7ec92016-0320-0410-acc4-a06ded1c099a
2006-10-17 19:49:08 +00:00
syntheticpp
ea94f38878 subversion uses $ instead of $
git-svn-id: svn://svn.code.sf.net/p/loki-lib/code/trunk@747 7ec92016-0320-0410-acc4-a06ded1c099a
2006-10-17 19:48:40 +00:00
syntheticpp
53243f77ea there is no $ with subversion
git-svn-id: svn://svn.code.sf.net/p/loki-lib/code/trunk@746 7ec92016-0320-0410-acc4-a06ded1c099a
2006-10-17 19:31:51 +00:00
syntheticpp
63328b1193 there is no $ with subversion
git-svn-id: svn://svn.code.sf.net/p/loki-lib/code/trunk@745 7ec92016-0320-0410-acc4-a06ded1c099a
2006-10-17 19:31:33 +00:00
syntheticpp
4c1720434a there is no $ with subversion
git-svn-id: svn://svn.code.sf.net/p/loki-lib/code/trunk@744 7ec92016-0320-0410-acc4-a06ded1c099a
2006-10-17 19:31:12 +00:00
syntheticpp
4c5836a543 there is no $ with subversion
git-svn-id: svn://svn.code.sf.net/p/loki-lib/code/trunk@743 7ec92016-0320-0410-acc4-a06ded1c099a
2006-10-17 19:30:40 +00:00
syntheticpp
24cf84a05f there is no $ with subversion
git-svn-id: svn://svn.code.sf.net/p/loki-lib/code/trunk@742 7ec92016-0320-0410-acc4-a06ded1c099a
2006-10-17 19:30:16 +00:00
syntheticpp
65f4f22526 use svn:keywords Id only
git-svn-id: svn://svn.code.sf.net/p/loki-lib/code/trunk@741 7ec92016-0320-0410-acc4-a06ded1c099a
2006-10-17 18:48:47 +00:00
syntheticpp
be4cbd4c33 add svn:keywords Author Date HeadURL
git-svn-id: svn://svn.code.sf.net/p/loki-lib/code/trunk@740 7ec92016-0320-0410-acc4-a06ded1c099a
2006-10-17 18:32:42 +00:00
syntheticpp
092052ee93 svn propdel svn:executable -R *
git-svn-id: svn://svn.code.sf.net/p/loki-lib/code/trunk@739 7ec92016-0320-0410-acc4-a06ded1c099a
2006-10-17 18:16:19 +00:00
syntheticpp
7ef521abea remove obsolete folder noncc, it's still available in older releases
git-svn-id: svn://svn.code.sf.net/p/loki-lib/code/trunk@738 7ec92016-0320-0410-acc4-a06ded1c099a
2006-10-17 18:04:15 +00:00
syntheticpp
383fab624c change line ending
git-svn-id: svn://svn.code.sf.net/p/loki-lib/code/trunk@735 7ec92016-0320-0410-acc4-a06ded1c099a
2006-10-17 10:39:29 +00:00
syntheticpp
e337788cc5 change line ending
git-svn-id: svn://svn.code.sf.net/p/loki-lib/code/trunk@734 7ec92016-0320-0410-acc4-a06ded1c099a
2006-10-17 10:36:45 +00:00
syntheticpp
812423e188 workaround for broken msvc/gcc: template friends with template template parameters
git-svn-id: svn://svn.code.sf.net/p/loki-lib/code/trunk@732 7ec92016-0320-0410-acc4-a06ded1c099a
2006-10-17 10:06:58 +00:00
syntheticpp
56c73cd3bc fix wrong friend declaration
git-svn-id: svn://svn.code.sf.net/p/loki-lib/code/trunk@731 7ec92016-0320-0410-acc4-a06ded1c099a
2006-10-17 09:14:27 +00:00
syntheticpp
d19b1df7f4 remove C&P error
git-svn-id: svn://svn.code.sf.net/p/loki-lib/code/trunk@730 7ec92016-0320-0410-acc4-a06ded1c099a
2006-10-16 16:34:48 +00:00
syntheticpp
b91c17f0a5 add inline to fix linker errors
git-svn-id: svn://svn.code.sf.net/p/loki-lib/code/trunk@727 7ec92016-0320-0410-acc4-a06ded1c099a
2006-10-16 11:16:59 +00:00
syntheticpp
df24bcb2c0 add operator > < == to EmptyType
git-svn-id: svn://svn.code.sf.net/p/loki-lib/code/trunk@724 7ec92016-0320-0410-acc4-a06ded1c099a
2006-10-16 10:38:02 +00:00
syntheticpp
e4b5d8357f add CachedFactory: use LOKI_ macros
git-svn-id: svn://svn.code.sf.net/p/loki-lib/code/trunk@723 7ec92016-0320-0410-acc4-a06ded1c099a
2006-10-16 10:32:04 +00:00
syntheticpp
6f706cff82 add CachedFactory, remove gcc warnings
git-svn-id: svn://svn.code.sf.net/p/loki-lib/code/trunk@722 7ec92016-0320-0410-acc4-a06ded1c099a
2006-10-16 10:30:16 +00:00
syntheticpp
8e2c06d853 add CachedFactory, remove gcc warnings
git-svn-id: svn://svn.code.sf.net/p/loki-lib/code/trunk@721 7ec92016-0320-0410-acc4-a06ded1c099a
2006-10-16 10:10:46 +00:00
syntheticpp
78febe17ec add CachedFactory, patches for: msvc, build system
git-svn-id: svn://svn.code.sf.net/p/loki-lib/code/trunk@720 7ec92016-0320-0410-acc4-a06ded1c099a
2006-10-16 09:59:11 +00:00
syntheticpp
cf3ca512e6 add CachedFactory, initial version of Guillaume Chatelet
git-svn-id: svn://svn.code.sf.net/p/loki-lib/code/trunk@719 7ec92016-0320-0410-acc4-a06ded1c099a
2006-10-16 09:31:45 +00:00
syntheticpp
530af30626 remove min/max definitions
git-svn-id: svn://svn.code.sf.net/p/loki-lib/code/trunk@718 7ec92016-0320-0410-acc4-a06ded1c099a
2006-10-15 10:25:01 +00:00
syntheticpp
0d71c438ab add missing unsigned long overload for Windows
git-svn-id: svn://svn.code.sf.net/p/loki-lib/code/trunk@716 7ec92016-0320-0410-acc4-a06ded1c099a
2006-10-15 09:33:54 +00:00
rich_sposato
584959ad1c Added #ifdef sections around policy and implementation classes that only
work properly in multi-threaded model.


git-svn-id: svn://svn.code.sf.net/p/loki-lib/code/trunk@713 7ec92016-0320-0410-acc4-a06ded1c099a
2006-10-14 00:01:05 +00:00
syntheticpp
0ac52235b4 fix gcc>4.1 handling of injected friends
git-svn-id: svn://svn.code.sf.net/p/loki-lib/code/trunk@709 7ec92016-0320-0410-acc4-a06ded1c099a
2006-10-11 10:44:21 +00:00
syntheticpp
c249b0f93b add ctor with std::pair argument
git-svn-id: svn://svn.code.sf.net/p/loki-lib/code/trunk@705 7ec92016-0320-0410-acc4-a06ded1c099a
2006-10-11 08:51:40 +00:00
syntheticpp
f628dc7165 move instantiation to the source file (fixes linker error with gcc 4.0.1 on the mac), Thanks to Idar Tollefsen and Sam Miller
git-svn-id: svn://svn.code.sf.net/p/loki-lib/code/trunk@703 7ec92016-0320-0410-acc4-a06ded1c099a
2006-09-15 06:30:16 +00:00
syntheticpp
3e5f183a8d use LOKI_* macros to check for the including of windows.h/pthread.h
git-svn-id: svn://svn.code.sf.net/p/loki-lib/code/trunk@700 7ec92016-0320-0410-acc4-a06ded1c099a
2006-09-08 17:52:58 +00:00
syntheticpp
d5567eea60 remove msvc warning
git-svn-id: svn://svn.code.sf.net/p/loki-lib/code/trunk@698 7ec92016-0320-0410-acc4-a06ded1c099a
2006-09-08 10:50:18 +00:00
syntheticpp
0e03492cdb ImplT/PimplT/RimplT renamed to the more readable version: T->Of
git-svn-id: svn://svn.code.sf.net/p/loki-lib/code/trunk@696 7ec92016-0320-0410-acc4-a06ded1c099a
2006-07-17 11:05:44 +00:00
lfittl
3de4a064cb - Create initial 0.1.6 changelog
- Makefiles can now be called from sub directories
- Makefiles know includes and recompile if they are changed (linux, macosx)
- Build all tests except SingletonDll with the static library (linux, macosx)


git-svn-id: svn://svn.code.sf.net/p/loki-lib/code/trunk@695 7ec92016-0320-0410-acc4-a06ded1c099a
2006-07-14 07:31:37 +00:00
syntheticpp
81c7b0d3db also compile when std::string is not implicit included/typedefed by other headers; the SUN compiler needs the explicit include of <string>
git-svn-id: svn://svn.code.sf.net/p/loki-lib/code/trunk@694 7ec92016-0320-0410-acc4-a06ded1c099a
2006-07-07 09:50:30 +00:00
syntheticpp
ae9c9ecc22 add writing to ostream, by Tom Browder
git-svn-id: svn://svn.code.sf.net/p/loki-lib/code/trunk@692 7ec92016-0320-0410-acc4-a06ded1c099a
2006-07-06 18:25:28 +00:00
syntheticpp
289bc55ba0 fix wrong buffer size check
git-svn-id: svn://svn.code.sf.net/p/loki-lib/code/trunk@691 7ec92016-0320-0410-acc4-a06ded1c099a
2006-07-03 09:55:19 +00:00
syntheticpp
c6a110f676 add docu about missing recursive mutex support when using pthreads
git-svn-id: svn://svn.code.sf.net/p/loki-lib/code/trunk@690 7ec92016-0320-0410-acc4-a06ded1c099a
2006-07-03 08:43:35 +00:00
syntheticpp
6bb64c5ff1 add reentrance support to the pthread mutex, thx to Shen Lei
git-svn-id: svn://svn.code.sf.net/p/loki-lib/code/trunk@688 7ec92016-0320-0410-acc4-a06ded1c099a
2006-07-01 10:30:03 +00:00
syntheticpp
e3277a903d add reentrance support to the pthread mutex, thx to Shen Lei
git-svn-id: svn://svn.code.sf.net/p/loki-lib/code/trunk@687 7ec92016-0320-0410-acc4-a06ded1c099a
2006-07-01 10:26:25 +00:00
syntheticpp
11e532673b use standard conforming naming, SUN's compiler needs it
git-svn-id: svn://svn.code.sf.net/p/loki-lib/code/trunk@686 7ec92016-0320-0410-acc4-a06ded1c099a
2006-06-28 08:04:21 +00:00
syntheticpp
30f4e933c1 replace tabs with 4 spaces
git-svn-id: svn://svn.code.sf.net/p/loki-lib/code/trunk@680 7ec92016-0320-0410-acc4-a06ded1c099a
2006-06-19 12:39:09 +00:00
syntheticpp
9b30cc32a6 add hint to fix broken build
git-svn-id: svn://svn.code.sf.net/p/loki-lib/code/trunk@678 7ec92016-0320-0410-acc4-a06ded1c099a
2006-06-19 12:18:44 +00:00
syntheticpp
ee00d7fb60 simplify Functor::operator== implementation. Thanks to Eric Beyeler
git-svn-id: svn://svn.code.sf.net/p/loki-lib/code/trunk@676 7ec92016-0320-0410-acc4-a06ded1c099a
2006-06-09 12:58:44 +00:00
syntheticpp
9233d249c9 fix wrong default value handling, gcc fix
git-svn-id: svn://svn.code.sf.net/p/loki-lib/code/trunk@675 7ec92016-0320-0410-acc4-a06ded1c099a
2006-06-09 12:57:15 +00:00
syntheticpp
ad77f8b3ef fix wrong default value handling
git-svn-id: svn://svn.code.sf.net/p/loki-lib/code/trunk@674 7ec92016-0320-0410-acc4-a06ded1c099a
2006-06-09 12:04:40 +00:00
vizowl
7227fa0c4e added a check for _POSIX_PTHREAD_H to detect pthread.h on OS X
git-svn-id: svn://svn.code.sf.net/p/loki-lib/code/trunk@672 7ec92016-0320-0410-acc4-a06ded1c099a
2006-06-04 20:18:39 +00:00
syntheticpp
50d35c6196 add operator== to Functor, initiated by Eric Beyeler
git-svn-id: svn://svn.code.sf.net/p/loki-lib/code/trunk@662 7ec92016-0320-0410-acc4-a06ded1c099a
2006-06-01 12:33:05 +00:00
syntheticpp
0f42475f4a add warning about mt bug
git-svn-id: svn://svn.code.sf.net/p/loki-lib/code/trunk@660 7ec92016-0320-0410-acc4-a06ded1c099a
2006-05-30 14:30:19 +00:00
syntheticpp
013ffed520 enable documentation by removing doxygen warning
git-svn-id: svn://svn.code.sf.net/p/loki-lib/code/trunk@654 7ec92016-0320-0410-acc4-a06ded1c099a
2006-05-20 10:25:08 +00:00
syntheticpp
781b92cff9 add warnings in the documentation about the special lifetime when using SmallObjects
git-svn-id: svn://svn.code.sf.net/p/loki-lib/code/trunk@653 7ec92016-0320-0410-acc4-a06ded1c099a
2006-05-20 10:23:07 +00:00
syntheticpp
e23c99bf65 undo commit 1.29, reject bug: [ 1459838 ] Loki::COMRefCounted doesn't call AddRef() on assignment
git-svn-id: svn://svn.code.sf.net/p/loki-lib/code/trunk@646 7ec92016-0320-0410-acc4-a06ded1c099a
2006-05-17 16:04:32 +00:00
rich_sposato
0e8b336c0a Corrected comments. Added operator= function. Improved efficiency of
dtor.  Other minor changes.


git-svn-id: svn://svn.code.sf.net/p/loki-lib/code/trunk@641 7ec92016-0320-0410-acc4-a06ded1c099a
2006-04-21 21:45:17 +00:00
rich_sposato
5a1e25a204 Changed DeleteSingle and DeleteArray policy to not allow use of incomplete
types.


git-svn-id: svn://svn.code.sf.net/p/loki-lib/code/trunk@640 7ec92016-0320-0410-acc4-a06ded1c099a
2006-04-19 01:04:26 +00:00
syntheticpp
cdc9205e8e fix compare bug
git-svn-id: svn://svn.code.sf.net/p/loki-lib/code/trunk@639 7ec92016-0320-0410-acc4-a06ded1c099a
2006-04-18 09:27:35 +00:00
lfittl
85a490c387 - Various makefile improvements (better mingw support, easier to add new sources)
- Include loki/StrongPtr.hpp, not Loki/StrongPtr.hpp (test/SmartPtr)


git-svn-id: svn://svn.code.sf.net/p/loki-lib/code/trunk@638 7ec92016-0320-0410-acc4-a06ded1c099a
2006-04-18 07:29:41 +00:00
syntheticpp
cdc57d88aa change init order to inheritance order
git-svn-id: svn://svn.code.sf.net/p/loki-lib/code/trunk@637 7ec92016-0320-0410-acc4-a06ded1c099a
2006-04-16 14:08:46 +00:00
syntheticpp
607fcf9ec9 gcc pedantic fix
git-svn-id: svn://svn.code.sf.net/p/loki-lib/code/trunk@634 7ec92016-0320-0410-acc4-a06ded1c099a
2006-04-16 13:36:26 +00:00
rich_sposato
f19d9c93b1 Stylistic change so I can put breakpoint on lines within Mutex functions.
git-svn-id: svn://svn.code.sf.net/p/loki-lib/code/trunk@628 7ec92016-0320-0410-acc4-a06ded1c099a
2006-04-15 00:39:50 +00:00
rich_sposato
aee558d54d Added LOKI_EXPORT macro.
git-svn-id: svn://svn.code.sf.net/p/loki-lib/code/trunk@625 7ec92016-0320-0410-acc4-a06ded1c099a
2006-04-06 06:05:20 +00:00
rich_sposato
d5f4f0f77f Added StrongPtr class to Loki along with tests for StrongPtr.
git-svn-id: svn://svn.code.sf.net/p/loki-lib/code/trunk@623 7ec92016-0320-0410-acc4-a06ded1c099a
2006-04-05 22:56:58 +00:00
rich_sposato
0201647cdc Fixed bug 1459838 using fix made by Thomas Albrecht. (Thanks!)
Also added a constructor for NoCheck policy.


git-svn-id: svn://svn.code.sf.net/p/loki-lib/code/trunk@622 7ec92016-0320-0410-acc4-a06ded1c099a
2006-04-05 22:41:43 +00:00
lfittl
85b6e7a7da - Applied patch from Sam Miller to fix bug #1463844
- Some minor makefile improvements


git-svn-id: svn://svn.code.sf.net/p/loki-lib/code/trunk@621 7ec92016-0320-0410-acc4-a06ded1c099a
2006-04-04 23:15:10 +00:00
rich_sposato
f107dafa96 Added check for NULL pointer in HeapStorage policy.
git-svn-id: svn://svn.code.sf.net/p/loki-lib/code/trunk@618 7ec92016-0320-0410-acc4-a06ded1c099a
2006-03-27 18:38:30 +00:00
rich_sposato
5157e66c72 Added HeapStorage policy as mentioned in Feature Request 1441024.
git-svn-id: svn://svn.code.sf.net/p/loki-lib/code/trunk@617 7ec92016-0320-0410-acc4-a06ded1c099a
2006-03-27 18:34:36 +00:00
syntheticpp
72155fad9d fix spelling
git-svn-id: svn://svn.code.sf.net/p/loki-lib/code/trunk@615 7ec92016-0320-0410-acc4-a06ded1c099a
2006-03-27 15:33:24 +00:00
rich_sposato
47730a3073 Fixed bugs 1452805 and 1451835. Added Merge ability for RefLink policy.
Added more tests for SmartPtr.


git-svn-id: svn://svn.code.sf.net/p/loki-lib/code/trunk@610 7ec92016-0320-0410-acc4-a06ded1c099a
2006-03-17 22:52:56 +00:00
syntheticpp
aab36b5ebb patch undefined uintptr_t, thx to Regis Desgroppes
git-svn-id: svn://svn.code.sf.net/p/loki-lib/code/trunk@609 7ec92016-0320-0410-acc4-a06ded1c099a
2006-03-17 20:22:14 +00:00
syntheticpp
2dd3452a84 gcc: specialization only in the correct namespace, thx to Sam Miller
git-svn-id: svn://svn.code.sf.net/p/loki-lib/code/trunk@608 7ec92016-0320-0410-acc4-a06ded1c099a
2006-03-15 08:47:19 +00:00
syntheticpp
e816b5bc78 doxygen fixes
git-svn-id: svn://svn.code.sf.net/p/loki-lib/code/trunk@604 7ec92016-0320-0410-acc4-a06ded1c099a
2006-03-08 18:33:38 +00:00
syntheticpp
ed8237ac69 doxygen fixes
git-svn-id: svn://svn.code.sf.net/p/loki-lib/code/trunk@603 7ec92016-0320-0410-acc4-a06ded1c099a
2006-03-08 18:22:42 +00:00
syntheticpp
d72b2ff1b3 replace tabs with 4 spaces in all files
git-svn-id: svn://svn.code.sf.net/p/loki-lib/code/trunk@600 7ec92016-0320-0410-acc4-a06ded1c099a
2006-03-08 17:07:20 +00:00
syntheticpp
00011a8634 add Register.h
git-svn-id: svn://svn.code.sf.net/p/loki-lib/code/trunk@597 7ec92016-0320-0410-acc4-a06ded1c099a
2006-03-08 16:50:53 +00:00
syntheticpp
57cbca7429 remove second $
git-svn-id: svn://svn.code.sf.net/p/loki-lib/code/trunk@593 7ec92016-0320-0410-acc4-a06ded1c099a
2006-03-08 16:41:38 +00:00
syntheticpp
e9711d3cfe add documenation
git-svn-id: svn://svn.code.sf.net/p/loki-lib/code/trunk@592 7ec92016-0320-0410-acc4-a06ded1c099a
2006-03-08 16:39:27 +00:00
syntheticpp
a08b05e131 add gcc export specifier
git-svn-id: svn://svn.code.sf.net/p/loki-lib/code/trunk@587 7ec92016-0320-0410-acc4-a06ded1c099a
2006-03-03 15:23:35 +00:00
syntheticpp
bc355b1b0a also compile with gcc
git-svn-id: svn://svn.code.sf.net/p/loki-lib/code/trunk@583 7ec92016-0320-0410-acc4-a06ded1c099a
2006-03-03 11:58:24 +00:00
syntheticpp
a28d4d6ddd don't compile with incomplete types
git-svn-id: svn://svn.code.sf.net/p/loki-lib/code/trunk@579 7ec92016-0320-0410-acc4-a06ded1c099a
2006-03-02 09:55:37 +00:00
syntheticpp
ab94f134e4 add documenation how to avoid the -deletion of pointer to incomplete type- error
git-svn-id: svn://svn.code.sf.net/p/loki-lib/code/trunk@577 7ec92016-0320-0410-acc4-a06ded1c099a
2006-03-01 15:20:19 +00:00
syntheticpp
867fb85151 undo disabling checking, remove warnings, many thanks to Sam Miller
git-svn-id: svn://svn.code.sf.net/p/loki-lib/code/trunk@574 7ec92016-0320-0410-acc4-a06ded1c099a
2006-02-28 16:55:56 +00:00
syntheticpp
9eb276e401 fix wrong RejectNull implementation, thanks to Sam Miller
git-svn-id: svn://svn.code.sf.net/p/loki-lib/code/trunk@573 7ec92016-0320-0410-acc4-a06ded1c099a
2006-02-28 12:59:59 +00:00
syntheticpp
5c225a1935 add export specifier
git-svn-id: svn://svn.code.sf.net/p/loki-lib/code/trunk@572 7ec92016-0320-0410-acc4-a06ded1c099a
2006-02-28 11:13:20 +00:00
syntheticpp
83046e76e4 add new line at the end of file
git-svn-id: svn://svn.code.sf.net/p/loki-lib/code/trunk@569 7ec92016-0320-0410-acc4-a06ded1c099a
2006-02-28 10:33:11 +00:00
syntheticpp
93f7324b36 don't use __declspec on non win32 systems
git-svn-id: svn://svn.code.sf.net/p/loki-lib/code/trunk@568 7ec92016-0320-0410-acc4-a06ded1c099a
2006-02-28 10:32:07 +00:00
syntheticpp
4b98d7cc4b replace tabs
git-svn-id: svn://svn.code.sf.net/p/loki-lib/code/trunk@567 7ec92016-0320-0410-acc4-a06ded1c099a
2006-02-28 10:31:01 +00:00
syntheticpp
c80e88d8c0 add singleton object getter function template
git-svn-id: svn://svn.code.sf.net/p/loki-lib/code/trunk@566 7ec92016-0320-0410-acc4-a06ded1c099a
2006-02-28 10:30:17 +00:00
syntheticpp
4fbed79847 add support of loki.dll
git-svn-id: svn://svn.code.sf.net/p/loki-lib/code/trunk@564 7ec92016-0320-0410-acc4-a06ded1c099a
2006-02-27 19:59:20 +00:00
syntheticpp
f987e34c91 make it possible for Functor not to be a small object because it introduces sometimes problems, add documentation
git-svn-id: svn://svn.code.sf.net/p/loki-lib/code/trunk@562 7ec92016-0320-0410-acc4-a06ded1c099a
2006-02-27 18:53:41 +00:00
syntheticpp
8d18124dc8 guard including
git-svn-id: svn://svn.code.sf.net/p/loki-lib/code/trunk@557 7ec92016-0320-0410-acc4-a06ded1c099a
2006-02-26 23:39:59 +00:00
syntheticpp
8139b0efdb add constness policy to doc
git-svn-id: svn://svn.code.sf.net/p/loki-lib/code/trunk@556 7ec92016-0320-0410-acc4-a06ded1c099a
2006-02-25 13:48:54 +00:00
syntheticpp
d9a835a2d5 add const member function OnDereference to non static RejectNull policies
git-svn-id: svn://svn.code.sf.net/p/loki-lib/code/trunk@550 7ec92016-0320-0410-acc4-a06ded1c099a
2006-02-25 13:01:40 +00:00
rich_sposato
9f532a3ea0 Moved a monolithic base class from header file to new source file.
git-svn-id: svn://svn.code.sf.net/p/loki-lib/code/trunk@548 7ec92016-0320-0410-acc4-a06ded1c099a
2006-02-25 01:52:17 +00:00
rich_sposato
2c0f44456f Fixed typo.
git-svn-id: svn://svn.code.sf.net/p/loki-lib/code/trunk@539 7ec92016-0320-0410-acc4-a06ded1c099a
2006-02-20 21:56:06 +00:00
rich_sposato
4a46d84c35 Removed struct Locking - no longer needed.
git-svn-id: svn://svn.code.sf.net/p/loki-lib/code/trunk@538 7ec92016-0320-0410-acc4-a06ded1c099a
2006-02-20 21:45:40 +00:00
syntheticpp
9a013e8905 gcc needs the template parameter, gcc warns about missing virtual destructor (because there is already a virtual function)
git-svn-id: svn://svn.code.sf.net/p/loki-lib/code/trunk@536 7ec92016-0320-0410-acc4-a06ded1c099a
2006-02-20 16:08:32 +00:00
rich_sposato
059eba4ae1 Moved Const-policy structs from SmartPtr.h to ConstPolicy.h.
git-svn-id: svn://svn.code.sf.net/p/loki-lib/code/trunk@535 7ec92016-0320-0410-acc4-a06ded1c099a
2006-02-19 22:04:28 +00:00
rich_sposato
1c4109e72d Added explicit call to base copy-constructor. Changed base class from
SmallObject to SmallValueObject.


git-svn-id: svn://svn.code.sf.net/p/loki-lib/code/trunk@534 7ec92016-0320-0410-acc4-a06ded1c099a
2006-02-18 19:37:40 +00:00
syntheticpp
87efaadca0 doc: ByRef is part of ScopeGuard
git-svn-id: svn://svn.code.sf.net/p/loki-lib/code/trunk@532 7ec92016-0320-0410-acc4-a06ded1c099a
2006-02-14 12:12:34 +00:00
syntheticpp
51335c7899 don't break old ScopeGuard code
git-svn-id: svn://svn.code.sf.net/p/loki-lib/code/trunk@531 7ec92016-0320-0410-acc4-a06ded1c099a
2006-02-14 12:11:06 +00:00
syntheticpp
1cd7d08d7c rename SmartPtr-ByRef and ScopeGuard-ByRefHolder into RefToValue and move it to loki/RefToValue.h
git-svn-id: svn://svn.code.sf.net/p/loki-lib/code/trunk@530 7ec92016-0320-0410-acc4-a06ded1c099a
2006-02-14 11:54:46 +00:00
rich_sposato
261f5f3cc0 Fixed bug 1425890. Last SmartPtr in linked chain NULLs its prev & next
pointers to prevent infinite recursion.  Added asserts.


git-svn-id: svn://svn.code.sf.net/p/loki-lib/code/trunk@527 7ec92016-0320-0410-acc4-a06ded1c099a
2006-02-08 18:12:29 +00:00
syntheticpp
9412bbe3a3 use policies from SmartPtr.h, clean up
git-svn-id: svn://svn.code.sf.net/p/loki-lib/code/trunk@526 7ec92016-0320-0410-acc4-a06ded1c099a
2006-01-30 20:33:01 +00:00
syntheticpp
afed2567d1 replace tabss
git-svn-id: svn://svn.code.sf.net/p/loki-lib/code/trunk@524 7ec92016-0320-0410-acc4-a06ded1c099a
2006-01-30 20:07:38 +00:00
syntheticpp
9166ca1eeb add ArrayStorage and propagating constness policies
git-svn-id: svn://svn.code.sf.net/p/loki-lib/code/trunk@523 7ec92016-0320-0410-acc4-a06ded1c099a
2006-01-30 20:01:37 +00:00
syntheticpp
147eca6930 replace implementation with a auto-create and propagating-const wrapper for smart pointers which auto delete the holded pointer on destruction
git-svn-id: svn://svn.code.sf.net/p/loki-lib/code/trunk@522 7ec92016-0320-0410-acc4-a06ded1c099a
2006-01-28 20:13:57 +00:00
syntheticpp
698214fb58 replace unsigned int with the platform independent uintptr_t to make it more 64bit portable, and work around for mac gcc 4.0.0 bug in assert
git-svn-id: svn://svn.code.sf.net/p/loki-lib/code/trunk@521 7ec92016-0320-0410-acc4-a06ded1c099a
2006-01-27 08:58:17 +00:00
syntheticpp
b98b203765 remove wrong 'typename'
git-svn-id: svn://svn.code.sf.net/p/loki-lib/code/trunk@520 7ec92016-0320-0410-acc4-a06ded1c099a
2006-01-26 14:28:59 +00:00
syntheticpp
853d58a218 add support of deep constness, only supported by (future) Loki::SmartPtr, not supported by boost::shared_ptr and plain pointer. Maybe deep constness forces a redesign of Pimpl. Is there a way to support deep constness by a rimpl?
git-svn-id: svn://svn.code.sf.net/p/loki-lib/code/trunk@517 7ec92016-0320-0410-acc4-a06ded1c099a
2006-01-23 17:23:46 +00:00
syntheticpp
02709b67ec a -pedantic fix
git-svn-id: svn://svn.code.sf.net/p/loki-lib/code/trunk@515 7ec92016-0320-0410-acc4-a06ded1c099a
2006-01-22 15:33:41 +00:00
syntheticpp
2dc4c649e0 use macro LOKI_DEFAULT_MUTEX for Mutex default value, defined in Threads.h
git-svn-id: svn://svn.code.sf.net/p/loki-lib/code/trunk@514 7ec92016-0320-0410-acc4-a06ded1c099a
2006-01-22 13:37:33 +00:00
syntheticpp
e3dc79f363 add additional template parameter for the changed threading classes
git-svn-id: svn://svn.code.sf.net/p/loki-lib/code/trunk@513 7ec92016-0320-0410-acc4-a06ded1c099a
2006-01-22 13:31:45 +00:00
syntheticpp
7dc0df52d0 add additional template parameter for the changed threading classes
git-svn-id: svn://svn.code.sf.net/p/loki-lib/code/trunk@512 7ec92016-0320-0410-acc4-a06ded1c099a
2006-01-22 00:44:17 +00:00
syntheticpp
69c31ce7f3 add dummy Mutex for single threading and additional template parameter
git-svn-id: svn://svn.code.sf.net/p/loki-lib/code/trunk@511 7ec92016-0320-0410-acc4-a06ded1c099a
2006-01-22 00:32:29 +00:00
syntheticpp
5e5965fdc1 replace LockPtr/ConstLockPtr implementation with a template policy based one
git-svn-id: svn://svn.code.sf.net/p/loki-lib/code/trunk@508 7ec92016-0320-0410-acc4-a06ded1c099a
2006-01-21 14:13:48 +00:00
syntheticpp
6a86ae304a complete usage of Loki::Mutex, gcc can't compile without these corrections
git-svn-id: svn://svn.code.sf.net/p/loki-lib/code/trunk@506 7ec92016-0320-0410-acc4-a06ded1c099a
2006-01-21 14:11:09 +00:00
syntheticpp
d032ef4528 don't compile Mutex when multi threading is disabled
git-svn-id: svn://svn.code.sf.net/p/loki-lib/code/trunk@505 7ec92016-0320-0410-acc4-a06ded1c099a
2006-01-21 13:09:45 +00:00
rich_sposato
48ec640065 Removed volatile keyword from 2 data members.
git-svn-id: svn://svn.code.sf.net/p/loki-lib/code/trunk@504 7ec92016-0320-0410-acc4-a06ded1c099a
2006-01-21 01:05:44 +00:00
rich_sposato
713d41a7b2 Added Mutex class to Loki. Made it the default policy class for locking.
git-svn-id: svn://svn.code.sf.net/p/loki-lib/code/trunk@502 7ec92016-0320-0410-acc4-a06ded1c099a
2006-01-21 01:02:12 +00:00
lfittl
c68642eb5f - Disabled -Weffc++ flag, fixing these warnings produces too much useless code
- Enabled -pedantic, -Wold-style-cast and -Wundef for src/ and test/


git-svn-id: svn://svn.code.sf.net/p/loki-lib/code/trunk@499 7ec92016-0320-0410-acc4-a06ded1c099a
2006-01-19 23:11:57 +00:00
rich_sposato
7acf9ff6be Added ConstLockingPtr class.
git-svn-id: svn://svn.code.sf.net/p/loki-lib/code/trunk@498 7ec92016-0320-0410-acc4-a06ded1c099a
2006-01-19 19:36:34 +00:00
syntheticpp
ad8e63cae5 disable usage with auto_ptr: don't compile with std::auto_ptr
git-svn-id: svn://svn.code.sf.net/p/loki-lib/code/trunk@496 7ec92016-0320-0410-acc4-a06ded1c099a
2006-01-19 18:16:39 +00:00
syntheticpp
319f949eee make rimpl type really a reference
git-svn-id: svn://svn.code.sf.net/p/loki-lib/code/trunk@495 7ec92016-0320-0410-acc4-a06ded1c099a
2006-01-18 19:03:25 +00:00
lfittl
39ea27e017 - Compile library with -Weffc++ and -pedantic (gcc)
- Fix most issues raised by using -Weffc++ (initialization lists)


git-svn-id: svn://svn.code.sf.net/p/loki-lib/code/trunk@494 7ec92016-0320-0410-acc4-a06ded1c099a
2006-01-18 17:21:31 +00:00
syntheticpp
794fd6ba56 move definition of the destructor to extra file, because msvc tries to use the incomplete type; not inlining does not help; maybe this is a compiler bug.
git-svn-id: svn://svn.code.sf.net/p/loki-lib/code/trunk@493 7ec92016-0320-0410-acc4-a06ded1c099a
2006-01-18 16:49:32 +00:00
syntheticpp
385f6b06d4 add comment about auto_ptr
git-svn-id: svn://svn.code.sf.net/p/loki-lib/code/trunk@492 7ec92016-0320-0410-acc4-a06ded1c099a
2006-01-17 12:03:36 +00:00
syntheticpp
00bb8d6ba8 AutoPtrHolderChecked inherits from AutoPtrHolder
git-svn-id: svn://svn.code.sf.net/p/loki-lib/code/trunk@490 7ec92016-0320-0410-acc4-a06ded1c099a
2006-01-17 11:07:34 +00:00