001 // Copyright 2009 Waterken Inc. under the terms of the MIT X license 002 // found at http://www.opensource.org/licenses/mit-license.html 003 package org.waterken.serial; 004 005 import java.io.Serializable; 006 007 import org.joe_e.Struct; 008 import org.ref_send.promise.Eventual; 009 010 /** 011 * A {@link Series} factory. 012 */ 013 public final class 014 SeriesFactory extends Struct implements Serializable { 015 static private final long serialVersionUID = 1L; 016 017 private final Eventual _; 018 019 private 020 SeriesFactory(final Eventual _) { 021 this._ = _; 022 } 023 024 /** 025 * Constructs an instance. 026 * @param _ eventual operator 027 */ 028 static public SeriesFactory 029 make(final Eventual _) { return new SeriesFactory(_); } 030 031 /** 032 * Constructs a series. 033 * @param <T> value type 034 */ 035 public <T> Series<T> 036 makeSeries() { return Serial.make(_); } 037 }