new DIP47: Outlining member functions of aggregates

Joseph Rushton Wakeling joseph.wakeling at webdrake.net
Tue Sep 10 00:01:35 PDT 2013


On 10/09/13 04:09, Michel Fortin wrote:
> Is the D module system file-granular or module-granular? I always thought the
> later. Putting the implementation of functions in the .d file while the
> declarations are in the corresponding .di does not change things much: it's
> still one module, but it's one module split over two files.
>
> It also helps solve another problem: the problem where you're shipping a library
> and want to force some things to not be inlined. This is needed if the library
> is to be swapped for another version without having to recompile all client
> code. You can do this currently by hand-crafting .di files, but it's a pain to
> keep it manually in sync with the .d file.

Is it possible to manually craft some parts of the .di file, while being able to 
rely on the compiler to automatically add any module contents that aren't 
manually declared?

If so it might be the best solution to everyone's concerns.


More information about the Digitalmars-d mailing list