public Transition(State start, State end, CharRange range, Type transitionType, int capture, int index) { Start = start; End = end; Range = range; TransitionType = transitionType; Capture = capture; Index = index; }
public bool AddRangeWithConflict(char begin, char end) { var range = new CharRange(begin, end); //交叉 foreach (var r in Ranges) { if (!(range < r || range > r)) { return(false); } } Ranges.Add(range); return(true); }
public Transition(State start, State end, CharRange range) : this(start, end, range, Type.Chars, 0, 0) { }
public Transition AddCharRange(State start, State end, CharRange range) { var transition = new Transition(start, end, range); AddInternal(start, end, transition); return transition; }
public bool Equals(CharRange obj) { return Begin == obj.Begin && End == obj.End; }
public bool IsOverlapped(CharRange rhs) { return !(this < rhs || this > rhs); }
public bool Equals(CharRange obj) { return(Begin == obj.Begin && End == obj.End); }
public bool IsOverlapped(CharRange rhs) { return(!(this < rhs || this > rhs)); }
public bool AddRangeWithConflict(char begin,char end) { var range = new CharRange(begin, end); //交叉 foreach (var r in Ranges) { if (!(range < r || range > r)) return false; } Ranges.Add(range); return true; }