• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1{
2  "type": "Program",
3  "statements": [
4    {
5      "type": "TSTypeAliasDeclaration",
6      "id": {
7        "type": "Identifier",
8        "name": "I2v",
9        "decorators": [],
10        "loc": {
11          "start": {
12            "line": 16,
13            "column": 6,
14            "program": "loopWithinLambda.ets"
15          },
16          "end": {
17            "line": 16,
18            "column": 9,
19            "program": "loopWithinLambda.ets"
20          }
21        }
22      },
23      "typeAnnotation": {
24        "type": "ETSFunctionType",
25        "params": [
26          {
27            "type": "ETSParameterExpression",
28            "name": {
29              "type": "Identifier",
30              "name": "i",
31              "typeAnnotation": {
32                "type": "ETSPrimitiveType",
33                "loc": {
34                  "start": {
35                    "line": 16,
36                    "column": 16,
37                    "program": "loopWithinLambda.ets"
38                  },
39                  "end": {
40                    "line": 16,
41                    "column": 19,
42                    "program": "loopWithinLambda.ets"
43                  }
44                }
45              },
46              "decorators": [],
47              "loc": {
48                "start": {
49                  "line": 16,
50                  "column": 13,
51                  "program": "loopWithinLambda.ets"
52                },
53                "end": {
54                  "line": 16,
55                  "column": 19,
56                  "program": "loopWithinLambda.ets"
57                }
58              }
59            },
60            "loc": {
61              "start": {
62                "line": 16,
63                "column": 13,
64                "program": "loopWithinLambda.ets"
65              },
66              "end": {
67                "line": 16,
68                "column": 19,
69                "program": "loopWithinLambda.ets"
70              }
71            }
72          }
73        ],
74        "returnType": {
75          "type": "ETSPrimitiveType",
76          "loc": {
77            "start": {
78              "line": 16,
79              "column": 24,
80              "program": "loopWithinLambda.ets"
81            },
82            "end": {
83              "line": 16,
84              "column": 28,
85              "program": "loopWithinLambda.ets"
86            }
87          }
88        },
89        "loc": {
90          "start": {
91            "line": 16,
92            "column": 12,
93            "program": "loopWithinLambda.ets"
94          },
95          "end": {
96            "line": 16,
97            "column": 28,
98            "program": "loopWithinLambda.ets"
99          }
100        }
101      },
102      "loc": {
103        "start": {
104          "line": 16,
105          "column": 1,
106          "program": "loopWithinLambda.ets"
107        },
108        "end": {
109          "line": 17,
110          "column": 5,
111          "program": "loopWithinLambda.ets"
112        }
113      }
114    },
115    {
116      "type": "TSTypeAliasDeclaration",
117      "id": {
118        "type": "Identifier",
119        "name": "T1",
120        "decorators": [],
121        "loc": {
122          "start": {
123            "line": 17,
124            "column": 6,
125            "program": "loopWithinLambda.ets"
126          },
127          "end": {
128            "line": 17,
129            "column": 8,
130            "program": "loopWithinLambda.ets"
131          }
132        }
133      },
134      "typeAnnotation": {
135        "type": "ETSFunctionType",
136        "params": [
137          {
138            "type": "ETSParameterExpression",
139            "name": {
140              "type": "Identifier",
141              "name": "lambda",
142              "typeAnnotation": {
143                "type": "ETSFunctionType",
144                "params": [
145                  {
146                    "type": "ETSParameterExpression",
147                    "name": {
148                      "type": "Identifier",
149                      "name": "arg",
150                      "typeAnnotation": {
151                        "type": "ETSPrimitiveType",
152                        "loc": {
153                          "start": {
154                            "line": 17,
155                            "column": 26,
156                            "program": "loopWithinLambda.ets"
157                          },
158                          "end": {
159                            "line": 17,
160                            "column": 29,
161                            "program": "loopWithinLambda.ets"
162                          }
163                        }
164                      },
165                      "decorators": [],
166                      "loc": {
167                        "start": {
168                          "line": 17,
169                          "column": 21,
170                          "program": "loopWithinLambda.ets"
171                        },
172                        "end": {
173                          "line": 17,
174                          "column": 29,
175                          "program": "loopWithinLambda.ets"
176                        }
177                      }
178                    },
179                    "loc": {
180                      "start": {
181                        "line": 17,
182                        "column": 21,
183                        "program": "loopWithinLambda.ets"
184                      },
185                      "end": {
186                        "line": 17,
187                        "column": 29,
188                        "program": "loopWithinLambda.ets"
189                      }
190                    }
191                  }
192                ],
193                "returnType": {
194                  "type": "ETSPrimitiveType",
195                  "loc": {
196                    "start": {
197                      "line": 17,
198                      "column": 34,
199                      "program": "loopWithinLambda.ets"
200                    },
201                    "end": {
202                      "line": 17,
203                      "column": 37,
204                      "program": "loopWithinLambda.ets"
205                    }
206                  }
207                },
208                "loc": {
209                  "start": {
210                    "line": 17,
211                    "column": 20,
212                    "program": "loopWithinLambda.ets"
213                  },
214                  "end": {
215                    "line": 17,
216                    "column": 37,
217                    "program": "loopWithinLambda.ets"
218                  }
219                }
220              },
221              "decorators": [],
222              "loc": {
223                "start": {
224                  "line": 17,
225                  "column": 12,
226                  "program": "loopWithinLambda.ets"
227                },
228                "end": {
229                  "line": 17,
230                  "column": 37,
231                  "program": "loopWithinLambda.ets"
232                }
233              }
234            },
235            "loc": {
236              "start": {
237                "line": 17,
238                "column": 12,
239                "program": "loopWithinLambda.ets"
240              },
241              "end": {
242                "line": 17,
243                "column": 37,
244                "program": "loopWithinLambda.ets"
245              }
246            }
247          },
248          {
249            "type": "ETSParameterExpression",
250            "name": {
251              "type": "Identifier",
252              "name": "arg",
253              "typeAnnotation": {
254                "type": "ETSPrimitiveType",
255                "loc": {
256                  "start": {
257                    "line": 17,
258                    "column": 44,
259                    "program": "loopWithinLambda.ets"
260                  },
261                  "end": {
262                    "line": 17,
263                    "column": 47,
264                    "program": "loopWithinLambda.ets"
265                  }
266                }
267              },
268              "decorators": [],
269              "loc": {
270                "start": {
271                  "line": 17,
272                  "column": 39,
273                  "program": "loopWithinLambda.ets"
274                },
275                "end": {
276                  "line": 17,
277                  "column": 47,
278                  "program": "loopWithinLambda.ets"
279                }
280              }
281            },
282            "loc": {
283              "start": {
284                "line": 17,
285                "column": 39,
286                "program": "loopWithinLambda.ets"
287              },
288              "end": {
289                "line": 17,
290                "column": 47,
291                "program": "loopWithinLambda.ets"
292              }
293            }
294          }
295        ],
296        "returnType": {
297          "type": "ETSPrimitiveType",
298          "loc": {
299            "start": {
300              "line": 17,
301              "column": 52,
302              "program": "loopWithinLambda.ets"
303            },
304            "end": {
305              "line": 17,
306              "column": 55,
307              "program": "loopWithinLambda.ets"
308            }
309          }
310        },
311        "loc": {
312          "start": {
313            "line": 17,
314            "column": 11,
315            "program": "loopWithinLambda.ets"
316          },
317          "end": {
318            "line": 17,
319            "column": 55,
320            "program": "loopWithinLambda.ets"
321          }
322        }
323      },
324      "loc": {
325        "start": {
326          "line": 17,
327          "column": 1,
328          "program": "loopWithinLambda.ets"
329        },
330        "end": {
331          "line": 18,
332          "column": 5,
333          "program": "loopWithinLambda.ets"
334        }
335      }
336    },
337    {
338      "type": "TSTypeAliasDeclaration",
339      "id": {
340        "type": "Identifier",
341        "name": "T2",
342        "decorators": [],
343        "loc": {
344          "start": {
345            "line": 18,
346            "column": 6,
347            "program": "loopWithinLambda.ets"
348          },
349          "end": {
350            "line": 18,
351            "column": 8,
352            "program": "loopWithinLambda.ets"
353          }
354        }
355      },
356      "typeAnnotation": {
357        "type": "ETSFunctionType",
358        "params": [
359          {
360            "type": "ETSParameterExpression",
361            "name": {
362              "type": "Identifier",
363              "name": "c",
364              "typeAnnotation": {
365                "type": "ETSPrimitiveType",
366                "loc": {
367                  "start": {
368                    "line": 18,
369                    "column": 15,
370                    "program": "loopWithinLambda.ets"
371                  },
372                  "end": {
373                    "line": 18,
374                    "column": 18,
375                    "program": "loopWithinLambda.ets"
376                  }
377                }
378              },
379              "decorators": [],
380              "loc": {
381                "start": {
382                  "line": 18,
383                  "column": 12,
384                  "program": "loopWithinLambda.ets"
385                },
386                "end": {
387                  "line": 18,
388                  "column": 18,
389                  "program": "loopWithinLambda.ets"
390                }
391              }
392            },
393            "loc": {
394              "start": {
395                "line": 18,
396                "column": 12,
397                "program": "loopWithinLambda.ets"
398              },
399              "end": {
400                "line": 18,
401                "column": 18,
402                "program": "loopWithinLambda.ets"
403              }
404            }
405          }
406        ],
407        "returnType": {
408          "type": "ETSPrimitiveType",
409          "loc": {
410            "start": {
411              "line": 18,
412              "column": 23,
413              "program": "loopWithinLambda.ets"
414            },
415            "end": {
416              "line": 18,
417              "column": 26,
418              "program": "loopWithinLambda.ets"
419            }
420          }
421        },
422        "loc": {
423          "start": {
424            "line": 18,
425            "column": 11,
426            "program": "loopWithinLambda.ets"
427          },
428          "end": {
429            "line": 18,
430            "column": 26,
431            "program": "loopWithinLambda.ets"
432          }
433        }
434      },
435      "loc": {
436        "start": {
437          "line": 18,
438          "column": 1,
439          "program": "loopWithinLambda.ets"
440        },
441        "end": {
442          "line": 20,
443          "column": 6,
444          "program": "loopWithinLambda.ets"
445        }
446      }
447    },
448    {
449      "type": "ClassDeclaration",
450      "definition": {
451        "id": {
452          "type": "Identifier",
453          "name": "ETSGLOBAL",
454          "decorators": [],
455          "loc": {
456            "start": {
457              "line": 1,
458              "column": 1,
459              "program": "loopWithinLambda.ets"
460            },
461            "end": {
462              "line": 1,
463              "column": 1,
464              "program": "loopWithinLambda.ets"
465            }
466          }
467        },
468        "superClass": null,
469        "implements": [],
470        "body": [
471          {
472            "type": "MethodDefinition",
473            "key": {
474              "type": "Identifier",
475              "name": "_$init$_",
476              "decorators": [],
477              "loc": {
478                "start": {
479                  "line": 1,
480                  "column": 1,
481                  "program": null
482                },
483                "end": {
484                  "line": 1,
485                  "column": 1,
486                  "program": null
487                }
488              }
489            },
490            "kind": "method",
491            "accessibility": "public",
492            "static": true,
493            "optional": false,
494            "computed": false,
495            "value": {
496              "type": "FunctionExpression",
497              "function": {
498                "type": "ScriptFunction",
499                "id": {
500                  "type": "Identifier",
501                  "name": "_$init$_",
502                  "decorators": [],
503                  "loc": {
504                    "start": {
505                      "line": 1,
506                      "column": 1,
507                      "program": null
508                    },
509                    "end": {
510                      "line": 1,
511                      "column": 1,
512                      "program": null
513                    }
514                  }
515                },
516                "generator": false,
517                "async": false,
518                "expression": false,
519                "params": [],
520                "body": {
521                  "type": "BlockStatement",
522                  "statements": [],
523                  "loc": {
524                    "start": {
525                      "line": 1,
526                      "column": 1,
527                      "program": null
528                    },
529                    "end": {
530                      "line": 1,
531                      "column": 1,
532                      "program": null
533                    }
534                  }
535                },
536                "loc": {
537                  "start": {
538                    "line": 1,
539                    "column": 1,
540                    "program": null
541                  },
542                  "end": {
543                    "line": 1,
544                    "column": 1,
545                    "program": null
546                  }
547                }
548              },
549              "loc": {
550                "start": {
551                  "line": 1,
552                  "column": 1,
553                  "program": null
554                },
555                "end": {
556                  "line": 1,
557                  "column": 1,
558                  "program": null
559                }
560              }
561            },
562            "overloads": [],
563            "decorators": [],
564            "loc": {
565              "start": {
566                "line": 1,
567                "column": 1,
568                "program": "loopWithinLambda.ets"
569              },
570              "end": {
571                "line": 1,
572                "column": 1,
573                "program": "loopWithinLambda.ets"
574              }
575            }
576          },
577          {
578            "type": "ClassProperty",
579            "key": {
580              "type": "Identifier",
581              "name": "F1",
582              "decorators": [],
583              "loc": {
584                "start": {
585                  "line": 20,
586                  "column": 7,
587                  "program": "loopWithinLambda.ets"
588                },
589                "end": {
590                  "line": 20,
591                  "column": 9,
592                  "program": "loopWithinLambda.ets"
593                }
594              }
595            },
596            "value": {
597              "type": "ArrowFunctionExpression",
598              "function": {
599                "type": "ScriptFunction",
600                "id": null,
601                "generator": false,
602                "async": false,
603                "expression": false,
604                "params": [
605                  {
606                    "type": "ETSParameterExpression",
607                    "name": {
608                      "type": "Identifier",
609                      "name": "counter",
610                      "typeAnnotation": {
611                        "type": "ETSPrimitiveType",
612                        "loc": {
613                          "start": {
614                            "line": 20,
615                            "column": 27,
616                            "program": "loopWithinLambda.ets"
617                          },
618                          "end": {
619                            "line": 20,
620                            "column": 30,
621                            "program": "loopWithinLambda.ets"
622                          }
623                        }
624                      },
625                      "decorators": [],
626                      "loc": {
627                        "start": {
628                          "line": 20,
629                          "column": 18,
630                          "program": "loopWithinLambda.ets"
631                        },
632                        "end": {
633                          "line": 20,
634                          "column": 30,
635                          "program": "loopWithinLambda.ets"
636                        }
637                      }
638                    },
639                    "loc": {
640                      "start": {
641                        "line": 20,
642                        "column": 18,
643                        "program": "loopWithinLambda.ets"
644                      },
645                      "end": {
646                        "line": 20,
647                        "column": 30,
648                        "program": "loopWithinLambda.ets"
649                      }
650                    }
651                  }
652                ],
653                "body": {
654                  "type": "BlockStatement",
655                  "statements": [
656                    {
657                      "type": "VariableDeclaration",
658                      "declarations": [
659                        {
660                          "type": "VariableDeclarator",
661                          "id": {
662                            "type": "Identifier",
663                            "name": "funcWithLambda",
664                            "typeAnnotation": {
665                              "type": "ETSTypeReference",
666                              "part": {
667                                "type": "ETSTypeReferencePart",
668                                "name": {
669                                  "type": "Identifier",
670                                  "name": "T1",
671                                  "decorators": [],
672                                  "loc": {
673                                    "start": {
674                                      "line": 21,
675                                      "column": 25,
676                                      "program": "loopWithinLambda.ets"
677                                    },
678                                    "end": {
679                                      "line": 21,
680                                      "column": 27,
681                                      "program": "loopWithinLambda.ets"
682                                    }
683                                  }
684                                },
685                                "loc": {
686                                  "start": {
687                                    "line": 21,
688                                    "column": 25,
689                                    "program": "loopWithinLambda.ets"
690                                  },
691                                  "end": {
692                                    "line": 21,
693                                    "column": 29,
694                                    "program": "loopWithinLambda.ets"
695                                  }
696                                }
697                              },
698                              "loc": {
699                                "start": {
700                                  "line": 21,
701                                  "column": 25,
702                                  "program": "loopWithinLambda.ets"
703                                },
704                                "end": {
705                                  "line": 21,
706                                  "column": 29,
707                                  "program": "loopWithinLambda.ets"
708                                }
709                              }
710                            },
711                            "decorators": [],
712                            "loc": {
713                              "start": {
714                                "line": 21,
715                                "column": 9,
716                                "program": "loopWithinLambda.ets"
717                              },
718                              "end": {
719                                "line": 21,
720                                "column": 23,
721                                "program": "loopWithinLambda.ets"
722                              }
723                            }
724                          },
725                          "init": {
726                            "type": "ArrowFunctionExpression",
727                            "function": {
728                              "type": "ScriptFunction",
729                              "id": null,
730                              "generator": false,
731                              "async": false,
732                              "expression": false,
733                              "params": [
734                                {
735                                  "type": "ETSParameterExpression",
736                                  "name": {
737                                    "type": "Identifier",
738                                    "name": "lambda",
739                                    "typeAnnotation": {
740                                      "type": "ETSFunctionType",
741                                      "params": [
742                                        {
743                                          "type": "ETSParameterExpression",
744                                          "name": {
745                                            "type": "Identifier",
746                                            "name": "arg",
747                                            "typeAnnotation": {
748                                              "type": "ETSPrimitiveType",
749                                              "loc": {
750                                                "start": {
751                                                  "line": 21,
752                                                  "column": 45,
753                                                  "program": "loopWithinLambda.ets"
754                                                },
755                                                "end": {
756                                                  "line": 21,
757                                                  "column": 48,
758                                                  "program": "loopWithinLambda.ets"
759                                                }
760                                              }
761                                            },
762                                            "decorators": [],
763                                            "loc": {
764                                              "start": {
765                                                "line": 21,
766                                                "column": 40,
767                                                "program": "loopWithinLambda.ets"
768                                              },
769                                              "end": {
770                                                "line": 21,
771                                                "column": 48,
772                                                "program": "loopWithinLambda.ets"
773                                              }
774                                            }
775                                          },
776                                          "loc": {
777                                            "start": {
778                                              "line": 21,
779                                              "column": 40,
780                                              "program": "loopWithinLambda.ets"
781                                            },
782                                            "end": {
783                                              "line": 21,
784                                              "column": 48,
785                                              "program": "loopWithinLambda.ets"
786                                            }
787                                          }
788                                        }
789                                      ],
790                                      "returnType": {
791                                        "type": "ETSPrimitiveType",
792                                        "loc": {
793                                          "start": {
794                                            "line": 21,
795                                            "column": 53,
796                                            "program": "loopWithinLambda.ets"
797                                          },
798                                          "end": {
799                                            "line": 21,
800                                            "column": 56,
801                                            "program": "loopWithinLambda.ets"
802                                          }
803                                        }
804                                      },
805                                      "loc": {
806                                        "start": {
807                                          "line": 21,
808                                          "column": 39,
809                                          "program": "loopWithinLambda.ets"
810                                        },
811                                        "end": {
812                                          "line": 21,
813                                          "column": 56,
814                                          "program": "loopWithinLambda.ets"
815                                        }
816                                      }
817                                    },
818                                    "decorators": [],
819                                    "loc": {
820                                      "start": {
821                                        "line": 21,
822                                        "column": 31,
823                                        "program": "loopWithinLambda.ets"
824                                      },
825                                      "end": {
826                                        "line": 21,
827                                        "column": 56,
828                                        "program": "loopWithinLambda.ets"
829                                      }
830                                    }
831                                  },
832                                  "loc": {
833                                    "start": {
834                                      "line": 21,
835                                      "column": 31,
836                                      "program": "loopWithinLambda.ets"
837                                    },
838                                    "end": {
839                                      "line": 21,
840                                      "column": 56,
841                                      "program": "loopWithinLambda.ets"
842                                    }
843                                  }
844                                },
845                                {
846                                  "type": "ETSParameterExpression",
847                                  "name": {
848                                    "type": "Identifier",
849                                    "name": "arg",
850                                    "typeAnnotation": {
851                                      "type": "ETSPrimitiveType",
852                                      "loc": {
853                                        "start": {
854                                          "line": 21,
855                                          "column": 63,
856                                          "program": "loopWithinLambda.ets"
857                                        },
858                                        "end": {
859                                          "line": 21,
860                                          "column": 66,
861                                          "program": "loopWithinLambda.ets"
862                                        }
863                                      }
864                                    },
865                                    "decorators": [],
866                                    "loc": {
867                                      "start": {
868                                        "line": 21,
869                                        "column": 58,
870                                        "program": "loopWithinLambda.ets"
871                                      },
872                                      "end": {
873                                        "line": 21,
874                                        "column": 66,
875                                        "program": "loopWithinLambda.ets"
876                                      }
877                                    }
878                                  },
879                                  "loc": {
880                                    "start": {
881                                      "line": 21,
882                                      "column": 58,
883                                      "program": "loopWithinLambda.ets"
884                                    },
885                                    "end": {
886                                      "line": 21,
887                                      "column": 66,
888                                      "program": "loopWithinLambda.ets"
889                                    }
890                                  }
891                                }
892                              ],
893                              "body": {
894                                "type": "BlockStatement",
895                                "statements": [
896                                  {
897                                    "type": "ReturnStatement",
898                                    "argument": {
899                                      "type": "CallExpression",
900                                      "callee": {
901                                        "type": "Identifier",
902                                        "name": "lambda",
903                                        "decorators": [],
904                                        "loc": {
905                                          "start": {
906                                            "line": 21,
907                                            "column": 80,
908                                            "program": "loopWithinLambda.ets"
909                                          },
910                                          "end": {
911                                            "line": 21,
912                                            "column": 86,
913                                            "program": "loopWithinLambda.ets"
914                                          }
915                                        }
916                                      },
917                                      "arguments": [
918                                        {
919                                          "type": "Identifier",
920                                          "name": "arg",
921                                          "decorators": [],
922                                          "loc": {
923                                            "start": {
924                                              "line": 21,
925                                              "column": 87,
926                                              "program": "loopWithinLambda.ets"
927                                            },
928                                            "end": {
929                                              "line": 21,
930                                              "column": 90,
931                                              "program": "loopWithinLambda.ets"
932                                            }
933                                          }
934                                        }
935                                      ],
936                                      "optional": false,
937                                      "loc": {
938                                        "start": {
939                                          "line": 21,
940                                          "column": 80,
941                                          "program": "loopWithinLambda.ets"
942                                        },
943                                        "end": {
944                                          "line": 21,
945                                          "column": 91,
946                                          "program": "loopWithinLambda.ets"
947                                        }
948                                      }
949                                    },
950                                    "loc": {
951                                      "start": {
952                                        "line": 21,
953                                        "column": 73,
954                                        "program": "loopWithinLambda.ets"
955                                      },
956                                      "end": {
957                                        "line": 21,
958                                        "column": 91,
959                                        "program": "loopWithinLambda.ets"
960                                      }
961                                    }
962                                  }
963                                ],
964                                "loc": {
965                                  "start": {
966                                    "line": 21,
967                                    "column": 71,
968                                    "program": "loopWithinLambda.ets"
969                                  },
970                                  "end": {
971                                    "line": 21,
972                                    "column": 93,
973                                    "program": "loopWithinLambda.ets"
974                                  }
975                                }
976                              },
977                              "loc": {
978                                "start": {
979                                  "line": 21,
980                                  "column": 30,
981                                  "program": "loopWithinLambda.ets"
982                                },
983                                "end": {
984                                  "line": 21,
985                                  "column": 93,
986                                  "program": "loopWithinLambda.ets"
987                                }
988                              }
989                            },
990                            "loc": {
991                              "start": {
992                                "line": 21,
993                                "column": 30,
994                                "program": "loopWithinLambda.ets"
995                              },
996                              "end": {
997                                "line": 21,
998                                "column": 93,
999                                "program": "loopWithinLambda.ets"
1000                              }
1001                            }
1002                          },
1003                          "loc": {
1004                            "start": {
1005                              "line": 21,
1006                              "column": 9,
1007                              "program": "loopWithinLambda.ets"
1008                            },
1009                            "end": {
1010                              "line": 21,
1011                              "column": 93,
1012                              "program": "loopWithinLambda.ets"
1013                            }
1014                          }
1015                        }
1016                      ],
1017                      "kind": "let",
1018                      "loc": {
1019                        "start": {
1020                          "line": 21,
1021                          "column": 5,
1022                          "program": "loopWithinLambda.ets"
1023                        },
1024                        "end": {
1025                          "line": 21,
1026                          "column": 93,
1027                          "program": "loopWithinLambda.ets"
1028                        }
1029                      }
1030                    },
1031                    {
1032                      "type": "VariableDeclaration",
1033                      "declarations": [
1034                        {
1035                          "type": "VariableDeclarator",
1036                          "id": {
1037                            "type": "Identifier",
1038                            "name": "it",
1039                            "typeAnnotation": {
1040                              "type": "ETSTypeReference",
1041                              "part": {
1042                                "type": "ETSTypeReferencePart",
1043                                "name": {
1044                                  "type": "Identifier",
1045                                  "name": "T2",
1046                                  "decorators": [],
1047                                  "loc": {
1048                                    "start": {
1049                                      "line": 22,
1050                                      "column": 13,
1051                                      "program": "loopWithinLambda.ets"
1052                                    },
1053                                    "end": {
1054                                      "line": 22,
1055                                      "column": 15,
1056                                      "program": "loopWithinLambda.ets"
1057                                    }
1058                                  }
1059                                },
1060                                "loc": {
1061                                  "start": {
1062                                    "line": 22,
1063                                    "column": 13,
1064                                    "program": "loopWithinLambda.ets"
1065                                  },
1066                                  "end": {
1067                                    "line": 22,
1068                                    "column": 17,
1069                                    "program": "loopWithinLambda.ets"
1070                                  }
1071                                }
1072                              },
1073                              "loc": {
1074                                "start": {
1075                                  "line": 22,
1076                                  "column": 13,
1077                                  "program": "loopWithinLambda.ets"
1078                                },
1079                                "end": {
1080                                  "line": 22,
1081                                  "column": 17,
1082                                  "program": "loopWithinLambda.ets"
1083                                }
1084                              }
1085                            },
1086                            "decorators": [],
1087                            "loc": {
1088                              "start": {
1089                                "line": 22,
1090                                "column": 9,
1091                                "program": "loopWithinLambda.ets"
1092                              },
1093                              "end": {
1094                                "line": 22,
1095                                "column": 11,
1096                                "program": "loopWithinLambda.ets"
1097                              }
1098                            }
1099                          },
1100                          "init": {
1101                            "type": "ArrowFunctionExpression",
1102                            "function": {
1103                              "type": "ScriptFunction",
1104                              "id": null,
1105                              "generator": false,
1106                              "async": false,
1107                              "expression": false,
1108                              "params": [
1109                                {
1110                                  "type": "ETSParameterExpression",
1111                                  "name": {
1112                                    "type": "Identifier",
1113                                    "name": "c",
1114                                    "typeAnnotation": {
1115                                      "type": "ETSPrimitiveType",
1116                                      "loc": {
1117                                        "start": {
1118                                          "line": 22,
1119                                          "column": 22,
1120                                          "program": "loopWithinLambda.ets"
1121                                        },
1122                                        "end": {
1123                                          "line": 22,
1124                                          "column": 25,
1125                                          "program": "loopWithinLambda.ets"
1126                                        }
1127                                      }
1128                                    },
1129                                    "decorators": [],
1130                                    "loc": {
1131                                      "start": {
1132                                        "line": 22,
1133                                        "column": 19,
1134                                        "program": "loopWithinLambda.ets"
1135                                      },
1136                                      "end": {
1137                                        "line": 22,
1138                                        "column": 25,
1139                                        "program": "loopWithinLambda.ets"
1140                                      }
1141                                    }
1142                                  },
1143                                  "loc": {
1144                                    "start": {
1145                                      "line": 22,
1146                                      "column": 19,
1147                                      "program": "loopWithinLambda.ets"
1148                                    },
1149                                    "end": {
1150                                      "line": 22,
1151                                      "column": 25,
1152                                      "program": "loopWithinLambda.ets"
1153                                    }
1154                                  }
1155                                }
1156                              ],
1157                              "returnType": {
1158                                "type": "ETSPrimitiveType",
1159                                "loc": {
1160                                  "start": {
1161                                    "line": 22,
1162                                    "column": 28,
1163                                    "program": "loopWithinLambda.ets"
1164                                  },
1165                                  "end": {
1166                                    "line": 22,
1167                                    "column": 31,
1168                                    "program": "loopWithinLambda.ets"
1169                                  }
1170                                }
1171                              },
1172                              "body": {
1173                                "type": "BlockStatement",
1174                                "statements": [
1175                                  {
1176                                    "type": "ReturnStatement",
1177                                    "argument": {
1178                                      "type": "Identifier",
1179                                      "name": "c",
1180                                      "decorators": [],
1181                                      "loc": {
1182                                        "start": {
1183                                          "line": 22,
1184                                          "column": 43,
1185                                          "program": "loopWithinLambda.ets"
1186                                        },
1187                                        "end": {
1188                                          "line": 22,
1189                                          "column": 44,
1190                                          "program": "loopWithinLambda.ets"
1191                                        }
1192                                      }
1193                                    },
1194                                    "loc": {
1195                                      "start": {
1196                                        "line": 22,
1197                                        "column": 36,
1198                                        "program": "loopWithinLambda.ets"
1199                                      },
1200                                      "end": {
1201                                        "line": 22,
1202                                        "column": 44,
1203                                        "program": "loopWithinLambda.ets"
1204                                      }
1205                                    }
1206                                  }
1207                                ],
1208                                "loc": {
1209                                  "start": {
1210                                    "line": 22,
1211                                    "column": 35,
1212                                    "program": "loopWithinLambda.ets"
1213                                  },
1214                                  "end": {
1215                                    "line": 22,
1216                                    "column": 45,
1217                                    "program": "loopWithinLambda.ets"
1218                                  }
1219                                }
1220                              },
1221                              "loc": {
1222                                "start": {
1223                                  "line": 22,
1224                                  "column": 18,
1225                                  "program": "loopWithinLambda.ets"
1226                                },
1227                                "end": {
1228                                  "line": 22,
1229                                  "column": 45,
1230                                  "program": "loopWithinLambda.ets"
1231                                }
1232                              }
1233                            },
1234                            "loc": {
1235                              "start": {
1236                                "line": 22,
1237                                "column": 18,
1238                                "program": "loopWithinLambda.ets"
1239                              },
1240                              "end": {
1241                                "line": 22,
1242                                "column": 45,
1243                                "program": "loopWithinLambda.ets"
1244                              }
1245                            }
1246                          },
1247                          "loc": {
1248                            "start": {
1249                              "line": 22,
1250                              "column": 9,
1251                              "program": "loopWithinLambda.ets"
1252                            },
1253                            "end": {
1254                              "line": 22,
1255                              "column": 45,
1256                              "program": "loopWithinLambda.ets"
1257                            }
1258                          }
1259                        }
1260                      ],
1261                      "kind": "let",
1262                      "loc": {
1263                        "start": {
1264                          "line": 22,
1265                          "column": 5,
1266                          "program": "loopWithinLambda.ets"
1267                        },
1268                        "end": {
1269                          "line": 22,
1270                          "column": 45,
1271                          "program": "loopWithinLambda.ets"
1272                        }
1273                      }
1274                    },
1275                    {
1276                      "type": "WhileStatement",
1277                      "test": {
1278                        "type": "BinaryExpression",
1279                        "operator": ">",
1280                        "left": {
1281                          "type": "Identifier",
1282                          "name": "counter",
1283                          "decorators": [],
1284                          "loc": {
1285                            "start": {
1286                              "line": 24,
1287                              "column": 12,
1288                              "program": "loopWithinLambda.ets"
1289                            },
1290                            "end": {
1291                              "line": 24,
1292                              "column": 19,
1293                              "program": "loopWithinLambda.ets"
1294                            }
1295                          }
1296                        },
1297                        "right": {
1298                          "type": "NumberLiteral",
1299                          "value": 0,
1300                          "loc": {
1301                            "start": {
1302                              "line": 24,
1303                              "column": 22,
1304                              "program": "loopWithinLambda.ets"
1305                            },
1306                            "end": {
1307                              "line": 24,
1308                              "column": 23,
1309                              "program": "loopWithinLambda.ets"
1310                            }
1311                          }
1312                        },
1313                        "loc": {
1314                          "start": {
1315                            "line": 24,
1316                            "column": 12,
1317                            "program": "loopWithinLambda.ets"
1318                          },
1319                          "end": {
1320                            "line": 24,
1321                            "column": 23,
1322                            "program": "loopWithinLambda.ets"
1323                          }
1324                        }
1325                      },
1326                      "body": {
1327                        "type": "ExpressionStatement",
1328                        "expression": {
1329                          "type": "AssignmentExpression",
1330                          "operator": "=",
1331                          "left": {
1332                            "type": "Identifier",
1333                            "name": "counter",
1334                            "decorators": [],
1335                            "loc": {
1336                              "start": {
1337                                "line": 24,
1338                                "column": 25,
1339                                "program": "loopWithinLambda.ets"
1340                              },
1341                              "end": {
1342                                "line": 24,
1343                                "column": 32,
1344                                "program": "loopWithinLambda.ets"
1345                              }
1346                            }
1347                          },
1348                          "right": {
1349                            "type": "CallExpression",
1350                            "callee": {
1351                              "type": "Identifier",
1352                              "name": "funcWithLambda",
1353                              "decorators": [],
1354                              "loc": {
1355                                "start": {
1356                                  "line": 24,
1357                                  "column": 35,
1358                                  "program": "loopWithinLambda.ets"
1359                                },
1360                                "end": {
1361                                  "line": 24,
1362                                  "column": 49,
1363                                  "program": "loopWithinLambda.ets"
1364                                }
1365                              }
1366                            },
1367                            "arguments": [
1368                              {
1369                                "type": "Identifier",
1370                                "name": "it",
1371                                "decorators": [],
1372                                "loc": {
1373                                  "start": {
1374                                    "line": 24,
1375                                    "column": 50,
1376                                    "program": "loopWithinLambda.ets"
1377                                  },
1378                                  "end": {
1379                                    "line": 24,
1380                                    "column": 52,
1381                                    "program": "loopWithinLambda.ets"
1382                                  }
1383                                }
1384                              },
1385                              {
1386                                "type": "Identifier",
1387                                "name": "counter",
1388                                "decorators": [],
1389                                "loc": {
1390                                  "start": {
1391                                    "line": 24,
1392                                    "column": 54,
1393                                    "program": "loopWithinLambda.ets"
1394                                  },
1395                                  "end": {
1396                                    "line": 24,
1397                                    "column": 61,
1398                                    "program": "loopWithinLambda.ets"
1399                                  }
1400                                }
1401                              }
1402                            ],
1403                            "optional": false,
1404                            "loc": {
1405                              "start": {
1406                                "line": 24,
1407                                "column": 35,
1408                                "program": "loopWithinLambda.ets"
1409                              },
1410                              "end": {
1411                                "line": 24,
1412                                "column": 62,
1413                                "program": "loopWithinLambda.ets"
1414                              }
1415                            }
1416                          },
1417                          "loc": {
1418                            "start": {
1419                              "line": 24,
1420                              "column": 25,
1421                              "program": "loopWithinLambda.ets"
1422                            },
1423                            "end": {
1424                              "line": 24,
1425                              "column": 62,
1426                              "program": "loopWithinLambda.ets"
1427                            }
1428                          }
1429                        },
1430                        "loc": {
1431                          "start": {
1432                            "line": 24,
1433                            "column": 25,
1434                            "program": "loopWithinLambda.ets"
1435                          },
1436                          "end": {
1437                            "line": 24,
1438                            "column": 62,
1439                            "program": "loopWithinLambda.ets"
1440                          }
1441                        }
1442                      },
1443                      "loc": {
1444                        "start": {
1445                          "line": 24,
1446                          "column": 5,
1447                          "program": "loopWithinLambda.ets"
1448                        },
1449                        "end": {
1450                          "line": 24,
1451                          "column": 62,
1452                          "program": "loopWithinLambda.ets"
1453                        }
1454                      }
1455                    }
1456                  ],
1457                  "loc": {
1458                    "start": {
1459                      "line": 20,
1460                      "column": 35,
1461                      "program": "loopWithinLambda.ets"
1462                    },
1463                    "end": {
1464                      "line": 25,
1465                      "column": 2,
1466                      "program": "loopWithinLambda.ets"
1467                    }
1468                  }
1469                },
1470                "loc": {
1471                  "start": {
1472                    "line": 20,
1473                    "column": 17,
1474                    "program": "loopWithinLambda.ets"
1475                  },
1476                  "end": {
1477                    "line": 25,
1478                    "column": 2,
1479                    "program": "loopWithinLambda.ets"
1480                  }
1481                }
1482              },
1483              "loc": {
1484                "start": {
1485                  "line": 20,
1486                  "column": 17,
1487                  "program": "loopWithinLambda.ets"
1488                },
1489                "end": {
1490                  "line": 25,
1491                  "column": 2,
1492                  "program": "loopWithinLambda.ets"
1493                }
1494              }
1495            },
1496            "accessibility": "public",
1497            "static": true,
1498            "readonly": false,
1499            "declare": false,
1500            "optional": false,
1501            "computed": false,
1502            "typeAnnotation": {
1503              "type": "ETSTypeReference",
1504              "part": {
1505                "type": "ETSTypeReferencePart",
1506                "name": {
1507                  "type": "Identifier",
1508                  "name": "I2v",
1509                  "decorators": [],
1510                  "loc": {
1511                    "start": {
1512                      "line": 20,
1513                      "column": 11,
1514                      "program": "loopWithinLambda.ets"
1515                    },
1516                    "end": {
1517                      "line": 20,
1518                      "column": 14,
1519                      "program": "loopWithinLambda.ets"
1520                    }
1521                  }
1522                },
1523                "loc": {
1524                  "start": {
1525                    "line": 20,
1526                    "column": 11,
1527                    "program": "loopWithinLambda.ets"
1528                  },
1529                  "end": {
1530                    "line": 20,
1531                    "column": 16,
1532                    "program": "loopWithinLambda.ets"
1533                  }
1534                }
1535              },
1536              "loc": {
1537                "start": {
1538                  "line": 20,
1539                  "column": 11,
1540                  "program": "loopWithinLambda.ets"
1541                },
1542                "end": {
1543                  "line": 20,
1544                  "column": 16,
1545                  "program": "loopWithinLambda.ets"
1546                }
1547              }
1548            },
1549            "definite": false,
1550            "decorators": [],
1551            "loc": {
1552              "start": {
1553                "line": 20,
1554                "column": 7,
1555                "program": "loopWithinLambda.ets"
1556              },
1557              "end": {
1558                "line": 25,
1559                "column": 2,
1560                "program": "loopWithinLambda.ets"
1561              }
1562            }
1563          },
1564          {
1565            "type": "MethodDefinition",
1566            "key": {
1567              "type": "Identifier",
1568              "name": "main",
1569              "decorators": [],
1570              "loc": {
1571                "start": {
1572                  "line": 27,
1573                  "column": 10,
1574                  "program": "loopWithinLambda.ets"
1575                },
1576                "end": {
1577                  "line": 27,
1578                  "column": 14,
1579                  "program": "loopWithinLambda.ets"
1580                }
1581              }
1582            },
1583            "kind": "method",
1584            "accessibility": "public",
1585            "static": true,
1586            "optional": false,
1587            "computed": false,
1588            "value": {
1589              "type": "FunctionExpression",
1590              "function": {
1591                "type": "ScriptFunction",
1592                "id": {
1593                  "type": "Identifier",
1594                  "name": "main",
1595                  "decorators": [],
1596                  "loc": {
1597                    "start": {
1598                      "line": 27,
1599                      "column": 10,
1600                      "program": "loopWithinLambda.ets"
1601                    },
1602                    "end": {
1603                      "line": 27,
1604                      "column": 14,
1605                      "program": "loopWithinLambda.ets"
1606                    }
1607                  }
1608                },
1609                "generator": false,
1610                "async": false,
1611                "expression": false,
1612                "params": [],
1613                "body": {
1614                  "type": "BlockStatement",
1615                  "statements": [
1616                    {
1617                      "type": "ExpressionStatement",
1618                      "expression": {
1619                        "type": "CallExpression",
1620                        "callee": {
1621                          "type": "Identifier",
1622                          "name": "F1",
1623                          "decorators": [],
1624                          "loc": {
1625                            "start": {
1626                              "line": 28,
1627                              "column": 5,
1628                              "program": "loopWithinLambda.ets"
1629                            },
1630                            "end": {
1631                              "line": 28,
1632                              "column": 7,
1633                              "program": "loopWithinLambda.ets"
1634                            }
1635                          }
1636                        },
1637                        "arguments": [
1638                          {
1639                            "type": "NumberLiteral",
1640                            "value": 44,
1641                            "loc": {
1642                              "start": {
1643                                "line": 28,
1644                                "column": 8,
1645                                "program": "loopWithinLambda.ets"
1646                              },
1647                              "end": {
1648                                "line": 28,
1649                                "column": 10,
1650                                "program": "loopWithinLambda.ets"
1651                              }
1652                            }
1653                          }
1654                        ],
1655                        "optional": false,
1656                        "loc": {
1657                          "start": {
1658                            "line": 28,
1659                            "column": 5,
1660                            "program": "loopWithinLambda.ets"
1661                          },
1662                          "end": {
1663                            "line": 28,
1664                            "column": 11,
1665                            "program": "loopWithinLambda.ets"
1666                          }
1667                        }
1668                      },
1669                      "loc": {
1670                        "start": {
1671                          "line": 28,
1672                          "column": 5,
1673                          "program": "loopWithinLambda.ets"
1674                        },
1675                        "end": {
1676                          "line": 28,
1677                          "column": 11,
1678                          "program": "loopWithinLambda.ets"
1679                        }
1680                      }
1681                    },
1682                    {
1683                      "type": "ReturnStatement",
1684                      "argument": {
1685                        "type": "NumberLiteral",
1686                        "value": 0,
1687                        "loc": {
1688                          "start": {
1689                            "line": 29,
1690                            "column": 12,
1691                            "program": "loopWithinLambda.ets"
1692                          },
1693                          "end": {
1694                            "line": 29,
1695                            "column": 13,
1696                            "program": "loopWithinLambda.ets"
1697                          }
1698                        }
1699                      },
1700                      "loc": {
1701                        "start": {
1702                          "line": 29,
1703                          "column": 5,
1704                          "program": "loopWithinLambda.ets"
1705                        },
1706                        "end": {
1707                          "line": 29,
1708                          "column": 14,
1709                          "program": "loopWithinLambda.ets"
1710                        }
1711                      }
1712                    }
1713                  ],
1714                  "loc": {
1715                    "start": {
1716                      "line": 27,
1717                      "column": 17,
1718                      "program": "loopWithinLambda.ets"
1719                    },
1720                    "end": {
1721                      "line": 30,
1722                      "column": 2,
1723                      "program": "loopWithinLambda.ets"
1724                    }
1725                  }
1726                },
1727                "loc": {
1728                  "start": {
1729                    "line": 27,
1730                    "column": 10,
1731                    "program": "loopWithinLambda.ets"
1732                  },
1733                  "end": {
1734                    "line": 30,
1735                    "column": 2,
1736                    "program": "loopWithinLambda.ets"
1737                  }
1738                }
1739              },
1740              "loc": {
1741                "start": {
1742                  "line": 27,
1743                  "column": 10,
1744                  "program": "loopWithinLambda.ets"
1745                },
1746                "end": {
1747                  "line": 30,
1748                  "column": 2,
1749                  "program": "loopWithinLambda.ets"
1750                }
1751              }
1752            },
1753            "overloads": [],
1754            "decorators": [],
1755            "loc": {
1756              "start": {
1757                "line": 27,
1758                "column": 1,
1759                "program": "loopWithinLambda.ets"
1760              },
1761              "end": {
1762                "line": 30,
1763                "column": 2,
1764                "program": "loopWithinLambda.ets"
1765              }
1766            }
1767          }
1768        ],
1769        "loc": {
1770          "start": {
1771            "line": 1,
1772            "column": 1,
1773            "program": "loopWithinLambda.ets"
1774          },
1775          "end": {
1776            "line": 1,
1777            "column": 1,
1778            "program": "loopWithinLambda.ets"
1779          }
1780        }
1781      },
1782      "loc": {
1783        "start": {
1784          "line": 1,
1785          "column": 1,
1786          "program": "loopWithinLambda.ets"
1787        },
1788        "end": {
1789          "line": 1,
1790          "column": 1,
1791          "program": "loopWithinLambda.ets"
1792        }
1793      }
1794    }
1795  ],
1796  "loc": {
1797    "start": {
1798      "line": 1,
1799      "column": 1,
1800      "program": "loopWithinLambda.ets"
1801    },
1802    "end": {
1803      "line": 31,
1804      "column": 1,
1805      "program": "loopWithinLambda.ets"
1806    }
1807  }
1808}
1809