Commit Graph

16 Commits

Author SHA1 Message Date
Mathew Sutcliffe
f60b58ccd2 using intptr_t as the size_type for containers
refs #92 fixes MSVC "possible loss of data" warning when compiling for 64bits
2014-02-17 16:37:02 +00:00
Mathew Sutcliffe
e52a4da826 refs #124 using override keyword in containers' pimpls 2014-02-08 14:20:39 +00:00
Mathew Sutcliffe
c966d487f0 refs #91 Doxygen fixes in containers, predicates, and plugins.
Fixed PREDEFINED config in Doxyfile, so Doxygen only sees the variadic predicates.
2014-02-08 14:20:38 +00:00
Mathew Sutcliffe
7c8aa8226d const corrections 2014-01-28 20:19:06 +00:00
Mathew Sutcliffe
d48d8ed951 refs #106, moved removeIf from CSequence to CContainerBase and added remove method in CCollection (CSequence already had a remove method) 2014-01-28 18:30:06 +00:00
Mathew Sutcliffe
1e153b45f0 refs #108, added find methods in CSequence and CCollection;
CSequence uses std::find, and CCollection uses the more efficient find method of the implementation type,
which requires that the implementation type be an associative container like QSet or std::set.
Modified CContainerBase::contains to use these new find methods.
2014-01-28 18:25:14 +00:00
Mathew Sutcliffe
d073681630 minor doxygen fixes 2014-01-28 01:50:30 +00:00
Mathew Sutcliffe
88f4a7186f fixed mistake with forgetting to call erase after std::remove 2014-01-27 00:48:14 +00:00
Mathew Sutcliffe
6f19d0a479 containers: added methods contains(), remove(), replace(), replaceOrAdd(),
corresponding to contains(), removeIf(), replaceIf(), and replaceOrAdd(), but overloaded for const T& as well as for predicates.
refs #106
2014-01-25 19:36:42 +00:00
Mathew Sutcliffe
33d555e151 moved removeIf from CContainerBase to CSequence because it can't work with non-sequential containers, fixes #106 2014-01-25 19:36:42 +00:00
Mathew Sutcliffe
3d3a43602f removed unnecessary \param and \return lines from doxygen comments for container classes, refs #91 2014-01-25 19:36:41 +00:00
Mathew Sutcliffe
405ad7165e Iterator classes: removed templated ctors and added static methods to replace them,
for consistency with the container classes and to avoid any potential infinite recursion with MSVC2010.
See also commit:6a9065b

Also fixed a mistake in CSequence and CCollection, where Pimpl::erase was calling the wrong version of m_impl.erase
reported by Roland.
2014-01-11 16:53:21 +00:00
Mathew Sutcliffe
6a9065b37f Container classes: removed templated ctors and added static methods to replace them.
This resolves an issue with infinite recursion and stack overflows in MSVC2010.
See also http://connect.microsoft.com/VisualStudio/feedback/details/522094/
2014-01-11 01:32:24 +00:00
Mathew Sutcliffe
4f4b77f2b2 CSequence: added sort method, an in-place companion to the sorted method
refs #81
2014-01-10 00:20:22 +00:00
Mathew Sutcliffe
08e978c8d6 moved from CContainerBase to CSequence those methods which only support sequential containers
refs #81
2014-01-10 00:20:21 +00:00
Mathew Sutcliffe
a57e640398 generic type-erased container types CSequence and CCollection, including predicate-based algorithms
refs #81
2014-01-08 00:59:31 +00:00