示例#1
0
        public static Incomplete <T> StartWith <T>(Action <PipelineSink <T> > sourceAction)
        {
            PipelineCoordinator coordinator = new PipelineCoordinator();
            PipelineSink <T>    sink        = new PipelineSink <T>(coordinator);

            coordinator.AddInitialAction(() => sourceAction(sink));
            return(new Incomplete <T>(sink, coordinator));
        }
示例#2
0
        private static void Main(string[] args)
        {
            var pipeline = PipelineCoordinator.StartWith <int>(ProduceItems)
                           .Then <int>(FilterItems)
                           .Then <string>(TransformItems)
                           .EndWith(DumpItems);

            pipeline.Start();
        }
示例#3
0
 internal PipelineSink(PipelineCoordinator coordinator)
 {
     this.coordinator = coordinator;
 }
示例#4
0
 internal Incomplete(PipelineSink <T> currentSink, PipelineCoordinator coordinator)
 {
     this.currentSink = currentSink;
     this.coordinator = coordinator;
 }
示例#5
0
 public PipelineSource(PipelineCoordinator coordinator)
 {
     this.coordinator = coordinator;
 }