{ "type": "Script", "span": { "start": 143, "end": 859, "ctxt": 0 }, "body": [ { "type": "ClassDeclaration", "identifier": { "type": "Identifier", "span": { "start": 149, "end": 158, "ctxt": 0 }, "value": "Rectangle", "optional": false }, "declare": false, "span": { "start": 143, "end": 229, "ctxt": 0 }, "decorators": [], "body": [ { "type": "Constructor", "span": { "start": 165, "end": 227, "ctxt": 0 }, "key": { "type": "Identifier", "span": { "start": 165, "end": 176, "ctxt": 0 }, "value": "constructor", "optional": false }, "params": [], "body": { "type": "BlockStatement", "span": { "start": 179, "end": 227, "ctxt": 0 }, "stmts": [ { "type": "ExpressionStatement", "span": { "start": 189, "end": 221, "ctxt": 0 }, "expression": { "type": "CallExpression", "span": { "start": 189, "end": 220, "ctxt": 0 }, "callee": { "type": "MemberExpression", "span": { "start": 189, "end": 200, "ctxt": 0 }, "object": { "type": "Identifier", "span": { "start": 189, "end": 196, "ctxt": 0 }, "value": "console", "optional": false }, "property": { "type": "Identifier", "span": { "start": 197, "end": 200, "ctxt": 0 }, "value": "log", "optional": false } }, "arguments": [ { "spread": null, "expression": { "type": "StringLiteral", "span": { "start": 201, "end": 219, "ctxt": 0 }, "value": "I'm a rectangle!", "raw": "\"I'm a rectangle!\"" } } ], "typeArguments": null } } ] }, "accessibility": null, "isOptional": false } ], "superClass": null, "isAbstract": false, "typeParams": null, "superTypeParams": null, "implements": [] }, { "type": "ExpressionStatement", "span": { "start": 231, "end": 262, "ctxt": 0 }, "expression": { "type": "AssignmentExpression", "span": { "start": 231, "end": 261, "ctxt": 0 }, "operator": "=", "left": { "type": "MemberExpression", "span": { "start": 231, "end": 245, "ctxt": 0 }, "object": { "type": "Identifier", "span": { "start": 231, "end": 237, "ctxt": 0 }, "value": "module", "optional": false }, "property": { "type": "Identifier", "span": { "start": 238, "end": 245, "ctxt": 0 }, "value": "exports", "optional": false } }, "right": { "type": "ObjectExpression", "span": { "start": 248, "end": 261, "ctxt": 0 }, "properties": [ { "type": "Identifier", "span": { "start": 250, "end": 259, "ctxt": 0 }, "value": "Rectangle", "optional": false } ] } } }, { "type": "VariableDeclaration", "span": { "start": 286, "end": 329, "ctxt": 0 }, "kind": "const", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 292, "end": 328, "ctxt": 0 }, "id": { "type": "ObjectPattern", "span": { "start": 292, "end": 303, "ctxt": 0 }, "properties": [ { "type": "AssignmentPatternProperty", "span": { "start": 293, "end": 302, "ctxt": 0 }, "key": { "type": "Identifier", "span": { "start": 293, "end": 302, "ctxt": 0 }, "value": "Rectangle", "optional": false }, "value": null } ], "optional": false, "typeAnnotation": null }, "init": { "type": "CallExpression", "span": { "start": 306, "end": 328, "ctxt": 0 }, "callee": { "type": "Identifier", "span": { "start": 306, "end": 313, "ctxt": 0 }, "value": "require", "optional": false }, "arguments": [ { "spread": null, "expression": { "type": "StringLiteral", "span": { "start": 314, "end": 327, "ctxt": 0 }, "value": "./rectangle", "raw": "'./rectangle'" } } ], "typeArguments": null }, "definite": false } ] }, { "type": "ClassDeclaration", "identifier": { "type": "Identifier", "span": { "start": 337, "end": 343, "ctxt": 0 }, "value": "Render", "optional": false }, "declare": false, "span": { "start": 331, "end": 679, "ctxt": 0 }, "decorators": [], "body": [ { "type": "Constructor", "span": { "start": 350, "end": 476, "ctxt": 0 }, "key": { "type": "Identifier", "span": { "start": 350, "end": 361, "ctxt": 0 }, "value": "constructor", "optional": false }, "params": [], "body": { "type": "BlockStatement", "span": { "start": 364, "end": 476, "ctxt": 0 }, "stmts": [ { "type": "ExpressionStatement", "span": { "start": 452, "end": 470, "ctxt": 0 }, "expression": { "type": "AssignmentExpression", "span": { "start": 452, "end": 469, "ctxt": 0 }, "operator": "=", "left": { "type": "MemberExpression", "span": { "start": 452, "end": 464, "ctxt": 0 }, "object": { "type": "ThisExpression", "span": { "start": 452, "end": 456, "ctxt": 0 } }, "property": { "type": "Identifier", "span": { "start": 457, "end": 464, "ctxt": 0 }, "value": "objects", "optional": false } }, "right": { "type": "ArrayExpression", "span": { "start": 467, "end": 469, "ctxt": 0 }, "elements": [] } } } ] }, "accessibility": null, "isOptional": false }, { "type": "ClassMethod", "span": { "start": 566, "end": 677, "ctxt": 0 }, "key": { "type": "Identifier", "span": { "start": 566, "end": 578, "ctxt": 0 }, "value": "addRectangle", "optional": false }, "function": { "params": [], "decorators": [], "span": { "start": 566, "end": 677, "ctxt": 0 }, "body": { "type": "BlockStatement", "span": { "start": 581, "end": 677, "ctxt": 0 }, "stmts": [ { "type": "VariableDeclaration", "span": { "start": 591, "end": 619, "ctxt": 0 }, "kind": "const", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 597, "end": 618, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 597, "end": 600, "ctxt": 0 }, "value": "obj", "optional": false, "typeAnnotation": null }, "init": { "type": "NewExpression", "span": { "start": 603, "end": 618, "ctxt": 0 }, "callee": { "type": "Identifier", "span": { "start": 607, "end": 616, "ctxt": 0 }, "value": "Rectangle", "optional": false }, "arguments": [], "typeArguments": null }, "definite": false } ] }, { "type": "ExpressionStatement", "span": { "start": 628, "end": 651, "ctxt": 0 }, "expression": { "type": "CallExpression", "span": { "start": 628, "end": 650, "ctxt": 0 }, "callee": { "type": "MemberExpression", "span": { "start": 628, "end": 645, "ctxt": 0 }, "object": { "type": "MemberExpression", "span": { "start": 628, "end": 640, "ctxt": 0 }, "object": { "type": "ThisExpression", "span": { "start": 628, "end": 632, "ctxt": 0 } }, "property": { "type": "Identifier", "span": { "start": 633, "end": 640, "ctxt": 0 }, "value": "objects", "optional": false } }, "property": { "type": "Identifier", "span": { "start": 641, "end": 645, "ctxt": 0 }, "value": "push", "optional": false } }, "arguments": [ { "spread": null, "expression": { "type": "Identifier", "span": { "start": 646, "end": 649, "ctxt": 0 }, "value": "obj", "optional": false } } ], "typeArguments": null } }, { "type": "ReturnStatement", "span": { "start": 660, "end": 671, "ctxt": 0 }, "argument": { "type": "Identifier", "span": { "start": 667, "end": 670, "ctxt": 0 }, "value": "obj", "optional": false } } ] }, "generator": false, "async": false, "typeParameters": null, "returnType": null }, "kind": "method", "isStatic": false, "accessibility": null, "isAbstract": false, "isOptional": false, "isOverride": false } ], "superClass": null, "isAbstract": false, "typeParams": null, "superTypeParams": null, "implements": [] }, { "type": "ExpressionStatement", "span": { "start": 681, "end": 709, "ctxt": 0 }, "expression": { "type": "AssignmentExpression", "span": { "start": 681, "end": 708, "ctxt": 0 }, "operator": "=", "left": { "type": "MemberExpression", "span": { "start": 681, "end": 695, "ctxt": 0 }, "object": { "type": "Identifier", "span": { "start": 681, "end": 687, "ctxt": 0 }, "value": "module", "optional": false }, "property": { "type": "Identifier", "span": { "start": 688, "end": 695, "ctxt": 0 }, "value": "exports", "optional": false } }, "right": { "type": "ObjectExpression", "span": { "start": 698, "end": 708, "ctxt": 0 }, "properties": [ { "type": "Identifier", "span": { "start": 700, "end": 706, "ctxt": 0 }, "value": "Render", "optional": false } ] } } }, { "type": "VariableDeclaration", "span": { "start": 732, "end": 768, "ctxt": 0 }, "kind": "const", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 738, "end": 767, "ctxt": 0 }, "id": { "type": "ObjectPattern", "span": { "start": 738, "end": 746, "ctxt": 0 }, "properties": [ { "type": "AssignmentPatternProperty", "span": { "start": 739, "end": 745, "ctxt": 0 }, "key": { "type": "Identifier", "span": { "start": 739, "end": 745, "ctxt": 0 }, "value": "Render", "optional": false }, "value": null } ], "optional": false, "typeAnnotation": null }, "init": { "type": "CallExpression", "span": { "start": 749, "end": 767, "ctxt": 0 }, "callee": { "type": "Identifier", "span": { "start": 749, "end": 756, "ctxt": 0 }, "value": "require", "optional": false }, "arguments": [ { "spread": null, "expression": { "type": "StringLiteral", "span": { "start": 757, "end": 766, "ctxt": 0 }, "value": "./index", "raw": "\"./index\"" } } ], "typeArguments": null }, "definite": false } ] }, { "type": "VariableDeclaration", "span": { "start": 769, "end": 795, "ctxt": 0 }, "kind": "let", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 773, "end": 794, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 773, "end": 779, "ctxt": 0 }, "value": "render", "optional": false, "typeAnnotation": null }, "init": { "type": "NewExpression", "span": { "start": 782, "end": 794, "ctxt": 0 }, "callee": { "type": "Identifier", "span": { "start": 786, "end": 792, "ctxt": 0 }, "value": "Render", "optional": false }, "arguments": [], "typeArguments": null }, "definite": false } ] }, { "type": "ExpressionStatement", "span": { "start": 797, "end": 819, "ctxt": 0 }, "expression": { "type": "CallExpression", "span": { "start": 797, "end": 818, "ctxt": 0 }, "callee": { "type": "MemberExpression", "span": { "start": 797, "end": 816, "ctxt": 0 }, "object": { "type": "Identifier", "span": { "start": 797, "end": 803, "ctxt": 0 }, "value": "render", "optional": false }, "property": { "type": "Identifier", "span": { "start": 804, "end": 816, "ctxt": 0 }, "value": "addRectangle", "optional": false } }, "arguments": [], "typeArguments": null } }, { "type": "ExpressionStatement", "span": { "start": 820, "end": 859, "ctxt": 0 }, "expression": { "type": "CallExpression", "span": { "start": 820, "end": 858, "ctxt": 0 }, "callee": { "type": "MemberExpression", "span": { "start": 820, "end": 831, "ctxt": 0 }, "object": { "type": "Identifier", "span": { "start": 820, "end": 827, "ctxt": 0 }, "value": "console", "optional": false }, "property": { "type": "Identifier", "span": { "start": 828, "end": 831, "ctxt": 0 }, "value": "log", "optional": false } }, "arguments": [ { "spread": null, "expression": { "type": "StringLiteral", "span": { "start": 832, "end": 841, "ctxt": 0 }, "value": "Objects", "raw": "\"Objects\"" } }, { "spread": null, "expression": { "type": "MemberExpression", "span": { "start": 843, "end": 857, "ctxt": 0 }, "object": { "type": "Identifier", "span": { "start": 843, "end": 849, "ctxt": 0 }, "value": "render", "optional": false }, "property": { "type": "Identifier", "span": { "start": 850, "end": 857, "ctxt": 0 }, "value": "objects", "optional": false } } } ], "typeArguments": null } } ], "interpreter": null }