001 /* 002 * $Id: BinaryFunctor.java 2955 2010-01-01 12:50:44Z kredel $ 003 */ 004 005 package edu.jas.structure; 006 007 008 /** 009 * Binary functor interface. 010 * @param <C1> element type 011 * @param <C2> element type 012 * @param <D> element type 013 * @author Heinz Kredel 014 */ 015 016 public interface BinaryFunctor<C1 extends Element<C1>, 017 C2 extends Element<C2>, 018 D extends Element<D> > { 019 020 021 /** 022 * Evaluate. 023 * @return evaluated element. 024 */ 025 public D eval(C1 c1, C2 c2); 026 027 }