between and among: worth Phobosization?

Max Klyga email at domain.com
Mon Dec 16 14:16:08 PST 2013


On 2013-12-16 20:38:51 +0000, Andrei Alexandrescu said:

> bool between(T, U1, U2)(T v, U1 lo, U2 hi)
> {
>      return v >= lo && v <= hi;
> }
> 
> uint among(T, Us...)(T v, Us vals)
> {
>      foreach (i, U; Us)
>      {
>          if (v == vals[i]) return i + 1;
>      }
>      return 0;
> }
> 
> Add?
> 
> 
> Andrei

as Walter mentioned, between should have different versions. Aslo might 
be useful to have a generalized
Range type (not to be confused with iteration ranges). Having used 
Guava range [1] type, I can say it was very useful (especially 
implementing a predicate interface, enabling filtering with a range)

1. https://code.google.com/p/guava-libraries/wiki/RangesExplained



More information about the Digitalmars-d mailing list