On Mon, 25 Jan 2010 09:59:42 +0100, Pelle Månsson
<pelle.mans...@gmail.com> wrote:
On 01/23/2010 12:29 AM, strtr wrote:
Simen kjaeraas Wrote:
Not tested, but they should work:
if ( anySame( var, a, b, c, d ) ) {
}
if ( allSame( var, a, b, c, d ) ) {
}
A lot prettier.
I thought there would be a generic (basic) solution to this which I
just didn't know about but maybe I actually do know the basics by now :)
--
Simen
If we get opIn_r for arrays, you can do
if (var in [a, b, c, d]) {
}
Which I find a lot prettier.
Is this good enough?
struct CheckIf( T ) {
T payload;
bool opIn( T[] rhs ) {
foreach ( e; rhs ) {
if ( e == payload ) {
return true;
}
}
return false;
}
}
CheckIf!( T ) checkIf( T )( T rhs ) {
return CheckIf!( T )( rhs );
}
if ( checkIf( true ) in [ false, true, false ] ) {
}
--
Simen