Mirror of the Loki library from Alexandrescu.
Find a file
magmaikh a70e07ccb3 Fixed AtomicDivide/AtomicDecrement typo's
git-svn-id: svn://svn.code.sf.net/p/loki-lib/code/trunk@38 7ec92016-0320-0410-acc4-a06ded1c099a
2002-08-15 02:49:29 +00:00
Borland Borland Port from experimental 2002-08-11 05:48:53 +00:00
MSVC no message 2002-08-15 02:01:04 +00:00
Reference Fixed AtomicDivide/AtomicDecrement typo's 2002-08-15 02:49:29 +00:00
tools no message 2002-08-15 02:07:50 +00:00
AbstractFactory.h Forwarding headers, the original code is under .\Reference 2002-08-15 02:38:19 +00:00
AssocVector.h Forwarding headers, the original code is under .\Reference 2002-08-15 02:38:19 +00:00
EmptyType.h Forwarding headers, the original code is under .\Reference 2002-08-15 02:38:19 +00:00
Factory.h Forwarding headers, the original code is under .\Reference 2002-08-15 02:38:19 +00:00
Functor.h Forwarding headers, the original code is under .\Reference 2002-08-15 02:38:19 +00:00
HierarchyGenerators.h Forwarding headers, the original code is under .\Reference 2002-08-15 02:38:19 +00:00
MultiMethods.h Forwarding headers, the original code is under .\Reference 2002-08-15 02:38:19 +00:00
NullType.h Forwarding headers, the original code is under .\Reference 2002-08-15 02:38:19 +00:00
readme.txt Forwarding headers, the original code is under .\Reference 2002-08-15 02:38:19 +00:00
Singleton.cpp Forwarding headers, the original code is under .\Reference 2002-08-15 02:38:19 +00:00
Singleton.h Forwarding headers, the original code is under .\Reference 2002-08-15 02:38:19 +00:00
SmallObj.cpp Forwarding headers, the original code is under .\Reference 2002-08-15 02:38:19 +00:00
SmallObj.h Forwarding headers, the original code is under .\Reference 2002-08-15 02:38:19 +00:00
SmartPtr.h Forwarding headers, the original code is under .\Reference 2002-08-15 02:38:19 +00:00
static_check.h Forwarding headers, the original code is under .\Reference 2002-08-15 02:38:19 +00:00
Threads.h Forwarding headers, the original code is under .\Reference 2002-08-15 02:38:19 +00:00
Tuple.h Forwarding headers, the original code is under .\Reference 2002-08-15 02:38:19 +00:00
TypeInfo.h Forwarding headers, the original code is under .\Reference 2002-08-15 02:38:19 +00:00
Typelist.h Forwarding headers, the original code is under .\Reference 2002-08-15 02:38:19 +00:00
TypeManip.h Forwarding headers, the original code is under .\Reference 2002-08-15 02:38:19 +00:00
TypeTraits.h Forwarding headers, the original code is under .\Reference 2002-08-15 02:38:19 +00:00
Visitor.h Forwarding headers, the original code is under .\Reference 2002-08-15 02:38:19 +00:00

Last update: Aug 14, 2002

Directions:

To use Loki, simply extract the files from the archive, give your compiler access to their path, and include them appropriately in your code via #include.

If you use the small object allocator directly or indirectly (through the Functor class) you must add SmallObj.cpp to your project/makefile.

If you use Singletons with longevity you must add Singleton.cpp to your project/makefile.

Compatibility:

Loki has been tested with Metrowerks CodeWarrior Pro 6 under Windows. CodeWarrior has a problem with the Conversion template (see TypeManip.h) and, though it compiles it, it doesn't provide correct results. Consequently, the DerivedToFront algorithm in Typelist.h does not function. This affects the static dispatcher in Multimethods.h. As a fix, you must order the types (putting the most derived ones in the front) when providing the typelist argument to StaticDispatcher.

Also, Loki has been ported to gcc 2.95.3 and to MSVC7.
A port to Borland C++ BUilder is in progress.
Typelist have been ported to MSVC6.


More info:

http://moderncppdesign.com
http://sourceforge.net/projects/loki-lib/