Mirror of the Loki library from Alexandrescu.
Find a file
aandrei 48bd335289 // March 08, 2002: moved the assignment to pTrackerArray in SetLongevity to fix
//      exception safety issue. Credit due to Kari Hoijarvi


git-svn-id: svn://svn.code.sf.net/p/loki-lib/code/trunk@13 7ec92016-0320-0410-acc4-a06ded1c099a
2002-03-08 21:28:12 +00:00
AbstractFactory.h June 20, 2001 revision: 2001-11-21 09:31:45 +00:00
AssocVector.h // January 22, 2002: fixed operator= - credit due to Tom Hyer 2002-01-23 01:48:53 +00:00
EmptyType.h June 20, 2001 revision: 2001-11-21 09:31:45 +00:00
Factory.h June 20, 2001 revision: 2001-11-21 09:31:45 +00:00
Functor.h June 20, 2001 revision: 2001-11-21 09:31:45 +00:00
HierarchyGenerators.h June 20, 2001 revision: 2001-11-21 09:31:45 +00:00
MultiMethods.h June 20, 2001 revision: 2001-11-21 09:31:45 +00:00
NullType.h * Fixed a couple of bugs in TypeManip.h 2001-11-23 08:06:43 +00:00
readme.txt June 20, 2001 revision: 2001-11-21 09:31:45 +00:00
Singleton.cpp // January 10, 2002: Fixed bug in call to realloc - credit due to Nigel Gent and 2002-01-10 09:29:55 +00:00
Singleton.h // March 08, 2002: moved the assignment to pTrackerArray in SetLongevity to fix 2002-03-08 21:28:12 +00:00
SmallObj.cpp June 20, 2001 revision: 2001-11-21 09:31:45 +00:00
SmallObj.h June 20, 2001 revision: 2001-11-21 09:31:45 +00:00
SmartPtr.h June 20, 2001 revision: 2001-11-21 09:31:45 +00:00
static_check.h June 20, 2001 revision: 2001-11-21 09:31:45 +00:00
Threads.h // January 10, 2002: Fixed bug in AtomicDivide - credit due to Jordi Guerrero 2002-01-10 21:22:07 +00:00
Tuple.h June 20, 2001 revision: 2001-11-21 09:31:45 +00:00
TypeInfo.h June 20, 2001 revision: 2001-11-21 09:31:45 +00:00
Typelist.h * Fixed a couple of bugs in TypeManip.h 2001-11-23 08:06:43 +00:00
TypeManip.h * Fixed a couple of bugs in TypeManip.h 2001-11-23 08:06:43 +00:00
TypeTraits.h June 20, 2001 revision: 2001-11-21 09:31:45 +00:00
Visitor.h June 20, 2001 revision: 2001-11-21 09:31:45 +00:00

Last update: June 20, 2001

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 by Nick Thurn.


More info:

http://moderncppdesign.com