changeset 1418:5cc974ee1e2f

Re: Compile time function execution... Lionello Lunesu <lio@lunesu.remove.com> 2007-02-16 http://www.digitalmars.com/webnews/newsgroups.php?group=digitalmars.D&article_id=48917
author thomask
date Sun, 11 Mar 2007 11:17:23 +0000
parents b9844b283021
children 5449d3b4d30c
files run/i/interpret_01_A.d run/i/interpret_01_B.d
diffstat 2 files changed, 65 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/run/i/interpret_01_A.d	Sun Mar 11 11:17:23 2007 +0000
@@ -0,0 +1,32 @@
+// $HeadURL$
+// $Date$
+// $Author$
+
+// @author@	Lionello Lunesu <lio@lunesu.remove.com>
+// @date@	2007-02-16
+// @uri@	http://www.digitalmars.com/webnews/newsgroups.php?group=digitalmars.D&article_id=48917
+// @desc@	Re: Compile time function execution...
+
+module dstress.run.i.interpret_01_A;
+
+template eval(A...) {
+	alias A eval;
+}
+
+char[] trimfirst(char[] s){
+        int x = 0;
+        foreach (char each; s) {
+                if (each != ' ')
+                        return s[x .. $];
+                x++;
+        }
+        return s;
+}
+
+int main(){
+	char[] a = eval!(trimfirst(" test"))[0];
+	if(a != "test"){
+		assert(0);
+	}
+	return 0;
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/run/i/interpret_01_B.d	Sun Mar 11 11:17:23 2007 +0000
@@ -0,0 +1,33 @@
+// $HeadURL$
+// $Date$
+// $Author$
+
+// @author@	Lionello Lunesu <lio@lunesu.remove.com>
+// @date@	2007-02-16
+// @uri@	http://www.digitalmars.com/webnews/newsgroups.php?group=digitalmars.D&article_id=48917
+// @desc@	Re: Compile time function execution...
+
+module dstress.run.i.interpret_01_B;
+
+template eval(A...) {
+	alias A eval;
+}
+
+char[] trimfirst(char[] s){
+        int x = 0;
+        foreach (char each; s) {
+                if (each != ' '){
+                        return s[x .. $];
+		}
+                x++;
+        }
+        return s;
+}
+
+int main(){
+	char[] a = eval!(trimfirst(" test"))[0];
+	if(a != "test"){
+		assert(0);
+	}
+	return 0;
+}