blob: 4b76b2552b428f8fa092c209426078d4eb08a001 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
|
using System;
using Marina.Domain.Interfaces;
namespace Marina.Domain {
public class Range< T > : IRange< T > where T : IComparable< T > {
private readonly T start;
private readonly T end;
public Range( T start, T end ) {
if ( start.CompareTo( end ) <= 0 ) {
this.start = start;
this.end = end;
}
else {
this.start = end;
this.end = start;
}
}
public T Start() {
return start;
}
public T End() {
return end;
}
public bool Contains( T value ) {
return value.CompareTo( start ) >= 0 && value.CompareTo( end ) <= 0;
}
}
}
|