@@ -88,60 +88,9 @@ export class Evaluator {
8888
8989 private invokeFunction ( func : ( ...args : unknown [ ] ) => unknown , fps : unknown [ ] ,
9090 loc : { moduleName : string , line : number , column : number } ) : unknown {
91-
92- if ( fps . length === 0 ) { return func ( ) ; }
93- if ( fps . length === 1 ) { return func ( fps [ 0 ] ) ; }
94- if ( fps . length === 2 ) { return func ( fps [ 0 ] , fps [ 1 ] ) ; }
95- if ( fps . length === 3 ) { return func ( fps [ 0 ] , fps [ 1 ] , fps [ 2 ] ) ; }
96- if ( fps . length === 4 ) {
97- return func ( fps [ 0 ] , fps [ 1 ] , fps [ 2 ] , fps [ 3 ] ) ;
98- }
99- if ( fps . length === 5 ) {
100- return func ( fps [ 0 ] , fps [ 1 ] , fps [ 2 ] , fps [ 3 ] , fps [ 4 ] ) ;
101- }
102-
103- if ( fps . length === 6 ) {
104- return func ( fps [ 0 ] , fps [ 1 ] , fps [ 2 ] , fps [ 3 ] , fps [ 4 ] , fps [ 5 ] ) ;
105- }
106-
107- if ( fps . length === 7 ) {
108- return func ( fps [ 0 ] , fps [ 1 ] , fps [ 2 ] , fps [ 3 ] , fps [ 4 ] , fps [ 5 ] , fps [ 6 ] ) ;
109- }
110-
111- if ( fps . length === 8 ) {
112- return func ( fps [ 0 ] , fps [ 1 ] , fps [ 2 ] , fps [ 3 ] , fps [ 4 ] , fps [ 5 ] , fps [ 6 ] , fps [ 7 ] ) ;
113- }
114-
115- if ( fps . length === 9 ) {
116- return func ( fps [ 0 ] , fps [ 1 ] , fps [ 2 ] , fps [ 3 ] , fps [ 4 ] , fps [ 5 ] , fps [ 6 ] , fps [ 7 ] , fps [ 8 ] ) ;
117- }
118-
119- if ( fps . length === 10 ) {
120- return func ( fps [ 0 ] , fps [ 1 ] , fps [ 2 ] , fps [ 3 ] , fps [ 4 ] , fps [ 5 ] , fps [ 6 ] , fps [ 7 ] , fps [ 8 ] , fps [ 9 ] ) ;
121- }
122-
123- if ( fps . length === 11 ) {
124- return func ( fps [ 0 ] , fps [ 1 ] , fps [ 2 ] , fps [ 3 ] , fps [ 4 ] , fps [ 5 ] , fps [ 6 ] , fps [ 7 ] , fps [ 8 ] , fps [ 9 ] , fps [ 10 ] ) ;
125- }
126-
127- if ( fps . length === 12 ) {
128- return 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 ] ) ;
129- }
130-
131- if ( fps . length === 13 ) {
132- return 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 ] ) ;
133- }
134-
135- if ( fps . length === 14 ) {
136- return 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 ] ) ;
137- }
138-
139- if ( fps . length === 15 ) {
140- return 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 ] ) ;
141- }
142-
143- throw Error ( 'Function has too many parameters. Current limitation is 15' ) ;
144-
91+
92+ return func ( ...args ) ;
93+
14594 }
14695
14796 private evalNode ( node : AstNode , blockContext : BlockContext ) : unknown {
0 commit comments