Mercurial > projects > ldc
diff tangotests/t.d @ 143:336ec4f4bbb3 trunk
[svn r147] tango.io.Console is now working. True this time :) Yay!
author | lindquist |
---|---|
date | Fri, 25 Jan 2008 01:42:36 +0100 |
parents | aeddd4d533b3 |
children |
line wrap: on
line diff
--- a/tangotests/t.d Wed Jan 23 15:48:19 2008 +0100 +++ b/tangotests/t.d Fri Jan 25 01:42:36 2008 +0100 @@ -1,33 +1,34 @@ interface MyInterface { - void func(); -} - -abstract class MyBaseClass : MyInterface -{ - abstract void func(); + int func(); } -class MyClass : MyBaseClass +class MyClass : MyInterface { - void func() + int var; + int func() { + return var; } +} - MyBaseClass toBase() - { - return this; - } +void func1(MyInterface i) +{ + int delegate() dg = &i.func; + func2(dg); +} + +extern(C) int printf(char*, ...); + +void func2(int delegate() dg) +{ + int i = dg(); + printf("%d\n", i); } void main() { - printf("STARTING\n"); auto c = new MyClass; - printf("c = %p\n", c); - auto b = c.toBase; - printf("b = %p\n", b); - printf("FINISHED\n"); + c.var = 42; + func1(c); } - -extern(C) int printf(char*, ...);