Stupid little iota of an idea
    spir 
    denis.spir at gmail.com
       
    Thu Feb 10 03:22:29 PST 2011
    
    
  
On 02/09/2011 08:06 PM, Daniel Gibson wrote:
> Also using X in 1..4 is in D is pretty bad if you just want to check if 1<X<4
> (or even more when checking 1<X<100) because it has a much higher overhead -
> even though it may be technically O(1) because 4 or 100 is a constant) than just
> doing two comparisons. So IMHO using X in 1..4 or x in iota(1,4) should not be
> encouraged. (X in [1,3,4,8] is different.)
I don't understand your point, here. opIn (or rather opIn_r) ids just 2 
comparisons as well for whatever represents an interval i..j. Simulation below.
Denis
struct Interval {
     int min, maxPlusOne;
     bool opIn_r (int n) {
         return (n >= min) && (n < maxPlusOne);
     }
}
unittest {
     auto ii = Interval(1,4);
     auto ints = [-1,0,1,2,3,4,5];
     foreach (i ; ints) writefln ("%s ? %s", i, i in ii);
}
==>
-1 ? false
0 ? false
1 ? true
2 ? true
3 ? true
4 ? false
5 ? false
-- 
_________________
vita es estrany
spir.wikidot.com
    
    
More information about the Digitalmars-d
mailing list