1 /***************************************************************************** 2 * Copyright (C) Codehaus.org. All rights reserved. * 3 * ------------------------------------------------------------------------- * 4 * The software in this package is published under the terms of the BSD * 5 * style license a copy of which has been included with this distribution in * 6 * the LICENSE.txt file. * 7 *****************************************************************************/ 8 /* 9 * Created on Mar 21, 2005 10 * 11 * Author Ben Yu 12 * ZBS 13 */ 14 package jfun.yan; 15 16 /** 17 * Represents the "bind" function in monad. 18 * <p> 19 * Codehaus.org. 20 * 21 * @author Ben Yu 22 * 23 */ 24 public interface Binder<From, To> extends java.io.Serializable{ 25 /** 26 * Creates a Creator object according to a value. 27 * This value is typically a component instance created 28 * from another Component object. 29 * @param v the value. 30 * @return the Creator object. 31 * @throws Throwable if any error happens in the bind. 32 */ 33 jfun.yan.Creator<To> bind(From v) 34 throws Throwable; 35 } 36