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

◆ StoreOutputItemsNonReorderedWithIteration()

void System.Threading.Tasks.Dataflow.TransformManyBlock< TInput, TOutput >.StoreOutputItemsNonReorderedWithIteration ( IEnumerable< TOutput > outputItems)
inlineprivate

Definition at line 363 of file TransformManyBlock.cs.

364 {
365 bool flag = _target.DataflowBlockOptions.MaxDegreeOfParallelism == 1 || _reorderingBuffer != null;
366 if (_target.IsBounded)
367 {
368 bool flag2 = false;
369 try
370 {
371 foreach (TOutput outputItem in outputItems)
372 {
373 if (flag2)
374 {
375 _target.ChangeBoundingCount(1);
376 }
377 else
378 {
379 flag2 = true;
380 }
381 if (flag)
382 {
383 _source.AddMessage(outputItem);
384 continue;
385 }
387 {
388 _source.AddMessage(outputItem);
389 }
390 }
391 return;
392 }
393 finally
394 {
395 if (!flag2)
396 {
397 _target.ChangeBoundingCount(-1);
398 }
399 }
400 }
401 if (flag)
402 {
403 foreach (TOutput outputItem2 in outputItems)
404 {
405 _source.AddMessage(outputItem2);
406 }
407 return;
408 }
409 foreach (TOutput outputItem3 in outputItems)
410 {
412 {
413 _source.AddMessage(outputItem3);
414 }
415 }
416 }
readonly ReorderingBuffer< IEnumerable< TOutput > > _reorderingBuffer

References System.Threading.Tasks.Dataflow.TransformManyBlock< TInput, TOutput >._reorderingBuffer, System.Threading.Tasks.Dataflow.TransformManyBlock< TInput, TOutput >._source, System.Threading.Tasks.Dataflow.TransformManyBlock< TInput, TOutput >._target, and System.Threading.Tasks.Dataflow.TransformManyBlock< TInput, TOutput >.ParallelSourceLock.

Referenced by System.Threading.Tasks.Dataflow.TransformManyBlock< TInput, TOutput >.StoreOutputItems(), and System.Threading.Tasks.Dataflow.TransformManyBlock< TInput, TOutput >.StoreOutputItemsReordered().