/* Ċ Ġ* ĠCopyright Ġ 2 0 1 0 - 2 0 2 0 Ġ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 . fir . expressions Ċ Ċ import Ġorg . jetbrains . kotlin . fir . F ir Source Element Ċ import Ġorg . jetbrains . kotlin . fir . declarations . F ir Value Parameter Ċ import Ġorg . jetbrains . kotlin . fir . expressions . builder . build ArgumentList Ċ import Ġorg . jetbrains . kotlin . fir . expressions . impl . F ir Array Set ArgumentList Ċ import Ġorg . jetbrains . kotlin . fir . expressions . impl . F ir Part ially Resolved ArgumentList Ċ import Ġorg . jetbrains . kotlin . fir . expressions . impl . F ir Resolved ArgumentList Ċ Ċ fun Ġbuild Unary ArgumentList ( argument : ĠF ir Expression ): ĠF ir ArgumentList Ġ= Ġbuild ArgumentList Ġ{ ĊĠĠĠ Ġarguments Ġ+= Ġargument Ċ } Ċ Ċ fun Ġbuild Binary ArgumentList ( left : ĠF ir Expression , Ġright : ĠF ir Expression ): ĠF ir ArgumentList Ġ= Ġbuild ArgumentList Ġ{ ĊĠĠĠ Ġarguments Ġ+= Ġleft ĊĠĠĠ Ġarguments Ġ+= Ġright Ċ } Ċ Ċ fun Ġbuild Array Set ArgumentList ( r Value : ĠF ir Expression , Ġindexes : ĠList < F ir Expression >): ĠF ir ArgumentList Ġ= ĊĠĠĠ ĠF ir Array Set ArgumentList ( r Value , Ġindexes ) Ċ Ċ fun Ġbuild Resolved ArgumentList ( mapping : ĠLinkedHashMap < F ir Expression , ĠF ir Value Parameter >): ĠF ir Resolved ArgumentList Ġ= ĊĠĠĠ ĠF ir Resolved ArgumentList ( mapping ) Ċ Ċ fun Ġbuild Part ially Resolved ArgumentList ( ĊĠĠĠ Ġoriginal : ĠF ir ArgumentList , ĊĠĠĠ Ġmapping : ĠLinkedHashMap < F ir Expression , ĠF ir Value Parameter > Ċ ): ĠF ir ArgumentList Ġ{ ĊĠĠĠ Ġreturn ĠF ir Part ially Resolved ArgumentList ( ĊĠĠĠĠĠĠĠ Ġoriginal . source , ĊĠĠĠĠĠĠĠ Ġoriginal . arguments . map Ġ{ Ġkey Ġ-> Ġkey Ġto Ġmapping [ key ] Ġ}. toMap ( Linked HashMap ()) ĊĠĠĠ Ġ) Ċ } Ċ Ċ object ĠF ir Empty ArgumentList Ġ: ĠF ir Abstract ArgumentList () Ġ{ ĊĠĠĠ Ġoverride Ġval Ġarguments : ĠList < F ir Expression > ĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġempty List () Ċ } Ċ