/*
 *  @author Ranides Atterwim <ranides@gmail.com>
 *  @copyright Ranides Atterwim
 *  @license WTFPL
 *  @url http://ranides.net/projects/assira
 */

package net.ranides.assira.generic;

/**
 * Dwukierunkowa funkcja tożsamościowa.
 * @param <T> 
 * @author ranides
 */
public class IdentFunction<T> implements BiFunction<T, T> {

    /**
     * Odwzorowanie tożsamościowe.
     * @param source
     * @return source
     */
    @Override
    public T apply(T source) {
        return source;
    }

    /**
     * Odwzorowanie tożsamościowe.
     * @param value
     * @return value
     */
    @Override
    public T inverse(T value) {
        return value;
    }
    
}
