001/* 002 * $Id: BinaryFunctor.java 4056 2012-07-26 17:44:13Z kredel $ 003 */ 004 005package 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 016public interface BinaryFunctor<C1 extends Element<C1>, C2 extends Element<C2>, D extends Element<D>> { 017 018 019 /** 020 * Evaluate. 021 * @return evaluated element. 022 */ 023 public D eval(C1 c1, C2 c2); 024 025}