On 2009-12-25 09:13:13 -0500, Andrei Alexandrescu <[email protected]> said:

Anyway, I dropped the suggestion due to the array slice example, but I still think this is a serious problem with D.

If you could pass "this" by value instead of ref, it'd solve the problem nicely:

        struct MyRange {
                MyRange opSlice(int, int) @byvalue;
                void length(int) @property;
        }

Here you can call opSlice on a lvalue since it takes the "this" argument by value, but you can't call length(int) because it takes it by ref.

--
Michel Fortin
[email protected]
http://michelf.com/

Reply via email to