/* Ċ Ġ* ĠCopyright Ġ 2 0 1 0 - 2 0 2 1 ĠJetBrains Ġs . r . o . Ġand ĠKotlin ĠProgramming ĠLanguage Ġcontributors . Ċ Ġ* ĠUse Ġof Ġthis Ġsource Ġcode Ġis Ġgoverned Ġby Ġthe ĠApache Ġ 2 . 0 Ġlicense Ġthat Ġcan Ġbe Ġfound Ġin Ġthe Ġlicense / LICENSE . txt Ġfile . Ċ Ġ*/ Ċ Ċ package Ġorg . jetbrains . kotlin . idea . frontend . api . fir . generator Ċ Ċ import Ġorg . jetbrains . kotlin . util . Smart Printer Ċ import Ġkotlin . reflect . K Class Ċ import Ġkotlin . reflect . K Type Ċ Ċ internal Ġfun ĠSmart Printer . print Type With Short Names ( type : ĠK Type ) Ġ{ ĊĠĠĠ Ġfun Ġtype Conversion ( type : ĠK Type ): ĠString Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġsimple Name Ġ= Ġ( type . classifier Ġas ĠK Class < *> ). simple Name !! ĊĠĠĠĠĠĠĠ Ġreturn Ġif Ġ( type . arguments . isEmpty ()) Ġsimple Name ĊĠĠĠĠĠĠĠ Ġelse Ġsimple Name Ġ+ Ġtype . arguments . join ToString ( separator Ġ= Ġ", Ġ", Ġprefix Ġ= Ġ"< ", Ġpostfix Ġ= Ġ"> ") Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġwhen Ġ( val Ġtype Argument Ġ= Ġit . type ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġnull Ġ-> Ġ"*" ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġelse Ġ-> Ġtype Conversion ( type Argument ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĠĠĠ Ġprint ( type Conversion ( type )) Ċ } Ċ