This library applies caching to Kotlin functions, thus reducing the count of function executions.
That is, each time a function is invoked, library applies a caching behavior that checks whether function has been already executed with passed arguments. If it has been executed, the cached result is returned without having to execute the actual function. If function has not been executed, then it is executed, and the result is cached and returned to the consumer. Next time when function is invoked, the cached result is returned. This way, expensive methods can be executed only once for a given set of parameters and the result reused without having to actually execute function again.
Source code is located on GitHub