On 1/9/13, bearophile <bearophileHUGS at lycos.com> wrote: > If you define an inner static struct, its static methods can call > each other freely. You can also use a mixin template: mixin template S() { void test(ref int x) { x = test(); } int test() { return 1; } } void main() { mixin S; int x; test(x); assert(x == 1); }