test

Wed, 02 Jan 2013 23:57:46 +0200

author
Teemu Piippo <crimsondusk64@gmail.com>
date
Wed, 02 Jan 2013 23:57:46 +0200
changeset 70
fc257920ac00
parent 69
29a3e669d648
child 71
11f23fabf8a6

test

array.h file | annotate | diff | comparison | revisions
common.h file | annotate | diff | comparison | revisions
--- a/array.h	Wed Dec 19 22:01:42 2012 +0200
+++ b/array.h	Wed Jan 02 23:57:46 2013 +0200
@@ -46,6 +46,13 @@
 #define ITERATE_SUBSCRIPTS(link) \
 	for (link = data; link; link = link->next)
 
+#define foreach_counter(NAME) \
+	(int)(reinterpret_cast<int> (foreach_counter##NAME) / sizeof (foreach_counter##NAME))
+#define foreach(T,NAME,ARRAY) \
+	if (ARRAY.size() > 0) for (T NAME = ARRAY[0], *foreach_counter##NAME = 0; \
+		foreach_counter(NAME) < (int)(ARRAY.size()); \
+		NAME = ARRAY[reinterpret_cast<int> (++foreach_counter##NAME) / sizeof (foreach_counter##NAME)])
+
 // Single element of an array
 template <class T> class arrayElement {
 public:
@@ -180,4 +187,4 @@
 	}
 	
 	arrayElement<T>* data;
-};
\ No newline at end of file
+};
--- a/common.h	Wed Dec 19 22:01:42 2012 +0200
+++ b/common.h	Wed Jan 02 23:57:46 2013 +0200
@@ -183,4 +183,4 @@
 	return uni.b[b];
 }
 
-#endif // __COMMON_H__
\ No newline at end of file
+#endif // __COMMON_H__

mercurial