summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorsmatz <smatz@openttd.org>2009-12-25 23:10:20 +0000
committersmatz <smatz@openttd.org>2009-12-25 23:10:20 +0000
commita7be7ebe808a1aba2ce9e5b6441fcdaa65419419 (patch)
treeb5f33cbef8ca6ade28a2e8f90fa9f6565a68be16 /src
parent4dbf08fc4b8b132f9448d9199b23eadf23df5fbb (diff)
downloadopenttd-a7be7ebe808a1aba2ce9e5b6441fcdaa65419419.tar.xz
(svn r18633) -Codechange: fortify SmallVector a bit more
Diffstat (limited to 'src')
-rw-r--r--src/core/smallvec_type.hpp10
1 files changed, 8 insertions, 2 deletions
diff --git a/src/core/smallvec_type.hpp b/src/core/smallvec_type.hpp
index 82ade860c..38fa6fe6e 100644
--- a/src/core/smallvec_type.hpp
+++ b/src/core/smallvec_type.hpp
@@ -54,7 +54,7 @@ public:
/**
* Remove all items from the list and free allocated memory.
*/
- void Reset()
+ FORCEINLINE void Reset()
{
this->items = 0;
this->capacity = 0;
@@ -76,6 +76,7 @@ public:
/**
* Append an item and return it.
+ * @return pointer to newly allocated item
*/
FORCEINLINE T *Append()
{
@@ -144,7 +145,8 @@ public:
return this->Find(item) != this->End();
}
- /** Removes given item from this map
+ /**
+ * Removes given item from this vector
* @param item item to remove
* @note it has to be pointer to item in this map. It is overwritten by the last item.
*/
@@ -223,6 +225,7 @@ public:
*/
FORCEINLINE const T *Get(uint index) const
{
+ assert(index < this->items);
return &this->data[index];
}
@@ -234,6 +237,7 @@ public:
*/
FORCEINLINE T *Get(uint index)
{
+ assert(index < this->items);
return &this->data[index];
}
@@ -245,6 +249,7 @@ public:
*/
FORCEINLINE const T &operator[](uint index) const
{
+ assert(index < this->items);
return this->data[index];
}
@@ -256,6 +261,7 @@ public:
*/
FORCEINLINE T &operator[](uint index)
{
+ assert(index < this->items);
return this->data[index];
}
};