@ file : Jvm Name (" Extension Functions ") Ċ Ċ package Ġcom . github . x term i 2 . kotlin . playground Ċ Ċ /** Ċ Ġ* Ġ@ author ĠAnd reas ĠK ee fer Ċ Ġ*/ Ċ fun Ġmain () Ġ{ ĊĠĠĠ Ġ// Ġextension Ġfunctions Ġare Ġa Ġsynt act ical Ġill usion ĊĊĠĠĠ Ġ// Ġthis Ġis Ġour Ġ" receiver Ġobject " ĊĠĠĠ Ġval Ġs Ġ= Ġ" lower " ĊĠĠĠ Ġprintln ( s . my Upper ()) ĊĊĠĠĠ Ġ// Ġinline Ġfunction ĊĠĠĠ ĠCustomer (" E li se "). do Something WithName Ġ{ Ġname Ġ-> Ġprintln ( name . my Upper ()) Ġ} Ċ } Ċ Ċ // Ġ" receiver Ġtype " Ġis ĠString Ġclass Ċ // Ġin Ġa Ġextension Ġfunction Ġevery Ġpublic Ġthing Ġfrom Ġthe Ġreceiver Ġtype Ġcan Ġbe Ġreferenced Ċ fun ĠString . my Upper (): ĠString Ġ= Ġthis . toUpperCase () Ġ// Ġ" this " Ġcan Ġbe Ġremoved ĊĊ Ċ class ĠCustomer ( val Ġname : ĠString ) Ġ{ ĊĠĠĠ Ġ// Ġa Ġinline Ġfunction Ġis Ġnot Ġcompiled Ġas Ġa Ġfunction , Ġit 's Ġbody Ġis Ġdirectly Ġplaced Ġat Ġthe Ġcaller ĊĠĠĠ Ġ// Ġthis Ġis Ġjust Ġa Ġoptimization Ġand Ġis Ġoften Ġdone Ġby Ġthe ĠJVM Ġeven Ġif Ġthe Ġinline Ġkeyword Ġis Ġnot Ġused ĊĠĠĠ Ġ// Ġinline Ġfunctions Ġwork Ġbest Ġwith Ġlambda Ġparameters ĊĠĠĠ Ġinline Ġfun Ġdo Something WithName ( action : Ġ( String ) Ġ-> ĠUnit ) Ġ{ ĊĠĠĠĠĠĠĠ Ġaction ( name ) ĊĠĠĠ Ġ} Ċ } Ċ