19 Commits

Author SHA1 Message Date
John Wellbelove
ceef10dc93 Disabled copy constructor.
Added interface assignment operator.
2016-01-14 18:31:43 +00:00
John Wellbelove
ea12a09364 Modified functions comments about exceptions. 2016-01-11 23:56:09 +00:00
John Wellbelove
7b9c598226 Changed error handling. Macros do not evaluate to true or false any more.
If ETL_LOG_ERRORS is defined then the error handler is called before the exception is thrown or the assert is called.
ETL_LOG_ERRORS may be used in conjunction with ETL_THROW_EXCEPTIONS or default assert methods. It is not valid for ETL_NO_CHECKS.
2015-12-24 12:08:04 +00:00
John Wellbelove
16a1978f43 Added link to www.etlcpp.com in licence header. 2015-12-16 11:09:56 +00:00
John Wellbelove
a048784285 Changed the way that errors are produced and handled.
Compile time macros control the type and verbosity of the errors to allow space and performance optimisation.
2015-12-15 19:28:12 +00:00
John Wellbelove
57b3864449 Missing closing ) 2015-12-11 20:58:52 +00:00
John Wellbelove
48919b3c15 Modified the error system.
Remove ETL_ERROR and replaced with ETL_ASSERT.
ETL_ASSERT will eveluate to 'true' in all cases except for error logging.
This will allow 'if' statements that contain the macro to be optimised away for all cases except logging.
Added ETL_NO_CHECKS and ETL_LOG_ERRORS macro checks.

The options are now:-
ETL_NO_CHECKS         ETL_ASSERT does nothing. Evaluates to 'true'.
ETL_THROW_EXCEPTIONS) ETL_ASSERT throws an exception if the condition fails. Evaluates to 'true'.
ETL_LOG_ERRORS        ETL_ASSERT logs the error if the condition fails. Evaluates to the result of the condition.
If none of the above are defined:-
NDEBUG ETL_ASSERT does nothing. Evaluates to 'true'.
Otherwise:-
ETL_ASSERT asserts if the condition fails. Evaluates to 'true'.
2015-12-11 19:02:47 +00:00
John Wellbelove
64c33cb4dd Moved non-user headers to private sub-directory. 2015-12-10 14:09:57 +00:00
John Wellbelove
5315945711 Converted to new error handling macro. 2015-09-13 20:55:43 +01:00
John Wellbelove
ddf0769854 Added get_iterator() methods 2015-08-28 20:29:03 +01:00
jwellbelove
24754127c8 Minor formatting 2015-03-27 07:20:41 +00:00
jwellbelove
b7180770f5 Added non-const iterator 2015-03-01 21:21:32 +00:00
jwellbelove
4277fbe95c Optimisations for bitset & knockon changes to pool . 2015-03-01 11:31:56 +00:00
jwellbelove
ae385d5561 Added Github link to copyright notice. 2015-02-22 13:23:18 +00:00
jwellbelove
f349ca416d Changed pool to use uninitialised buffer.
Changed pool to use uninitialised buffer instead of internal array.
Allocates and releases using placement new and destructors.
2015-01-18 20:06:19 +00:00
jwellbelove
29305ac39e Fixed #define guard 2014-12-22 00:54:05 +00:00
jwellbelove
7cf5784e86 Added 'is_in_pool' member function. 2014-12-11 11:45:15 +00:00
jwellbelove
e0e7d20a9b Hoisted pool functionality 2014-12-10 16:45:15 +00:00
jwellbelove
30f2ce1d30 Object pool 2014-12-08 20:15:44 +00:00