コード例 #1
0
        public void GivenIsAIntervalWithAStartingtimeOfAndAEndingtimeOf(string startMomentStr, string endMomentStr)
        {
            var startMoment = Moment.Parse(startMomentStr);
            var endMoment = Moment.Parse(endMomentStr);

            var interval = new Interval(startMoment, endMoment);

            _intervals.Push(interval);
        }
コード例 #2
0
ファイル: Interval.cs プロジェクト: duffleit/MarsTimeModule
        public IntervalRelation Compare(Interval intervalToCompare)
        {
            Func<Interval, Interval, bool> isNested = (start, end) => (start._startMoment <= end._startMoment && start._endMoment >= end._endMoment);

            if (intervalToCompare._endMoment < _startMoment || _endMoment < intervalToCompare._startMoment) return IntervalRelation.Disjoint;
            if (intervalToCompare._endMoment <= _startMoment || _endMoment <= intervalToCompare._startMoment) return IntervalRelation.Touch;
            if (isNested(this, intervalToCompare) || isNested(intervalToCompare, this)) return IntervalRelation.Nested;

            return IntervalRelation.Overlap;
        }