aboutsummaryrefslogtreecommitdiff
path: root/common/array.h
diff options
context:
space:
mode:
authorWillem Jan Palenstijn2010-10-03 10:49:42 +0000
committerWillem Jan Palenstijn2010-10-03 10:49:42 +0000
commitf98536eef5b24bf98730c3b555aeb63ed9de0927 (patch)
tree15fb88e221e8eb64e4fe60e53d64056e57778911 /common/array.h
parent694758fd2a0e98513c436e02cdf13d690fe9565d (diff)
downloadscummvm-rg350-f98536eef5b24bf98730c3b555aeb63ed9de0927.tar.gz
scummvm-rg350-f98536eef5b24bf98730c3b555aeb63ed9de0927.tar.bz2
scummvm-rg350-f98536eef5b24bf98730c3b555aeb63ed9de0927.zip
SCI: Allow multiple word groups in parser
In SCI01 and up, each typed word may be interpreted as multiple class,group pairs. This patch adds support to the vocabulary and parser. It uses the matcher support added in r52985. This fixes parser issues in German LSL3, but needs testing. svn-id: r52989
Diffstat (limited to 'common/array.h')
-rw-r--r--common/array.h6
1 files changed, 6 insertions, 0 deletions
diff --git a/common/array.h b/common/array.h
index 4cc5369f9f..792a5ac5b2 100644
--- a/common/array.h
+++ b/common/array.h
@@ -150,6 +150,12 @@ public:
insert_aux(_storage + idx, &element, &element + 1);
}
+ void insert_at(int idx, const Array<T> &array) {
+ assert(idx >= 0 && (uint)idx <= _size);
+ insert_aux(_storage + idx, array.begin(), array.end());
+ }
+
+
T remove_at(int idx) {
assert(idx >= 0 && (uint)idx < _size);
T tmp = _storage[idx];