コード例 #1
0
        private async Task <IEnumerable <RootIndexRow> > WriteValuesGroupToFile(IAsyncGrouping <string, KeyValuePair <string, string> > fileGroup,
                                                                                string originFilename)
        {
            var values = await fileGroup.OrderBy(kvp => kvp.Key).Select(kvp => kvp.Key).ToListAsync();

            var indexFileName = fileGroup.Key;

            return(await _indexFileWriter.UpdateIndexFileWithValues(values, indexFileName, originFilename));
        }
コード例 #2
0
 public TrackingGrouping(
     IAsyncGrouping <TKey, TOut> grouping,
     QueryContext queryContext,
     IList <EntityTrackingInfo> entityTrackingInfos,
     IList <Func <TIn, object> > entityAccessors)
 {
     _grouping            = grouping;
     _queryContext        = queryContext;
     _entityTrackingInfos = entityTrackingInfos;
     _entityAccessors     = entityAccessors;
 }
コード例 #3
0
        private static async Task <IGrouping <TKey, TElement> > AwaitGrouping <TKey, TElement>(
            IAsyncGrouping <TKey, TElement> asyncGrouping)
        {
            if (asyncGrouping is null)
            {
                throw new ArgumentNullException(nameof(asyncGrouping));
            }

            var key        = asyncGrouping.Key;
            var enumerable = await asyncGrouping.ConfigureAwait(false);

            return(new Grouping <TKey, TElement>(key, enumerable));
        }
コード例 #4
0
ファイル: Lookup.cs プロジェクト: ctaggart/Rx.NET
        Task <IAsyncGrouping <TKey, TElement>[]> IIListProvider <IAsyncGrouping <TKey, TElement> > .ToArrayAsync(CancellationToken cancellationToken)
        {
            var array = new IAsyncGrouping <TKey, TElement> [Count];
            var index = 0;
            var g     = _lastGrouping;

            if (g != null)
            {
                do
                {
                    g            = g._next;
                    array[index] = g;
                    ++index;
                }while (g != _lastGrouping);
            }

            return(Task.FromResult(array));
        }
コード例 #5
0
ファイル: Lookup.cs プロジェクト: jgyr789/reactive
        ValueTask <IAsyncGrouping <TKey, TElement>[]> IAsyncIListProvider <IAsyncGrouping <TKey, TElement> > .ToArrayAsync(CancellationToken cancellationToken)
        {
            cancellationToken.ThrowIfCancellationRequested();

            var array = new IAsyncGrouping <TKey, TElement> [Count];
            var index = 0;
            var g     = _lastGrouping;

            if (g != null)
            {
                do
                {
                    g            = g._next;
                    array[index] = g;
                    ++index;
                }while (g != _lastGrouping);
            }

            return(new ValueTask <IAsyncGrouping <TKey, TElement>[]>(array));
        }
コード例 #6
0
 public override SubtotalResult Create(IAsyncGrouping <string, Balance> grp) => new SubtotalUser(grp.Key);
コード例 #7
0
 public abstract SubtotalResult Create(IAsyncGrouping <T, Balance> grp);
コード例 #8
0
 public override SubtotalResult Create(IAsyncGrouping <int?, Balance> grp) => new SubtotalSubTitle(grp.Key);
コード例 #9
0
 private static AsyncGrouping <TKey, TElement> MapAsyncGroupToDynamicObjectGraph <TKey, TElement>(IAsyncGrouping <TKey, TElement> group)
 => group is AsyncGrouping <TKey, TElement> remoteLinqGroup
コード例 #10
0
 /// <summary>
 /// Enumerates the item.
 /// </summary>
 /// <param name="asyncGrouping">
 /// The async grouping.
 /// </param>
 /// <returns>
 /// The <see cref="IEnumerator{T}"/>.
 /// </returns>
 private static IEnumerator <IAsyncGrouping <TSource, TKey> > EnumerateItem(IAsyncGrouping <TSource, TKey> asyncGrouping)
 {
     yield return(asyncGrouping);
 }