On Wednesday, 27 April 2016 at 18:34:18 UTC, Artur Skawina wrote:
[...]void foo (Matrix matrix, SameType e1, SameType e2) { ref M() { return matrix.rawArr; } ref Ex1() { return e1.someProperties.someModulusX; } ref Ey1() { return e1.someProperties.someModulusY; } ref Ex2() { return e2.someProperties.someModulusX; } ref Ey2() { return e2.someProperties.someModulusY; } ref v() { return e1.someProperties.aRatio; } foreach (i; ...) foreach (j; ...) { M[...] = Ex1 > Ex2 ?1/v^^2 * sqrt(v * (Ex1 + Ex2)^^2 + v^^2 * (Ey1 - Ey2)^^2) : 1/v^^2 * sqrt(v * (Ex1 + Ex2)^^2 + v^^2 * (Ey1 + Ey2)^^2) ;} } artur
Unless any of the properties is an enum or, well, a @property, and I'd expect both in such case.
