Functions with Receiver

An in-depth explanation of functions with receiver, how they differ from extension functions, how they are represented and how to invoke them

Gabriel Shanahan
The Kotlin Primer

--

— — — — — — — — — — — — — — —

THE CURRENT VERSION OF THIS ARTICLE IS PUBLISHED HERE.

— — — — — — — — — — — — — — —

Tags: #FUNDAMENTAL CONCEPT

This article is part of the Kotlin Primer, an opinionated guide to the Kotlin language, which is indented to help facilitate Kotlin adoption inside Java-centric organizations. It was originally written as an organizational learning resource for Etnetera a.s. and I would like to express my sincere gratitude for their support.

It is recommended to read the Introduction before moving on. Check out the Table of Contents for all articles.

Since Kotlin has function types and function literals, it is natural to ask if the concept of extension functions has an equivalent counterpart among them. It turns out that Kotlin has both function types with receiver and function literals with receiver. The result of instantiating a function type with receiver is called a function with receiver. These can be among the most…

--

--