package Ġarrow . meta . quotes . named declaration . stub . type parameter list owner Ċ Ċ import Ġarrow . meta . ph ases . analysis . Element Scope Ċ import Ġarrow . meta . quotes . Scope Ċ import Ġarrow . meta . quotes . Scoped List Ċ import Ġarrow . meta . quotes . Synt hetic Element Ċ import Ġarrow . meta . quotes . declaration . Property Accessor Ċ import Ġarrow . meta . quotes . modifier list owner . Type Reference Ċ import Ġorg . jetbrains . kotlin . name . Name Ċ import Ġorg . jetbrains . kotlin . psi . Kt Expression Ċ import Ġorg . jetbrains . kotlin . psi . Kt Parameter Ċ import Ġorg . jetbrains . kotlin . psi . Kt Property Ċ import Ġorg . jetbrains . kotlin . psi . Kt Property Delegate Ċ import Ġorg . jetbrains . kotlin . psi . Kt Type Parameter Ċ import Ġorg . jetbrains . kotlin . psi . Kt Type Reference Ċ import Ġorg . jetbrains . kotlin . psi . psi Util . modal ity Modifier Type Ċ import Ġorg . jetbrains . kotlin . psi . psi Util . visibility Modifier Type Ċ Ċ /** Ċ Ġ* Ġ< code > """ Ġ$ modal ity Ġ$ visibility Ġ$ val Or Var Ġ$ name Ġ$ returnType Ġ$ initializer Ġ""" . property </ code > Ċ Ġ* Ġ* Ċ Ġ* ĠA Ġtemplate Ġdestruct uring Ġ[ Scope ] Ġfor Ġa Ġ[ Kt Property ]. Ċ Ġ* Ċ Ġ* Ċ Ġ* Ġ``` Ċ Ġ* Ġimport Ġarrow . meta . Meta Ċ Ġ* Ġimport Ġarrow . meta . Plugin Ċ Ġ* Ġimport Ġarrow . meta . invoke Ċ Ġ* Ġimport Ġarrow . meta . quotes . Transform Ċ Ġ* Ġimport Ġarrow . meta . quotes . property Ċ Ġ* Ċ Ġ* Ġval ĠMeta . re format Property Setter : ĠPlugin Ċ Ġ* Ġ Ġget () Ġ= Ċ Ġ* ĠĠ Ġ" Re format ĠProperty ĠSetter " Ġ{ Ċ Ġ* ĠĠĠ Ġmeta ( Ċ Ġ* ĠĠĠĠ Ġproperty ({ Ġtrue Ġ}) Ġ{ Ġe Ġ-> Ċ Ġ* ĠĠĠĠĠ ĠTransform . replace ( Ċ Ġ* ĠĠĠĠĠĠ Ġreplacing Ġ= Ġe , Ċ Ġ* ĠĠĠĠĠĠ Ġnew Declaration Ġ= Ġ""" $ modal ity Ġ$ visibility Ġ$ val Or Var Ġ$ name Ġ$ returnType Ġ$ initializer Ċ Ġ* ĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ$ getter Ċ Ġ* ĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ$ setter Ċ Ġ* ĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ$ delegate """. property Ċ Ġ* ĠĠĠĠĠ Ġ) Ċ Ġ* ĠĠĠĠĠ Ġ} Ċ Ġ* ĠĠĠĠ Ġ) Ċ Ġ* ĠĠĠ Ġ} Ċ Ġ* Ġ``` Ċ Ġ*/ Ċ class ĠProperty ( ĊĠ Ġoverride Ġval Ġvalue : ĠK t Property , ĊĠ Ġval Ġmod ality : ĠName ? Ġ= Ġvalue . modal ity Modifier Type ()?. value ?. let ( Name :: identifier ), ĊĠ Ġval Ġvisibility : ĠName ? Ġ= Ġvalue . visibility Modifier Type ()?. value ?. let ( Name :: identifier ), ĊĠ Ġval Ġ`( type Parameters ) `: ĠScoped List < Kt Type Parameter > Ġ= ĠScoped List ( prefix Ġ= Ġ"< ", Ġvalue Ġ= Ġvalue . type Parameters ĊĠĠĠ Ġ?: ĠlistOf (), Ġpostfix Ġ= Ġ"> "), ĊĠ Ġval Ġreceiver : ĠScoped List < Kt Type Reference > Ġ= ĠScoped List ( listOf NotNull ( value . receiver Type Reference ), Ġpostfix Ġ= Ġ". "), ĊĠ Ġval Ġname : ĠName ? Ġ= Ġvalue . name As Name , ĊĠ Ġval Ġtype Reference : ĠType Reference ? Ġ= ĠType Reference ( value . type Reference ), ĊĠ Ġval Ġ`( params ) `: ĠScoped List < Kt Parameter > Ġ= ĠScoped List ( ĊĠĠĠ Ġprefix Ġ= Ġ" (", ĊĠĠĠ Ġvalue Ġ= Ġvalue . value Parameters Ġ?: ĠlistOf (), ĊĠĠĠ Ġpostfix Ġ= Ġ" )", ĊĠĠĠ Ġforce Render Sur round ings Ġ= Ġtrue ĊĠ Ġ), ĊĠ Ġval Ġdelegate : ĠScope < Kt Property Delegate > Ġ= ĠScope ( value . delegate ), Ġ// ĠTODO ĠK t Property Delegate Ġscope Ġand Ġquote Ġtemplate ĊĠ Ġval Ġdelegate Expression Or Initializer : ĠScope < Kt Expression > Ġ= ĠScope ( value . delegate Expression Or Initializer ), Ġ// ĠTODO ĠK t Expression Ġscope Ġand Ġquote Ġtemplate ĊĠ Ġval ĠreturnType : ĠScoped List < Kt Type Reference > Ġ= ĠScoped List ( listOf NotNull ( value . type Reference ), Ġprefix Ġ= Ġ" Ġ: Ġ"), ĊĠ Ġval Ġinitializer : ĠScoped List < Kt Expression > Ġ= ĠScoped List ( listOf NotNull ( value . initializer ), Ġprefix Ġ= Ġ" Ġ= Ġ"), ĊĠ Ġval Ġval Or Var : ĠName Ġ= Ġwhen Ġ{ ĊĠĠĠ Ġvalue . is Var Ġ-> Ġ" var " ĊĠĠĠ Ġelse Ġ-> Ġ" val " ĊĠ Ġ}. let ( Name :: identifier ), ĊĠ Ġval Ġgetter Ġ: ĠProperty Accessor Ġ= ĠProperty Accessor ( value . getter ), ĊĠ Ġval Ġsetter Ġ: ĠProperty Accessor Ġ= ĠProperty Accessor ( value . setter ) Ċ ) Ġ: ĠType Parameter List Owner < Kt Property >( value ), ĠSynt hetic Element Ġ{ ĊĠ Ġoverride Ġfun ĠElement Scope . identity (): ĠScope < Kt Property > Ġ{ ĊĠĠĠ Ġreturn Ġ""" $ modal ity Ġ$ visibility Ġ$ val Or Var Ġ$ name Ġ$ returnType Ġ$ initializer ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ$ getter ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ$ setter ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ$ delegate """. property ĊĠ Ġ} Ċ } ĊĊ