Example #1
0
 public PathComponentEnumerator(string path, PathComparisonOption pathComparisonOption)
 {
     _pathComparisonOption = pathComparisonOption;
     _path  = path ?? string.Empty;
     _index = -1;
     _count = 0;
 }
Example #2
0
 public PathComponent(string path, int index, int count, PathComparisonOption pathComparisonOption)
 {
     _path  = path;
     _index = index;
     _count = count;
     _pathComparisonOption = pathComparisonOption;
 }
Example #3
0
 public CustomPathComparer(PathComparisonOption pathComparisonOption) {
   _comparison = (pathComparisonOption == PathComparisonOption.CaseInsensitive
     ? StringComparison.OrdinalIgnoreCase
     : StringComparison.Ordinal);
   _comparer = (pathComparisonOption == PathComparisonOption.CaseInsensitive
     ? StringComparer.OrdinalIgnoreCase
     : StringComparer.Ordinal);
 }
 public CustomPathComparer(PathComparisonOption pathComparisonOption)
 {
     _comparison = (pathComparisonOption == PathComparisonOption.CaseInsensitive
 ? StringComparison.OrdinalIgnoreCase
 : StringComparison.Ordinal);
     _comparer = (pathComparisonOption == PathComparisonOption.CaseInsensitive
 ? StringComparer.OrdinalIgnoreCase
 : StringComparer.Ordinal);
 }
Example #5
0
 public PathComparer(PathComparisonOption option)
 {
     _pathComparer = new CustomPathComparer(option);
 }
Example #6
0
 public PathComparer(PathComparisonOption option) {
   _pathComparer = new CustomPathComparer(option);
 }
Example #7
0
        private static int CompareSubStrings(string strA, int indexA, int lengthA, string strB, int indexB, int lengthB, PathComparisonOption pathComparisonOption)
        {
            // Compare the common prefix of both strings.
            var comparison = (pathComparisonOption == PathComparisonOption.CaseInsensitive
        ? StringComparison.OrdinalIgnoreCase
        : StringComparison.Ordinal);
            var count  = Math.Min(lengthA, lengthB);
            int result = String.Compare(strA, indexA, strB, indexB, count, comparison);

            if (result != 0)
            {
                return(result);
            }

            // String have a common prefix. The shortest string is then considred the
            // "less than" one.
            return(lengthA - lengthB);
        }
Example #8
0
 public PathComponentSplitter(string path, PathComparisonOption pathComparisonOption)
 {
     _path = path;
     _pathComparisonOption = pathComparisonOption;
 }