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