// Copyright (c) Microsoft. All rights reserved. // Licensed under the MIT license. See LICENSE file in the project root for full license information. // =+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+ // // IReceivableSourceBlock.cs // // // The base interface for all source blocks. // // =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- using System.Collections.Generic; namespace System.Threading.Tasks.Dataflow { /// Represents a dataflow block that supports receiving of messages without linking. /// Specifies the type of data supplied by the . public interface IReceivableSourceBlock : ISourceBlock { // IMPLEMENT IMPLICITLY /// bool TryReceive(Predicate filter, out TOutput item); // IMPLEMENT IMPLICITLY IF BLOCK SUPPORTS RECEIVING MORE THAN ONE ITEM, OTHERWISE EXPLICITLY /// bool TryReceiveAll(out IList items); } }