package Ġnl . dev ha an . kotlin po et dsl Ċ Ċ import Ġcom . squareup . kotlin po et . Code Block Ċ import Ġcom . squareup . kotlin po et . Fun Spec Ċ import Ġcom . squareup . kotlin po et . Type Spec Ċ import Ġnl . dev ha an . kotlin po et dsl . constructor Builder . Constructor Spec Ċ Ċ fun ĠFun Spec . Builder . end Control Flow ( format : ĠString Ġ= Ġ"", Ġvar arg Ġargs : ĠAny ) Ġ= Ġwhen ( format . isEmpty ()){ ĊĠĠĠ Ġtrue Ġ-> Ġend Control Flow () ĊĠĠĠ Ġfalse Ġ-> Ġadd Code (" â ĩ ¤ }$ format \ n ", Ġ* args ) Ċ } Ċ Ċ fun ĠFun Spec . Builder . add Parameters ( var arg Ġvariable : ĠVariable ) Ġ= Ġapply { ĊĠĠĠ Ġadd Parameters ( variable . map Ġ{ Ġit . to Param Spec () Ġ}) Ċ } Ċ Ċ fun ĠCode Block . Builder . end Control Flow ( format : ĠString Ġ= Ġ"", Ġvar arg Ġargs : ĠAny ?) Ġ= Ġwhen ( format . isEmpty ()){ ĊĠĠĠ Ġtrue Ġ-> Ġend Control Flow () ĊĠĠĠ Ġfalse Ġ-> Ġadd (" â ĩ ¤ }$ format \ n ", Ġ* args ) Ċ } Ċ Ċ /** Ġnot Ġtested !!! Ġ*/ Ċ fun ĠType Spec . Builder . addProperty ( var arg Ġvariables : ĠVariable ) Ġ= Ġapply Ġ{ ĊĠĠĠ Ġadd Properties ( variables . map Ġ{ Ġit . to Property Spec () Ġ}) Ċ } Ċ Ċ fun ĠType Spec . Builder . add Constructor ( constructor : ĠConstructor Spec ) Ġ= Ġapply { ĊĠĠĠ Ġif Ġ( constructor . is Primary ) Ġ{ ĊĠĠĠĠĠĠĠ Ġprimary Constructor ( constructor . fun Spec ) ĊĠĠĠĠĠĠĠ Ġadd Properties ( constructor . active Properties ) ĊĠĠĠ Ġ} Ġelse Ġadd Function ( constructor . fun Spec ) Ċ } Ċ