UFCS and "with" statement

Rob T alanb at ucora.com
Wed Jun 12 21:25:31 PDT 2013


On Wednesday, 12 June 2013 at 11:05:22 UTC, bearophile wrote:
> Rob T:
>
>> Rather disappointing that this fails. Anyone know if this is 
>> an expected limitation of UFCS or a bug?
>
> Probably no one thought on this case. Why do you think it's 
> useful?
>
> Bye,
> bearophile

If we're to use UFCS as a means to externally extend classes and 
structs, then UFCS should work as an extension under a with 
statement, otherwise UFCS is not living up to its full potential.

struct S
{
    void a(){ ... }
    void b(){ ... }
    void d(){ ... }
}

void c(S s){ ... }

void main()
{
   with (s)
   {
      a;
      b;
      c; // should be able to infer s.c just as it can infer s.b, 
etc
      d;
   }
}

--rt


More information about the Digitalmars-d-learn mailing list