Terraria v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches

◆ FirstOrDefault< TSource >() [2/2]

static ? TSource System.Linq.ParallelEnumerable.FirstOrDefault< TSource > ( this ParallelQuery< TSource > source,
Func< TSource, bool > predicate )
inlinestatic

Definition at line 2011 of file ParallelEnumerable.cs.

2012 {
2013 if (source == null)
2014 {
2015 throw new ArgumentNullException("source");
2016 }
2017 if (predicate == null)
2018 {
2019 throw new ArgumentNullException("predicate");
2020 }
2022 QuerySettings querySettings = firstQueryOperator.SpecifiedQuerySettings.WithDefaults();
2023 if (firstQueryOperator.LimitsParallelism && querySettings.ExecutionMode != ParallelExecutionMode.ForceParallelism)
2024 {
2025 IEnumerable<TSource> source2 = firstQueryOperator.Child.AsSequentialQuery(querySettings.CancellationState.ExternalCancellationToken);
2026 IEnumerable<TSource> source3 = CancellableEnumerable.Wrap(source2, querySettings.CancellationState.ExternalCancellationToken);
2027 return ExceptionAggregator.WrapEnumerable(source3, querySettings.CancellationState).FirstOrDefault(ExceptionAggregator.WrapFunc(predicate, querySettings.CancellationState));
2028 }
2030 }

References System.Linq.predicate, and System.Linq.source.