001 package fj; 002 003 /** 004 * A transformation or function from <code>A</code> to <code>B</code>. This type can be represented 005 * using the Java 7 closure syntax. 006 * 007 * @version %build.number%<br> 008 * <ul> 009 * <li>$LastChangedRevision: 5 $</li> 010 * <li>$LastChangedDate: 2008-12-06 16:49:43 +1000 (Sat, 06 Dec 2008) $</li> 011 * </ul> 012 */ 013 public interface F<A, B> { 014 /** 015 * Transform <code>A</code> to <code>B</code>. 016 * 017 * @param a The <code>A</code> to transform. 018 * @return The result of the transformation. 019 */ 020 B f(A a); 021 }