/// <inheritdoc/> protected override Provider VisitSort(SortProvider provider) { OnRecursionEntrance(provider); var source = VisitCompilable(provider.Source); var order = OnRecursionExit(provider); if (source == provider.Source) { return(provider); } return(new SortProvider(source, (order == null) ? provider.Order : (DirectionCollection <int>)order)); }
/// <summary> /// Visits <see cref="SortProvider"/>. /// </summary> /// <param name="provider">Sort provider.</param> protected abstract Provider VisitSort(SortProvider provider);