edits
[iotcloud.git] / version2 / src / C / array.h
index a456fef5e697d7480addca664d896495ea1fb667..b9d719628c41c2ad9c90990e034c881c5a8042e3 100644 (file)
@@ -1,6 +1,7 @@
 #ifndef ARRAY_H
 #define ARRAY_H
 #include <inttypes.h>
+#include "common.h"
 
 typedef uint32_t uint;
 
@@ -72,4 +73,13 @@ private:
        type *array;
        uint size;
 };
+
+template<typename type>
+void System_arraycopy(Array<type> * src, int32_t srcPos, Array<type> *dst, int32_t dstPos, int32_t len) {
+       if (srcPos + len > src->length() ||
+                       dstPos + len > dst->length())
+               ASSERT(0);
+       uint bytesToCopy = len * sizeof(type);
+       memcpy(&dst->internalArray()[dstPos], &src->internalArray()[srcPos], bytesToCopy);
+}
 #endif