001package com.identityworksllc.iiq.common; 002 003import sailpoint.tools.GeneralException; 004 005/** 006 * Represents a function that takes three inputs and produces one output 007 * 008 * @param <A> The first parameter type 009 * @param <B> The second parameter type 010 * @param <C> The third parameter type 011 * @param <R> The output type 012 */ 013@FunctionalInterface 014public interface TriFunction<A, B, C, R> { 015 /** 016 * Applies this function to the given arguments 017 * 018 * @see java.util.function.Function#apply(Object) 019 */ 020 R apply(A a, B b, C c) throws GeneralException; 021}