@@ -88,60 +88,9 @@ export class Evaluator {
88
88
89
89
private invokeFunction ( func : ( ...args : unknown [ ] ) => unknown , fps : unknown [ ] ,
90
90
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
+
145
94
}
146
95
147
96
private evalNode ( node : AstNode , blockContext : BlockContext ) : unknown {
0 commit comments