Einar Johan Trøan Sømåen
5b1239eb93
COMMON: Make the Common::Array() constructor constexpr
...
This lets us have constexpr structs/classes that contain Common::Array
2023-04-29 13:10:23 +02:00
Cameron Cawley
4002c7bdde
COMMON: Add a version of Common::Array::resize with a fill value
2022-12-19 14:33:07 +02:00
Cameron Cawley
a55361b65d
COMMON: Add Common::Array::swap()
2022-12-18 23:36:09 +02:00
elasota
f1bc2b187c
COMMON: Optimize some array ops by hoisting storage pointer to a local so the compiler doesn't have to reload it every iteration.
2022-12-06 23:43:27 +01:00
Thierry Crozat
e36abe967e
COMMON: Move std::initializer_list to scummsys.h
2022-09-04 23:20:17 +01:00
Cameron Cawley
5a069277f9
COMMON: Add a range-based version of Common::Array::erase()
2022-08-22 20:28:53 +03:00
Eugene Sandulenko
abea37c9bb
ALL: Update ScummVM project license to GPLv3+
2021-12-26 18:48:43 +01:00
Eugene Sandulenko
c544e5119b
COMMON: Remove USE_CXX11 checks, it is now always present
2021-10-31 11:52:29 +02:00
Eugene Sandulenko
5e7fe2dc57
JANITORIAL: Replace spaces in indentation with tabs
2021-04-15 21:20:36 +02:00
Bartosz Gentkowski
3ff21ad8c2
DOXYGEN: Further doc updates in high priority files
...
Adding, editing, updating doxygen comments in header files:
- common/archive.h
- common/array.h
- common/config-manager.h
- common/list.h
- common/random.h
- common/rect.h
- common/savefile.h
2020-11-07 18:19:09 +00:00
Thierry Crozat
bb73c61999
COMMIT: Add missing destruction of elements when downsizing an Array
2020-10-29 20:47:24 +00:00
Vladimir Serbinenko
55559539af
common/array: Fix comment
...
Comment speaks about double-linked list but we actually have an array
2020-10-06 18:16:53 +02:00
Bartosz Gentkowski
b6c5d415ee
small edits, to be squashed
2020-10-05 13:43:50 +02:00
Bartosz Gentkowski
59fce86705
DOXYGEN: updates in first header files
...
Add and improve doxygen blocks in header files:
- achievements.h
- algorithm.h
- archive.h
- array.h
- bitstream.h
2020-10-05 13:43:50 +02:00
Bartosz Gentkowski
ec24687ce4
DOXYGEN: Add doxygen groups to header files in the common folder
...
Adding @defgroup and @ingroup doxygen tags into all headers
in the common folder that contain doxygen blocks.
This improves the structure, readability, and findability
of information in the resulting output.
This commit targets purely structure and does not deal with
the content of the currently existing doxygen documentation.
2020-10-04 18:25:50 +02:00
Thierry Crozat
786aac568b
COMMON: Add c++11 initializer list replacement when not available in std lib
...
The c++11 standard includes some features that do not only depend on the
compiler supporting it, but also the c++ standard library having support
for it. This is the case for the initializer list feature. So when we
compile with a modern compiler but using an old std lib we need a
replacement for it.
2020-10-03 15:51:14 +02:00
Thierry Crozat
a275522f89
COMMON: Add list initialization and move semantics to Array
2020-10-03 15:51:14 +02:00
Vladimir Menshakov
f63f424309
COMMON: Preserve the order of insertion for equal range of the keys.
2020-08-31 18:17:29 +01:00
Vladimir Menshakov
e7d7c67c69
COMMON: Allow something else than raw pointer to be used in SortedArray
2020-08-31 18:17:29 +01:00
Bastien Bouclet
955e18c648
COMMON: Use nullptr instead of NULL or 0 where appropriate
2018-05-10 08:35:46 +02:00
Colin Snover
f037d4df16
COMMON: Allow construction of Arrays of non-copyable members
...
Although the previous count-constructor would never make a copy of
a member at runtime, Array<T>::reserve *may* copy-construct, so
the compiler would forbid creation of arrays of NonCopyable objects
even when the array was created only once and then never resized
(and thus never actually tried to perform a copy-construction).
2017-10-06 22:10:50 -05:00
Colin Snover
5e2e6e9e8a
COMMON: Switch to compile-time checking of invalid SortedArray calls
...
Runtime error detection is error-prone and unnecessary.
2017-10-06 22:10:49 -05:00
Colin Snover
4938d5cc76
COMMON: Add standard data method to Common::Array
...
This matches the C++11 std::vector method of the same name, and
replaces usage of taking the address of the first element of an
array by &array[0] or &array.front() or &*array.begin(). The data
method is better than these usages because it can be used even
when the array is empty.
2017-09-30 11:17:53 +02:00
Colin Snover
c867a1834f
COMMON: Add standard count & count+copy array constructors
...
These are additions to match C++11 std::vector common init
patterns, to make Common::Array cover more common use cases where
C-style arrays are currently used (and should not be).
2017-09-30 11:17:53 +02:00
Eugene Sandulenko
603fccf74b
COMMON: Fixed SortedArray implementation
2016-06-04 13:50:15 +02:00
Eugene Sandulenko
cdbf10ca81
COMMON: Fix another warning.
...
We're shadowing the class variables with local ones.
2016-05-23 22:47:03 +02:00
Eugene Sandulenko
c383ed4104
COMMON: Remove const qualifiers.
...
We have to cast it back to void *, which loses const qualifier
2016-05-23 22:44:36 +02:00
Eugene Sandulenko
419211733e
COMMON: Fix warning
2016-05-23 22:41:21 +02:00
Eugene Sandulenko
3d89af272b
COMMON: Fix SortedArray implementation for empty array
2016-05-23 16:36:34 +02:00
Eugene Sandulenko
a6fd06074d
COMMON: Fix SortedArray implementation.
...
Had to use a modified bsearch for finding the nearest element.
2016-05-22 22:59:41 +02:00
Eugene Sandulenko
cc54c7723c
COMMON: Implement SortedArray
2016-05-22 22:12:59 +02:00
Colin Snover
7d54f0aaaf
COMMON: Add methods for inserting and erasing with iterators
...
This provides improved feature parity to Common::List and is used
in SCI32 engine.
2016-02-18 13:18:01 -06:00
Johannes Schickel
854e22b38b
COMMON: Make GPL headers consistent in themselves.
2014-02-18 02:39:33 +01:00
Johannes Schickel
89abab97e3
JANITORIAL: Remove trailing whitespaces.
...
Powered by:
git ls-files "*.cpp" "*.h" "*.m" "*.mm" | xargs sed -i -e 's/[ \t]*$//'
2012-09-26 04:17:55 +02:00
Johannes Schickel
417cd7625c
COMMON: Slight formatting fixes in array.h.
2012-02-22 20:00:11 +01:00
Johannes Schickel
d6ac369303
COMMON: Add a size_type to Array and take advantage of it.
...
size_type is an unsigned integer type and is used for all indices etc.
2012-02-22 19:59:26 +01:00
Johannes Schickel
f14eba23d9
COMMON: Improve storage management of Array.
...
Now our Array class distinguishs between initialized and uninitialized
objects. It furthermore always calls the destructor of no longer contained
elements. This should help with non-POD objects stored in our Array class.
Thanks to Bertrand for his feedback on this.
2011-11-16 19:28:02 +01:00
Christoph Mallon
c876e87efc
COMMON: Correct error message.
...
The message displays bytes, but capacity is the count of objects, so multiply by their size.
2011-08-07 15:19:07 +02:00
Christoph Mallon
79729d03e0
COMMON: Use correct format specifier.
2011-08-07 15:19:07 +02:00
Christoph Mallon
84220d2ca0
COMMON: Remove superfluous Common:: qualifiers.
2011-08-07 15:19:07 +02:00
Max Horn
7be9a57524
COMMON: Fix code formatting, rename stuff for consistency
2011-06-15 23:21:54 +02:00
Vladimir
e4c9ae7a54
COMMON: fixed resize
2011-06-15 17:30:43 +02:00
Vladimir
e3178397ce
COMMON: added assign(T*, T*)
2011-06-15 17:29:52 +02:00
Max Horn
88319a727a
COMMON: Fix inserting an array into itself under certain conditions
2011-05-16 15:23:17 +02:00
Willem Jan Palenstijn
ffd0b20af7
COMMON: Don't allocate zero-sized storage in array
2011-05-16 14:44:45 +02:00
Max Horn
9081ab4402
COMMON: Unify Array memory allocation
...
We also change how alloc failures are handled: Instead of using
assert(), which is usually disabled in release builds on various
platforms, we now *always* catch this situation and invoke error() if
necessary.
2011-05-16 14:22:54 +02:00
Max Horn
eedb2d721f
COMMON: Change Array::insert_aux to immediately assign newly allocated memory to _storage
2011-05-16 13:58:59 +02:00
Max Horn
85d5eec950
COMMON: Set _capacity to just _size in Common::Array::operator=
2011-05-16 13:50:06 +02:00
strangerke
69b1485a22
GIT: Clean up: Suppress SVN tags, now useless
2011-05-12 01:16:22 +02:00
Jordi Vilalta Prat
8388e0dfea
JANITORAL: Clean trailing whitespaces.
...
svn-id: r53160
2010-10-12 02:18:11 +00:00