@@ -165,60 +165,8 @@ export class EvaluatorAsync {
165165
166166 private async invokeFunctionAsync ( func : ( ...args : unknown [ ] ) => unknown , fps : unknown [ ] ,
167167 loc ?: { moduleName : string , line : number , column : number } ) : Promise < unknown > {
168-
169- if ( fps . length === 0 ) { return await func ( ) ; }
170- if ( fps . length === 1 ) { return await func ( fps [ 0 ] ) ; }
171- if ( fps . length === 2 ) { return await func ( fps [ 0 ] , fps [ 1 ] ) ; }
172- if ( fps . length === 3 ) { return await func ( fps [ 0 ] , fps [ 1 ] , fps [ 2 ] ) ; }
173- if ( fps . length === 4 ) {
174- return await func ( fps [ 0 ] , fps [ 1 ] , fps [ 2 ] , fps [ 3 ] ) ;
175- }
176- if ( fps . length === 5 ) {
177- return await func ( fps [ 0 ] , fps [ 1 ] , fps [ 2 ] , fps [ 3 ] , fps [ 4 ] ) ;
178- }
179-
180- if ( fps . length === 6 ) {
181- return await func ( fps [ 0 ] , fps [ 1 ] , fps [ 2 ] , fps [ 3 ] , fps [ 4 ] , fps [ 5 ] ) ;
182- }
183-
184- if ( fps . length === 7 ) {
185- return await func ( fps [ 0 ] , fps [ 1 ] , fps [ 2 ] , fps [ 3 ] , fps [ 4 ] , fps [ 5 ] , fps [ 6 ] ) ;
186- }
187-
188- if ( fps . length === 8 ) {
189- return await func ( fps [ 0 ] , fps [ 1 ] , fps [ 2 ] , fps [ 3 ] , fps [ 4 ] , fps [ 5 ] , fps [ 6 ] , fps [ 7 ] ) ;
190- }
191-
192- if ( fps . length === 9 ) {
193- return await func ( fps [ 0 ] , fps [ 1 ] , fps [ 2 ] , fps [ 3 ] , fps [ 4 ] , fps [ 5 ] , fps [ 6 ] , fps [ 7 ] , fps [ 8 ] ) ;
194- }
195-
196- if ( fps . length === 10 ) {
197- return await func ( fps [ 0 ] , fps [ 1 ] , fps [ 2 ] , fps [ 3 ] , fps [ 4 ] , fps [ 5 ] , fps [ 6 ] , fps [ 7 ] , fps [ 8 ] , fps [ 9 ] ) ;
198- }
199-
200- if ( fps . length === 11 ) {
201- return await func ( fps [ 0 ] , fps [ 1 ] , fps [ 2 ] , fps [ 3 ] , fps [ 4 ] , fps [ 5 ] , fps [ 6 ] , fps [ 7 ] , fps [ 8 ] , fps [ 9 ] , fps [ 10 ] ) ;
202- }
203-
204- if ( fps . length === 12 ) {
205- return await func ( fps [ 0 ] , fps [ 1 ] , fps [ 2 ] , fps [ 3 ] , fps [ 4 ] , fps [ 5 ] , fps [ 6 ] , fps [ 7 ] , fps [ 8 ] , fps [ 9 ] , fps [ 10 ] , fps [ 11 ] ) ;
206- }
207-
208- if ( fps . length === 13 ) {
209- return await func ( fps [ 0 ] , fps [ 1 ] , fps [ 2 ] , fps [ 3 ] , fps [ 4 ] , fps [ 5 ] , fps [ 6 ] , fps [ 7 ] , fps [ 8 ] , fps [ 9 ] , fps [ 10 ] , fps [ 11 ] , fps [ 12 ] ) ;
210- }
211-
212- if ( fps . length === 14 ) {
213- return await func ( fps [ 0 ] , fps [ 1 ] , fps [ 2 ] , fps [ 3 ] , fps [ 4 ] , fps [ 5 ] , fps [ 6 ] , fps [ 7 ] , fps [ 8 ] , fps [ 9 ] , fps [ 10 ] , fps [ 11 ] , fps [ 12 ] , fps [ 13 ] ) ;
214- }
215-
216- if ( fps . length === 15 ) {
217- return await func ( fps [ 0 ] , fps [ 1 ] , fps [ 2 ] , fps [ 3 ] , fps [ 4 ] , fps [ 5 ] , fps [ 6 ] , fps [ 7 ] , fps [ 8 ] , fps [ 9 ] , fps [ 10 ] , fps [ 11 ] , fps [ 12 ] , fps [ 13 ] , fps [ 14 ] ) ;
218- }
219-
220- throw Error ( 'Function has too many parameters. Current limitation is 15' ) ;
221-
168+
169+ return await func ( ...fps ) ;
222170 }
223171
224172 private async evalNodeAsync ( node : AstNode , blockContext : BlockContext ) : Promise < unknown > {
0 commit comments