Daniel Keep:

> This is why interfaces cannot be implemented by structs in D: it would
> require structs to grow magical hidden fields, which is explicitly
> against the stated purpose of structs: plain old data.

In D2 if you define a struct inside a function it (in theory) grows an hidden 
field, see Nested Structs here:
http://www.digitalmars.com/d/2.0/struct.html

I have written in theory because in practice the size is the same :-) And the 
following code doesn't compile, static structs are not implemented yet it seems:

void foo() {
    static struct Inner {
        int x;
    }
}

Walter needs an automatic way to test code snippets inside the docs...

Bye,
bearophile

Reply via email to