Microsoft.Automata.Internal.Utilities.HelperPredicates.RangesToCode3 C# (CSharp) Method

RangesToCode3() private static method

private static RangesToCode3 ( uint>.Pair ranges, int first, int last ) : string
ranges uint>.Pair
first int
last int
return string
        private static string RangesToCode3(Pair<uint, uint>[] ranges, int first, int last)
        {
            //we know that c >= ranges[first].Item1
            if (first == last)
                return string.Format("(c <= 0x{0:X})", ranges[first].Item2);
            else
            {
                int middle = (first + last + 1) / 2;
                string s1 = RangesToCode3(ranges, first, middle - 1);
                string s2 = RangesToCode3(ranges, middle, last);
                return string.Format("(c < 0x{0:X} ? {1} : {2})", ranges[middle].Item1, s1, s2);
            }
        }