• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1{
2  "type": "Program",
3  "statements": [
4    {
5      "type": "ClassDeclaration",
6      "definition": {
7        "id": {
8          "type": "Identifier",
9          "name": "ETSGLOBAL",
10          "decorators": [],
11          "loc": {
12            "start": {
13              "line": 1,
14              "column": 1,
15              "program": "optional_field_variable.ets"
16            },
17            "end": {
18              "line": 1,
19              "column": 1,
20              "program": "optional_field_variable.ets"
21            }
22          }
23        },
24        "superClass": null,
25        "implements": [],
26        "body": [
27          {
28            "type": "MethodDefinition",
29            "key": {
30              "type": "Identifier",
31              "name": "main",
32              "decorators": [],
33              "loc": {
34                "start": {
35                  "line": 1,
36                  "column": 1,
37                  "program": null
38                },
39                "end": {
40                  "line": 1,
41                  "column": 1,
42                  "program": null
43                }
44              }
45            },
46            "kind": "method",
47            "accessibility": "public",
48            "static": true,
49            "optional": false,
50            "computed": false,
51            "value": {
52              "type": "FunctionExpression",
53              "function": {
54                "type": "ScriptFunction",
55                "id": {
56                  "type": "Identifier",
57                  "name": "main",
58                  "decorators": [],
59                  "loc": {
60                    "start": {
61                      "line": 1,
62                      "column": 1,
63                      "program": null
64                    },
65                    "end": {
66                      "line": 1,
67                      "column": 1,
68                      "program": null
69                    }
70                  }
71                },
72                "generator": false,
73                "async": false,
74                "expression": false,
75                "params": [],
76                "body": {
77                  "type": "BlockStatement",
78                  "statements": [],
79                  "loc": {
80                    "start": {
81                      "line": 1,
82                      "column": 1,
83                      "program": null
84                    },
85                    "end": {
86                      "line": 1,
87                      "column": 1,
88                      "program": null
89                    }
90                  }
91                },
92                "loc": {
93                  "start": {
94                    "line": 1,
95                    "column": 1,
96                    "program": null
97                  },
98                  "end": {
99                    "line": 1,
100                    "column": 1,
101                    "program": null
102                  }
103                }
104              },
105              "loc": {
106                "start": {
107                  "line": 1,
108                  "column": 1,
109                  "program": null
110                },
111                "end": {
112                  "line": 1,
113                  "column": 1,
114                  "program": null
115                }
116              }
117            },
118            "overloads": [],
119            "decorators": [],
120            "loc": {
121              "start": {
122                "line": 1,
123                "column": 1,
124                "program": "optional_field_variable.ets"
125              },
126              "end": {
127                "line": 1,
128                "column": 1,
129                "program": "optional_field_variable.ets"
130              }
131            }
132          },
133          {
134            "type": "MethodDefinition",
135            "key": {
136              "type": "Identifier",
137              "name": "_$init$_",
138              "decorators": [],
139              "loc": {
140                "start": {
141                  "line": 1,
142                  "column": 1,
143                  "program": null
144                },
145                "end": {
146                  "line": 1,
147                  "column": 1,
148                  "program": null
149                }
150              }
151            },
152            "kind": "method",
153            "accessibility": "public",
154            "static": true,
155            "optional": false,
156            "computed": false,
157            "value": {
158              "type": "FunctionExpression",
159              "function": {
160                "type": "ScriptFunction",
161                "id": {
162                  "type": "Identifier",
163                  "name": "_$init$_",
164                  "decorators": [],
165                  "loc": {
166                    "start": {
167                      "line": 1,
168                      "column": 1,
169                      "program": null
170                    },
171                    "end": {
172                      "line": 1,
173                      "column": 1,
174                      "program": null
175                    }
176                  }
177                },
178                "generator": false,
179                "async": false,
180                "expression": false,
181                "params": [],
182                "body": {
183                  "type": "BlockStatement",
184                  "statements": [],
185                  "loc": {
186                    "start": {
187                      "line": 1,
188                      "column": 1,
189                      "program": null
190                    },
191                    "end": {
192                      "line": 1,
193                      "column": 1,
194                      "program": null
195                    }
196                  }
197                },
198                "loc": {
199                  "start": {
200                    "line": 1,
201                    "column": 1,
202                    "program": null
203                  },
204                  "end": {
205                    "line": 1,
206                    "column": 1,
207                    "program": null
208                  }
209                }
210              },
211              "loc": {
212                "start": {
213                  "line": 1,
214                  "column": 1,
215                  "program": null
216                },
217                "end": {
218                  "line": 1,
219                  "column": 1,
220                  "program": null
221                }
222              }
223            },
224            "overloads": [],
225            "decorators": [],
226            "loc": {
227              "start": {
228                "line": 1,
229                "column": 1,
230                "program": "optional_field_variable.ets"
231              },
232              "end": {
233                "line": 1,
234                "column": 1,
235                "program": "optional_field_variable.ets"
236              }
237            }
238          },
239          {
240            "type": "MethodDefinition",
241            "key": {
242              "type": "Identifier",
243              "name": "goo",
244              "decorators": [],
245              "loc": {
246                "start": {
247                  "line": 16,
248                  "column": 10,
249                  "program": "optional_field_variable.ets"
250                },
251                "end": {
252                  "line": 16,
253                  "column": 13,
254                  "program": "optional_field_variable.ets"
255                }
256              }
257            },
258            "kind": "method",
259            "accessibility": "public",
260            "static": true,
261            "optional": false,
262            "computed": false,
263            "value": {
264              "type": "FunctionExpression",
265              "function": {
266                "type": "ScriptFunction",
267                "id": {
268                  "type": "Identifier",
269                  "name": "goo",
270                  "decorators": [],
271                  "loc": {
272                    "start": {
273                      "line": 16,
274                      "column": 10,
275                      "program": "optional_field_variable.ets"
276                    },
277                    "end": {
278                      "line": 16,
279                      "column": 13,
280                      "program": "optional_field_variable.ets"
281                    }
282                  }
283                },
284                "generator": false,
285                "async": false,
286                "expression": false,
287                "params": [],
288                "body": {
289                  "type": "BlockStatement",
290                  "statements": [
291                    {
292                      "type": "ReturnStatement",
293                      "argument": {
294                        "type": "ETSNewClassInstanceExpression",
295                        "typeReference": {
296                          "type": "ETSTypeReference",
297                          "part": {
298                            "type": "ETSTypeReferencePart",
299                            "name": {
300                              "type": "Identifier",
301                              "name": "Int",
302                              "decorators": [],
303                              "loc": {
304                                "start": {
305                                  "line": 18,
306                                  "column": 15,
307                                  "program": "optional_field_variable.ets"
308                                },
309                                "end": {
310                                  "line": 18,
311                                  "column": 18,
312                                  "program": "optional_field_variable.ets"
313                                }
314                              }
315                            },
316                            "loc": {
317                              "start": {
318                                "line": 18,
319                                "column": 15,
320                                "program": "optional_field_variable.ets"
321                              },
322                              "end": {
323                                "line": 18,
324                                "column": 19,
325                                "program": "optional_field_variable.ets"
326                              }
327                            }
328                          },
329                          "loc": {
330                            "start": {
331                              "line": 18,
332                              "column": 15,
333                              "program": "optional_field_variable.ets"
334                            },
335                            "end": {
336                              "line": 18,
337                              "column": 19,
338                              "program": "optional_field_variable.ets"
339                            }
340                          }
341                        },
342                        "arguments": [
343                          {
344                            "type": "NumberLiteral",
345                            "value": 3,
346                            "loc": {
347                              "start": {
348                                "line": 18,
349                                "column": 19,
350                                "program": "optional_field_variable.ets"
351                              },
352                              "end": {
353                                "line": 18,
354                                "column": 20,
355                                "program": "optional_field_variable.ets"
356                              }
357                            }
358                          }
359                        ],
360                        "loc": {
361                          "start": {
362                            "line": 18,
363                            "column": 11,
364                            "program": "optional_field_variable.ets"
365                          },
366                          "end": {
367                            "line": 18,
368                            "column": 22,
369                            "program": "optional_field_variable.ets"
370                          }
371                        }
372                      },
373                      "loc": {
374                        "start": {
375                          "line": 18,
376                          "column": 4,
377                          "program": "optional_field_variable.ets"
378                        },
379                        "end": {
380                          "line": 18,
381                          "column": 22,
382                          "program": "optional_field_variable.ets"
383                        }
384                      }
385                    }
386                  ],
387                  "loc": {
388                    "start": {
389                      "line": 17,
390                      "column": 1,
391                      "program": "optional_field_variable.ets"
392                    },
393                    "end": {
394                      "line": 19,
395                      "column": 2,
396                      "program": "optional_field_variable.ets"
397                    }
398                  }
399                },
400                "loc": {
401                  "start": {
402                    "line": 16,
403                    "column": 10,
404                    "program": "optional_field_variable.ets"
405                  },
406                  "end": {
407                    "line": 19,
408                    "column": 2,
409                    "program": "optional_field_variable.ets"
410                  }
411                }
412              },
413              "loc": {
414                "start": {
415                  "line": 16,
416                  "column": 10,
417                  "program": "optional_field_variable.ets"
418                },
419                "end": {
420                  "line": 19,
421                  "column": 2,
422                  "program": "optional_field_variable.ets"
423                }
424              }
425            },
426            "overloads": [],
427            "decorators": [],
428            "loc": {
429              "start": {
430                "line": 16,
431                "column": 1,
432                "program": "optional_field_variable.ets"
433              },
434              "end": {
435                "line": 19,
436                "column": 2,
437                "program": "optional_field_variable.ets"
438              }
439            }
440          },
441          {
442            "type": "MethodDefinition",
443            "key": {
444              "type": "Identifier",
445              "name": "foo",
446              "decorators": [],
447              "loc": {
448                "start": {
449                  "line": 21,
450                  "column": 10,
451                  "program": "optional_field_variable.ets"
452                },
453                "end": {
454                  "line": 21,
455                  "column": 13,
456                  "program": "optional_field_variable.ets"
457                }
458              }
459            },
460            "kind": "method",
461            "accessibility": "public",
462            "static": true,
463            "optional": false,
464            "computed": false,
465            "value": {
466              "type": "FunctionExpression",
467              "function": {
468                "type": "ScriptFunction",
469                "id": {
470                  "type": "Identifier",
471                  "name": "foo",
472                  "decorators": [],
473                  "loc": {
474                    "start": {
475                      "line": 21,
476                      "column": 10,
477                      "program": "optional_field_variable.ets"
478                    },
479                    "end": {
480                      "line": 21,
481                      "column": 13,
482                      "program": "optional_field_variable.ets"
483                    }
484                  }
485                },
486                "generator": false,
487                "async": false,
488                "expression": false,
489                "params": [
490                  {
491                    "type": "ETSParameterExpression",
492                    "name": {
493                      "type": "Identifier",
494                      "name": "param",
495                      "typeAnnotation": {
496                        "type": "ETSTypeReference",
497                        "part": {
498                          "type": "ETSTypeReferencePart",
499                          "name": {
500                            "type": "Identifier",
501                            "name": "Object",
502                            "decorators": [],
503                            "loc": {
504                              "start": {
505                                "line": 21,
506                                "column": 23,
507                                "program": "optional_field_variable.ets"
508                              },
509                              "end": {
510                                "line": 21,
511                                "column": 29,
512                                "program": "optional_field_variable.ets"
513                              }
514                            }
515                          },
516                          "loc": {
517                            "start": {
518                              "line": 21,
519                              "column": 23,
520                              "program": "optional_field_variable.ets"
521                            },
522                            "end": {
523                              "line": 21,
524                              "column": 30,
525                              "program": "optional_field_variable.ets"
526                            }
527                          }
528                        },
529                        "loc": {
530                          "start": {
531                            "line": 21,
532                            "column": 23,
533                            "program": "optional_field_variable.ets"
534                          },
535                          "end": {
536                            "line": 21,
537                            "column": 30,
538                            "program": "optional_field_variable.ets"
539                          }
540                        }
541                      },
542                      "decorators": [],
543                      "loc": {
544                        "start": {
545                          "line": 21,
546                          "column": 14,
547                          "program": "optional_field_variable.ets"
548                        },
549                        "end": {
550                          "line": 21,
551                          "column": 30,
552                          "program": "optional_field_variable.ets"
553                        }
554                      }
555                    },
556                    "loc": {
557                      "start": {
558                        "line": 21,
559                        "column": 14,
560                        "program": "optional_field_variable.ets"
561                      },
562                      "end": {
563                        "line": 21,
564                        "column": 30,
565                        "program": "optional_field_variable.ets"
566                      }
567                    }
568                  }
569                ],
570                "body": {
571                  "type": "BlockStatement",
572                  "statements": [
573                    {
574                      "type": "VariableDeclaration",
575                      "declarations": [
576                        {
577                          "type": "VariableDeclarator",
578                          "id": {
579                            "type": "Identifier",
580                            "name": "var1",
581                            "typeAnnotation": {
582                              "type": "ETSTypeReference",
583                              "part": {
584                                "type": "ETSTypeReferencePart",
585                                "name": {
586                                  "type": "Identifier",
587                                  "name": "Object",
588                                  "decorators": [],
589                                  "loc": {
590                                    "start": {
591                                      "line": 23,
592                                      "column": 16,
593                                      "program": "optional_field_variable.ets"
594                                    },
595                                    "end": {
596                                      "line": 23,
597                                      "column": 22,
598                                      "program": "optional_field_variable.ets"
599                                    }
600                                  }
601                                },
602                                "loc": {
603                                  "start": {
604                                    "line": 23,
605                                    "column": 16,
606                                    "program": "optional_field_variable.ets"
607                                  },
608                                  "end": {
609                                    "line": 23,
610                                    "column": 23,
611                                    "program": "optional_field_variable.ets"
612                                  }
613                                }
614                              },
615                              "loc": {
616                                "start": {
617                                  "line": 23,
618                                  "column": 16,
619                                  "program": "optional_field_variable.ets"
620                                },
621                                "end": {
622                                  "line": 23,
623                                  "column": 23,
624                                  "program": "optional_field_variable.ets"
625                                }
626                              }
627                            },
628                            "decorators": [],
629                            "loc": {
630                              "start": {
631                                "line": 23,
632                                "column": 8,
633                                "program": "optional_field_variable.ets"
634                              },
635                              "end": {
636                                "line": 23,
637                                "column": 12,
638                                "program": "optional_field_variable.ets"
639                              }
640                            }
641                          },
642                          "init": null,
643                          "loc": {
644                            "start": {
645                              "line": 23,
646                              "column": 8,
647                              "program": "optional_field_variable.ets"
648                            },
649                            "end": {
650                              "line": 23,
651                              "column": 12,
652                              "program": "optional_field_variable.ets"
653                            }
654                          }
655                        }
656                      ],
657                      "kind": "let",
658                      "loc": {
659                        "start": {
660                          "line": 23,
661                          "column": 4,
662                          "program": "optional_field_variable.ets"
663                        },
664                        "end": {
665                          "line": 23,
666                          "column": 23,
667                          "program": "optional_field_variable.ets"
668                        }
669                      }
670                    },
671                    {
672                      "type": "VariableDeclaration",
673                      "declarations": [
674                        {
675                          "type": "VariableDeclarator",
676                          "id": {
677                            "type": "Identifier",
678                            "name": "var2",
679                            "decorators": [],
680                            "loc": {
681                              "start": {
682                                "line": 24,
683                                "column": 8,
684                                "program": "optional_field_variable.ets"
685                              },
686                              "end": {
687                                "line": 24,
688                                "column": 12,
689                                "program": "optional_field_variable.ets"
690                              }
691                            }
692                          },
693                          "init": {
694                            "type": "ETSNewClassInstanceExpression",
695                            "typeReference": {
696                              "type": "ETSTypeReference",
697                              "part": {
698                                "type": "ETSTypeReferencePart",
699                                "name": {
700                                  "type": "Identifier",
701                                  "name": "Object",
702                                  "decorators": [],
703                                  "loc": {
704                                    "start": {
705                                      "line": 24,
706                                      "column": 20,
707                                      "program": "optional_field_variable.ets"
708                                    },
709                                    "end": {
710                                      "line": 24,
711                                      "column": 26,
712                                      "program": "optional_field_variable.ets"
713                                    }
714                                  }
715                                },
716                                "loc": {
717                                  "start": {
718                                    "line": 24,
719                                    "column": 20,
720                                    "program": "optional_field_variable.ets"
721                                  },
722                                  "end": {
723                                    "line": 24,
724                                    "column": 27,
725                                    "program": "optional_field_variable.ets"
726                                  }
727                                }
728                              },
729                              "loc": {
730                                "start": {
731                                  "line": 24,
732                                  "column": 20,
733                                  "program": "optional_field_variable.ets"
734                                },
735                                "end": {
736                                  "line": 24,
737                                  "column": 27,
738                                  "program": "optional_field_variable.ets"
739                                }
740                              }
741                            },
742                            "arguments": [],
743                            "loc": {
744                              "start": {
745                                "line": 24,
746                                "column": 16,
747                                "program": "optional_field_variable.ets"
748                              },
749                              "end": {
750                                "line": 24,
751                                "column": 29,
752                                "program": "optional_field_variable.ets"
753                              }
754                            }
755                          },
756                          "loc": {
757                            "start": {
758                              "line": 24,
759                              "column": 8,
760                              "program": "optional_field_variable.ets"
761                            },
762                            "end": {
763                              "line": 24,
764                              "column": 29,
765                              "program": "optional_field_variable.ets"
766                            }
767                          }
768                        }
769                      ],
770                      "kind": "let",
771                      "loc": {
772                        "start": {
773                          "line": 24,
774                          "column": 4,
775                          "program": "optional_field_variable.ets"
776                        },
777                        "end": {
778                          "line": 24,
779                          "column": 29,
780                          "program": "optional_field_variable.ets"
781                        }
782                      }
783                    },
784                    {
785                      "type": "VariableDeclaration",
786                      "declarations": [
787                        {
788                          "type": "VariableDeclarator",
789                          "id": {
790                            "type": "Identifier",
791                            "name": "var3",
792                            "decorators": [],
793                            "loc": {
794                              "start": {
795                                "line": 25,
796                                "column": 8,
797                                "program": "optional_field_variable.ets"
798                              },
799                              "end": {
800                                "line": 25,
801                                "column": 12,
802                                "program": "optional_field_variable.ets"
803                              }
804                            }
805                          },
806                          "init": {
807                            "type": "CallExpression",
808                            "callee": {
809                              "type": "Identifier",
810                              "name": "goo",
811                              "decorators": [],
812                              "loc": {
813                                "start": {
814                                  "line": 25,
815                                  "column": 16,
816                                  "program": "optional_field_variable.ets"
817                                },
818                                "end": {
819                                  "line": 25,
820                                  "column": 19,
821                                  "program": "optional_field_variable.ets"
822                                }
823                              }
824                            },
825                            "arguments": [],
826                            "optional": false,
827                            "loc": {
828                              "start": {
829                                "line": 25,
830                                "column": 16,
831                                "program": "optional_field_variable.ets"
832                              },
833                              "end": {
834                                "line": 25,
835                                "column": 21,
836                                "program": "optional_field_variable.ets"
837                              }
838                            }
839                          },
840                          "loc": {
841                            "start": {
842                              "line": 25,
843                              "column": 8,
844                              "program": "optional_field_variable.ets"
845                            },
846                            "end": {
847                              "line": 25,
848                              "column": 21,
849                              "program": "optional_field_variable.ets"
850                            }
851                          }
852                        }
853                      ],
854                      "kind": "let",
855                      "loc": {
856                        "start": {
857                          "line": 25,
858                          "column": 4,
859                          "program": "optional_field_variable.ets"
860                        },
861                        "end": {
862                          "line": 25,
863                          "column": 22,
864                          "program": "optional_field_variable.ets"
865                        }
866                      }
867                    },
868                    {
869                      "type": "ForUpdateStatement",
870                      "init": {
871                        "type": "VariableDeclaration",
872                        "declarations": [
873                          {
874                            "type": "VariableDeclarator",
875                            "id": {
876                              "type": "Identifier",
877                              "name": "i",
878                              "typeAnnotation": {
879                                "type": "ETSTypeReference",
880                                "part": {
881                                  "type": "ETSTypeReferencePart",
882                                  "name": {
883                                    "type": "Identifier",
884                                    "name": "Number",
885                                    "decorators": [],
886                                    "loc": {
887                                      "start": {
888                                        "line": 26,
889                                        "column": 18,
890                                        "program": "optional_field_variable.ets"
891                                      },
892                                      "end": {
893                                        "line": 26,
894                                        "column": 24,
895                                        "program": "optional_field_variable.ets"
896                                      }
897                                    }
898                                  },
899                                  "loc": {
900                                    "start": {
901                                      "line": 26,
902                                      "column": 18,
903                                      "program": "optional_field_variable.ets"
904                                    },
905                                    "end": {
906                                      "line": 26,
907                                      "column": 26,
908                                      "program": "optional_field_variable.ets"
909                                    }
910                                  }
911                                },
912                                "loc": {
913                                  "start": {
914                                    "line": 26,
915                                    "column": 18,
916                                    "program": "optional_field_variable.ets"
917                                  },
918                                  "end": {
919                                    "line": 26,
920                                    "column": 26,
921                                    "program": "optional_field_variable.ets"
922                                  }
923                                }
924                              },
925                              "decorators": [],
926                              "loc": {
927                                "start": {
928                                  "line": 26,
929                                  "column": 13,
930                                  "program": "optional_field_variable.ets"
931                                },
932                                "end": {
933                                  "line": 26,
934                                  "column": 14,
935                                  "program": "optional_field_variable.ets"
936                                }
937                              }
938                            },
939                            "init": {
940                              "type": "NumberLiteral",
941                              "value": 1,
942                              "loc": {
943                                "start": {
944                                  "line": 26,
945                                  "column": 27,
946                                  "program": "optional_field_variable.ets"
947                                },
948                                "end": {
949                                  "line": 26,
950                                  "column": 28,
951                                  "program": "optional_field_variable.ets"
952                                }
953                              }
954                            },
955                            "loc": {
956                              "start": {
957                                "line": 26,
958                                "column": 13,
959                                "program": "optional_field_variable.ets"
960                              },
961                              "end": {
962                                "line": 26,
963                                "column": 28,
964                                "program": "optional_field_variable.ets"
965                              }
966                            }
967                          }
968                        ],
969                        "kind": "let",
970                        "loc": {
971                          "start": {
972                            "line": 26,
973                            "column": 9,
974                            "program": "optional_field_variable.ets"
975                          },
976                          "end": {
977                            "line": 26,
978                            "column": 28,
979                            "program": "optional_field_variable.ets"
980                          }
981                        }
982                      },
983                      "test": null,
984                      "update": null,
985                      "body": {
986                        "type": "BlockStatement",
987                        "statements": [
988                          {
989                            "type": "BreakStatement",
990                            "label": null,
991                            "loc": {
992                              "start": {
993                                "line": 26,
994                                "column": 35,
995                                "program": "optional_field_variable.ets"
996                              },
997                              "end": {
998                                "line": 26,
999                                "column": 41,
1000                                "program": "optional_field_variable.ets"
1001                              }
1002                            }
1003                          }
1004                        ],
1005                        "loc": {
1006                          "start": {
1007                            "line": 26,
1008                            "column": 33,
1009                            "program": "optional_field_variable.ets"
1010                          },
1011                          "end": {
1012                            "line": 26,
1013                            "column": 43,
1014                            "program": "optional_field_variable.ets"
1015                          }
1016                        }
1017                      },
1018                      "loc": {
1019                        "start": {
1020                          "line": 26,
1021                          "column": 4,
1022                          "program": "optional_field_variable.ets"
1023                        },
1024                        "end": {
1025                          "line": 26,
1026                          "column": 43,
1027                          "program": "optional_field_variable.ets"
1028                        }
1029                      }
1030                    }
1031                  ],
1032                  "loc": {
1033                    "start": {
1034                      "line": 22,
1035                      "column": 1,
1036                      "program": "optional_field_variable.ets"
1037                    },
1038                    "end": {
1039                      "line": 27,
1040                      "column": 2,
1041                      "program": "optional_field_variable.ets"
1042                    }
1043                  }
1044                },
1045                "annotations": [
1046                  {
1047                    "expr_": {
1048                      "type": "ETSTypeReference",
1049                      "part": {
1050                        "type": "ETSTypeReferencePart",
1051                        "name": {
1052                          "type": "TSQualifiedName",
1053                          "left": {
1054                            "type": "Identifier",
1055                            "name": "functions",
1056                            "decorators": [],
1057                            "loc": {
1058                              "start": {
1059                                "line": 21,
1060                                "column": 10,
1061                                "program": "optional_field_variable.ets"
1062                              },
1063                              "end": {
1064                                "line": 27,
1065                                "column": 2,
1066                                "program": "optional_field_variable.ets"
1067                              }
1068                            }
1069                          },
1070                          "right": {
1071                            "type": "Identifier",
1072                            "name": "OptionalParametersAnnotation",
1073                            "decorators": [],
1074                            "loc": {
1075                              "start": {
1076                                "line": 21,
1077                                "column": 10,
1078                                "program": "optional_field_variable.ets"
1079                              },
1080                              "end": {
1081                                "line": 27,
1082                                "column": 2,
1083                                "program": "optional_field_variable.ets"
1084                              }
1085                            }
1086                          },
1087                          "loc": {
1088                            "start": {
1089                              "line": 21,
1090                              "column": 10,
1091                              "program": "optional_field_variable.ets"
1092                            },
1093                            "end": {
1094                              "line": 27,
1095                              "column": 2,
1096                              "program": "optional_field_variable.ets"
1097                            }
1098                          }
1099                        },
1100                        "loc": {
1101                          "start": {
1102                            "line": 21,
1103                            "column": 10,
1104                            "program": "optional_field_variable.ets"
1105                          },
1106                          "end": {
1107                            "line": 27,
1108                            "column": 2,
1109                            "program": "optional_field_variable.ets"
1110                          }
1111                        }
1112                      },
1113                      "loc": {
1114                        "start": {
1115                          "line": 21,
1116                          "column": 10,
1117                          "program": "optional_field_variable.ets"
1118                        },
1119                        "end": {
1120                          "line": 27,
1121                          "column": 2,
1122                          "program": "optional_field_variable.ets"
1123                        }
1124                      }
1125                    },
1126                    "properties": [
1127                      {
1128                        "type": "ClassProperty",
1129                        "key": {
1130                          "type": "Identifier",
1131                          "name": "minArgCount",
1132                          "decorators": [],
1133                          "loc": {
1134                            "start": {
1135                              "line": 21,
1136                              "column": 10,
1137                              "program": "optional_field_variable.ets"
1138                            },
1139                            "end": {
1140                              "line": 27,
1141                              "column": 2,
1142                              "program": "optional_field_variable.ets"
1143                            }
1144                          }
1145                        },
1146                        "value": {
1147                          "type": "NumberLiteral",
1148                          "value": 0,
1149                          "loc": {
1150                            "start": {
1151                              "line": 21,
1152                              "column": 10,
1153                              "program": "optional_field_variable.ets"
1154                            },
1155                            "end": {
1156                              "line": 27,
1157                              "column": 2,
1158                              "program": "optional_field_variable.ets"
1159                            }
1160                          }
1161                        },
1162                        "static": false,
1163                        "readonly": false,
1164                        "declare": false,
1165                        "optional": false,
1166                        "computed": false,
1167                        "definite": false,
1168                        "decorators": [],
1169                        "loc": {
1170                          "start": {
1171                            "line": 21,
1172                            "column": 10,
1173                            "program": "optional_field_variable.ets"
1174                          },
1175                          "end": {
1176                            "line": 27,
1177                            "column": 2,
1178                            "program": "optional_field_variable.ets"
1179                          }
1180                        }
1181                      }
1182                    ],
1183                    "loc": {
1184                      "start": {
1185                        "line": 21,
1186                        "column": 10,
1187                        "program": "optional_field_variable.ets"
1188                      },
1189                      "end": {
1190                        "line": 27,
1191                        "column": 2,
1192                        "program": "optional_field_variable.ets"
1193                      }
1194                    }
1195                  }
1196                ],
1197                "loc": {
1198                  "start": {
1199                    "line": 21,
1200                    "column": 10,
1201                    "program": "optional_field_variable.ets"
1202                  },
1203                  "end": {
1204                    "line": 27,
1205                    "column": 2,
1206                    "program": "optional_field_variable.ets"
1207                  }
1208                }
1209              },
1210              "loc": {
1211                "start": {
1212                  "line": 21,
1213                  "column": 10,
1214                  "program": "optional_field_variable.ets"
1215                },
1216                "end": {
1217                  "line": 27,
1218                  "column": 2,
1219                  "program": "optional_field_variable.ets"
1220                }
1221              }
1222            },
1223            "overloads": [],
1224            "decorators": [],
1225            "loc": {
1226              "start": {
1227                "line": 21,
1228                "column": 1,
1229                "program": "optional_field_variable.ets"
1230              },
1231              "end": {
1232                "line": 27,
1233                "column": 2,
1234                "program": "optional_field_variable.ets"
1235              }
1236            }
1237          }
1238        ],
1239        "loc": {
1240          "start": {
1241            "line": 1,
1242            "column": 1,
1243            "program": "optional_field_variable.ets"
1244          },
1245          "end": {
1246            "line": 1,
1247            "column": 1,
1248            "program": "optional_field_variable.ets"
1249          }
1250        }
1251      },
1252      "loc": {
1253        "start": {
1254          "line": 1,
1255          "column": 1,
1256          "program": "optional_field_variable.ets"
1257        },
1258        "end": {
1259          "line": 1,
1260          "column": 1,
1261          "program": "optional_field_variable.ets"
1262        }
1263      }
1264    }
1265  ],
1266  "loc": {
1267    "start": {
1268      "line": 1,
1269      "column": 1,
1270      "program": "optional_field_variable.ets"
1271    },
1272    "end": {
1273      "line": 28,
1274      "column": 1,
1275      "program": "optional_field_variable.ets"
1276    }
1277  }
1278}
1279