digitalmars.D.learn - Return type depends on his argument's template
- TSalm (16/16) Jul 05 2008 Hello,
- Simen Kjaeraas (13/29) Jul 05 2008 If I understand you correctly, this can be done like so:
- TSalm (3/41) Jul 06 2008 Great !
Hello,
Is there a way to do this :
/* ------------------------------------- */
class A(T)
{
// some methods
}
class B
{
T getValue( A(T) a ) // <-- Here, the type of the return value
// is the type T of A(T)
{ /* some code */ }
}
/* ------------------------------------- */
thanks in advance,
TSalm
Jul 05 2008
TSalm <tsalm free.fr> wrote:
Hello,
Is there a way to do this :
/* ------------------------------------- */
class A(T)
{
// some methods
}
class B
{
T getValue( A(T) a ) // <-- Here, the type of the return value
// is the type T of A(T)
{ /* some code */ }
}
/* ------------------------------------- */
thanks in advance,
TSalm
If I understand you correctly, this can be done like so:
class A(T)
{
}
class B
{
T getValue(U : A!(T), T)(U a)
{
// some code
}
}
-- Simen
Jul 05 2008
Great ! Thanks Simen On Sat, 05 Jul 2008 11:34:29 +0200, Simen Kjaeraas wrote:TSalm <tsalm free.fr> wrote:Hello, Is there a way to do this : /* ------------------------------------- */ class A(T) { // some methods } class B { T getValue( A(T) a ) // <-- Here, the type of the return value // is the type T of A(T) { /* some code */ } } /* ------------------------------------- */ thanks in advance, TSalmIf I understand you correctly, this can be done like so: class A(T) { } class B { T getValue(U : A!(T), T)(U a) { // some code } } -- Simen
Jul 06 2008








TSalm <tsalm free.fr>