コード例 #1
0
ファイル: GroupByContext.cs プロジェクト: SNUGDC/BeerWorld
 private static void LinkedDispose(ref GroupByContext <K, T> context, out Option <Grouping <K, T> > next)
 {
     next = new Option <Grouping <K, T> >();
     context.bd.Release();
     if (context.release)
     {
         context.lookup.DisposeInBackground();
     }
 }
コード例 #2
0
ファイル: GroupByContext.cs プロジェクト: SNUGDC/BeerWorld
        private static void LinkedSkip(ref GroupByContext <K, T> context, out Option <Grouping <K, T> > next)
        {
            context.bd.DetectBacktrack();

            if (context.runner == null)
            {
                next = new Option <Grouping <K, T> >();
                context.bd.Release();
                if (context.release)
                {
                    context.lookup.DisposeInBackground();
                }
            }
            else
            {
                next = new Option <Grouping <K, T> >(
                    new Grouping <K, T>(context.runner.value,
                                        context.release ?
                                        context.lookup.RemoveValues(context.runner.value) :
                                        context.lookup.GetValues(context.runner.value)));
                context.runner = context.runner.next;
            }
        }
コード例 #3
0
ファイル: GroupByContext.cs プロジェクト: SNUGDC/BeerWorld
 private static void LinkedRemove(ref GroupByContext <K, T> context, out Option <Grouping <K, T> > next)
 {
     throw new NotSupportedException();
 }