Циклоп предлагает памятку для функций, поставщиков, вызовов, предикатов и методов расширения (через ссылки на методы) ( см. Javadoc )
например.
Учитывая переменную, которая называется, которая подсчитывает количество раз, когда наш метод фактически вызывается, мы можем видеть, что запомненная функция фактически выполняет метод только один раз.
int called = 0;
cached = Memoise.memoiseQuadFunction(this::addAll);
assertThat(cached.apply(1,2,3,4),equalTo(10));
assertThat(cached.apply(1,2,3,4),equalTo(10));
assertThat(called,equalTo(1));
private int addAll(int a,int b,int c, int d){
called++;
return a+b+c+d;
}