Here is my code:
public class Range<TNum> where TNum : IComparable
{
public TNum From { get; set; }
public TNum To { get; set; }
}
public class MarkableRange<TNum> where TNum : IComparable
{
private readonly List<Range<TNum>> _markedRanges = new List<Range<TNum>>();
public void MarkOne(TNum number)
{
_markedRanges.Where(r => number >= r.From && number <= r.To);
}
}
compiler says that it cannot apply operator >= on operands in number >= r.From
and number <= r.To
I could get away with List<Tuple<TNum, TNum>>
but i wanted something more meaningful.
So is it me who did something wrong or c# compiler not that smart to understand my intention?