On Fri, 26 Dec 2008 20:15:30 +0100, Weed <resume...@mail.ru> wrote:

Can I at compile time check whether there is a facility method
(toString(), for example)?

Today I wrote:

                static if ( __traits(isArithmetic, Element) ) {
                    ret ~= toString(this[i,j]) ~ "\t";
                } else {
                    ret ~= this[i,j].toString ~ "\t";
                }

It works but it is wrong

I believe this works:

static if (is(typeof(this[i,j].toString))) {
        ret ~= this[i,j].toString;
} else {
        ret ~= toString(this[i,j]);
}

--
Simen

Reply via email to