On Monday, 29 February 2016 at 19:56:20 UTC, Jesse Phillips wrote:
I've used this pattern.
./projectA/lib/math/algo.d
./projectA/lib/math/lcp.d
./projectA/lib/math/optimize.d
./projectA/gui/main.d
./projectB/app/render/gfx.d
./projectB/app/render/algo.d
./projectB/lib/math/algo.d
./projectB/lib/math/lcp.d
./projectB/lib/math/optimize.d
./projectB/main.d
Dub doesn't like me too much, but in general it works.
Note that it doesn't matter where your modules live, if they
have the declared module name in the file:
module math.optimize;
If DMD reads this file all your imports should look like:
import math.optimize;
Even if the file is in app/physics/math.
Yeah, I'm using this pattern too at the moment ;
Although, I'm trying to avoid having these redundant module
declaration directives at the beginning of each of my library
files.