WBF Academy
OOP Advanced 4 min read

Invoke Operator for Callable Objects

Make class instances behave like functions

Kotlin Academy

Kotlin Academy

Kotlin Engineer

5 months ago

Defining an invoke operator function on a class makes its instances callable with function syntax. This enables Strategy and Command patterns where validators, policies, or transformers are objects that can be stored, composed, and passed around. The plus operator further enables building complex validators from simpler ones using a combinator pattern.

#kotlin #invoke-operator #callable #strategy-pattern