new DIP47: Outlining member functions of aggregates

Maxim Fomin maxim at maxim-fomin.ru
Sat Sep 7 12:56:42 PDT 2013


On Saturday, 7 September 2013 at 17:00:08 UTC, Walter Bright 
wrote:
> Outlining of member functions is the practice of placing the 
> declaration of a member function in the struct/class/union, and 
> placing the definition of it at global scope in the module or 
> even in another module.
>
> http://wiki.dlang.org/DIP47

Many details were ommited. Just some of them, others were raised.

1) If you allow to have definition in external module (by the 
way, this point is not clear), how can you control name mangling?

2) Does outlining limited only to static functions?

3) With UFSC if you have a.foo you cannot know where to found 
foo(a) - it can be hidden in dozens of imports, and if there are 
public imports, the situation becomes even more complex.


More information about the Digitalmars-d mailing list