public ImmutableTimeRange(ImmutableTimeRange source) : this(source.Start, source.End) { }
private bool StartIsInRangeOf(ImmutableTimeRange other) { return(Start >= other.Start && Start <= other.End); }
public bool Consumes(ImmutableTimeRange other) { return((other.Start >= Start) && (other.End <= End)); }
private bool EndIsInRangeOf(ImmutableTimeRange other) { return(End >= other.Start && End <= other.End); }
public bool OverLaps(ImmutableTimeRange other) { return(StartIsInRangeOf(other) || EndIsInRangeOf(other) || Consumes(other)); }