/// <inheritdoc/> protected override Provider VisitTake(TakeProvider provider) { OnRecursionEntrance(provider); var source = VisitCompilable(provider.Source); OnRecursionExit(provider); if (source == provider.Source) { return(provider); } return(new TakeProvider(source, provider.Count)); }
/// <summary> /// Visits <see cref="TakeProvider"/>. /// </summary> /// <param name="provider">Take provider.</param> protected abstract Provider VisitTake(TakeProvider provider);