{ "type": "File", "start": 0, "end": 293, "loc": { "start": { "line": 1, "column": 0 }, "end": { "line": 14, "column": 0 } }, "program": { "type": "Program", "start": 0, "end": 293, "loc": { "start": { "line": 1, "column": 0 }, "end": { "line": 14, "column": 0 } }, "sourceType": "module", "body": [ { "type": "ImportDeclaration", "start": 0, "end": 65, "loc": { "start": { "line": 1, "column": 0 }, "end": { "line": 1, "column": 65 } }, "specifiers": [ { "type": "ImportSpecifier", "start": 9, "end": 30, "loc": { "start": { "line": 1, "column": 9 }, "end": { "line": 1, "column": 30 } }, "imported": { "type": "Identifier", "start": 9, "end": 30, "loc": { "start": { "line": 1, "column": 9 }, "end": { "line": 1, "column": 30 }, "identifierName": "BaseSavegameInterface" }, "name": "BaseSavegameInterface" }, "local": { "type": "Identifier", "start": 9, "end": 30, "loc": { "start": { "line": 1, "column": 9 }, "end": { "line": 1, "column": 30 }, "identifierName": "BaseSavegameInterface" }, "name": "BaseSavegameInterface" } } ], "source": { "type": "StringLiteral", "start": 38, "end": 64, "loc": { "start": { "line": 1, "column": 38 }, "end": { "line": 1, "column": 64 } }, "extra": { "rawValue": "../savegame_interface.js", "raw": "\"../savegame_interface.js\"" }, "value": "../savegame_interface.js" } }, { "type": "VariableDeclaration", "start": 69, "end": 107, "loc": { "start": { "line": 3, "column": 0 }, "end": { "line": 3, "column": 38 } }, "declarations": [ { "type": "VariableDeclarator", "start": 75, "end": 106, "loc": { "start": { "line": 3, "column": 6 }, "end": { "line": 3, "column": 37 } }, "id": { "type": "Identifier", "start": 75, "end": 81, "loc": { "start": { "line": 3, "column": 6 }, "end": { "line": 3, "column": 12 }, "identifierName": "schema" }, "name": "schema" }, "init": { "type": "CallExpression", "start": 84, "end": 106, "loc": { "start": { "line": 3, "column": 15 }, "end": { "line": 3, "column": 37 } }, "callee": { "type": "Identifier", "start": 84, "end": 91, "loc": { "start": { "line": 3, "column": 15 }, "end": { "line": 3, "column": 22 }, "identifierName": "require" }, "name": "require" }, "arguments": [ { "type": "StringLiteral", "start": 92, "end": 105, "loc": { "start": { "line": 3, "column": 23 }, "end": { "line": 3, "column": 36 } }, "extra": { "rawValue": "./1000.json", "raw": "\"./1000.json\"" }, "value": "./1000.json" } ] } } ], "kind": "const" }, { "type": "ExportNamedDeclaration", "start": 111, "end": 291, "loc": { "start": { "line": 5, "column": 0 }, "end": { "line": 13, "column": 1 } }, "specifiers": [], "source": null, "declaration": { "type": "ClassDeclaration", "start": 118, "end": 291, "loc": { "start": { "line": 5, "column": 7 }, "end": { "line": 13, "column": 1 } }, "id": { "type": "Identifier", "start": 124, "end": 147, "loc": { "start": { "line": 5, "column": 13 }, "end": { "line": 5, "column": 36 }, "identifierName": "SavegameInterface_V1000" }, "name": "SavegameInterface_V1000" }, "superClass": { "type": "Identifier", "start": 156, "end": 177, "loc": { "start": { "line": 5, "column": 45 }, "end": { "line": 5, "column": 66 }, "identifierName": "BaseSavegameInterface" }, "name": "BaseSavegameInterface" }, "body": { "type": "ClassBody", "start": 178, "end": 291, "loc": { "start": { "line": 5, "column": 67 }, "end": { "line": 13, "column": 1 } }, "body": [ { "type": "ClassMethod", "start": 185, "end": 228, "loc": { "start": { "line": 6, "column": 4 }, "end": { "line": 8, "column": 5 } }, "static": false, "computed": false, "key": { "type": "Identifier", "start": 185, "end": 195, "loc": { "start": { "line": 6, "column": 4 }, "end": { "line": 6, "column": 14 }, "identifierName": "getVersion" }, "name": "getVersion" }, "kind": "method", "id": null, "generator": false, "expression": false, "async": false, "params": [], "body": { "type": "BlockStatement", "start": 198, "end": 228, "loc": { "start": { "line": 6, "column": 17 }, "end": { "line": 8, "column": 5 } }, "body": [ { "type": "ReturnStatement", "start": 209, "end": 221, "loc": { "start": { "line": 7, "column": 8 }, "end": { "line": 7, "column": 20 } }, "argument": { "type": "NumericLiteral", "start": 216, "end": 220, "loc": { "start": { "line": 7, "column": 15 }, "end": { "line": 7, "column": 19 } }, "extra": { "rawValue": 1000, "raw": "1000" }, "value": 1000 } } ], "directives": [] } }, { "type": "ClassMethod", "start": 236, "end": 288, "loc": { "start": { "line": 10, "column": 4 }, "end": { "line": 12, "column": 5 } }, "static": false, "computed": false, "key": { "type": "Identifier", "start": 236, "end": 253, "loc": { "start": { "line": 10, "column": 4 }, "end": { "line": 10, "column": 21 }, "identifierName": "getSchemaUncached" }, "name": "getSchemaUncached" }, "kind": "method", "id": null, "generator": false, "expression": false, "async": false, "params": [], "body": { "type": "BlockStatement", "start": 256, "end": 288, "loc": { "start": { "line": 10, "column": 24 }, "end": { "line": 12, "column": 5 } }, "body": [ { "type": "ReturnStatement", "start": 267, "end": 281, "loc": { "start": { "line": 11, "column": 8 }, "end": { "line": 11, "column": 22 } }, "argument": { "type": "Identifier", "start": 274, "end": 280, "loc": { "start": { "line": 11, "column": 15 }, "end": { "line": 11, "column": 21 }, "identifierName": "schema" }, "name": "schema" } } ], "directives": [] } } ] }, "leadingComments": [], "trailingComments": [] } } ], "directives": [] }, "comments": [], "tokens": [ { "type": { "label": "import", "keyword": "import", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "value": "import", "start": 0, "end": 6, "loc": { "start": { "line": 1, "column": 0 }, "end": { "line": 1, "column": 6 } } }, { "type": { "label": "{", "beforeExpr": true, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 7, "end": 8, "loc": { "start": { "line": 1, "column": 7 }, "end": { "line": 1, "column": 8 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "BaseSavegameInterface", "start": 9, "end": 30, "loc": { "start": { "line": 1, "column": 9 }, "end": { "line": 1, "column": 30 } } }, { "type": { "label": "}", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 31, "end": 32, "loc": { "start": { "line": 1, "column": 31 }, "end": { "line": 1, "column": 32 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "from", "start": 33, "end": 37, "loc": { "start": { "line": 1, "column": 33 }, "end": { "line": 1, "column": 37 } } }, { "type": { "label": "string", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "value": "../savegame_interface.js", "start": 38, "end": 64, "loc": { "start": { "line": 1, "column": 38 }, "end": { "line": 1, "column": 64 } } }, { "type": { "label": ";", "beforeExpr": true, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 64, "end": 65, "loc": { "start": { "line": 1, "column": 64 }, "end": { "line": 1, "column": 65 } } }, { "type": { "label": "const", "keyword": "const", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "value": "const", "start": 69, "end": 74, "loc": { "start": { "line": 3, "column": 0 }, "end": { "line": 3, "column": 5 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "schema", "start": 75, "end": 81, "loc": { "start": { "line": 3, "column": 6 }, "end": { "line": 3, "column": 12 } } }, { "type": { "label": "=", "beforeExpr": true, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": true, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "value": "=", "start": 82, "end": 83, "loc": { "start": { "line": 3, "column": 13 }, "end": { "line": 3, "column": 14 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "require", "start": 84, "end": 91, "loc": { "start": { "line": 3, "column": 15 }, "end": { "line": 3, "column": 22 } } }, { "type": { "label": "(", "beforeExpr": true, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 91, "end": 92, "loc": { "start": { "line": 3, "column": 22 }, "end": { "line": 3, "column": 23 } } }, { "type": { "label": "string", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "value": "./1000.json", "start": 92, "end": 105, "loc": { "start": { "line": 3, "column": 23 }, "end": { "line": 3, "column": 36 } } }, { "type": { "label": ")", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 105, "end": 106, "loc": { "start": { "line": 3, "column": 36 }, "end": { "line": 3, "column": 37 } } }, { "type": { "label": ";", "beforeExpr": true, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 106, "end": 107, "loc": { "start": { "line": 3, "column": 37 }, "end": { "line": 3, "column": 38 } } }, { "type": { "label": "export", "keyword": "export", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "value": "export", "start": 111, "end": 117, "loc": { "start": { "line": 5, "column": 0 }, "end": { "line": 5, "column": 6 } } }, { "type": { "label": "class", "keyword": "class", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "value": "class", "start": 118, "end": 123, "loc": { "start": { "line": 5, "column": 7 }, "end": { "line": 5, "column": 12 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "SavegameInterface_V1000", "start": 124, "end": 147, "loc": { "start": { "line": 5, "column": 13 }, "end": { "line": 5, "column": 36 } } }, { "type": { "label": "extends", "keyword": "extends", "beforeExpr": true, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "value": "extends", "start": 148, "end": 155, "loc": { "start": { "line": 5, "column": 37 }, "end": { "line": 5, "column": 44 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "BaseSavegameInterface", "start": 156, "end": 177, "loc": { "start": { "line": 5, "column": 45 }, "end": { "line": 5, "column": 66 } } }, { "type": { "label": "{", "beforeExpr": true, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 178, "end": 179, "loc": { "start": { "line": 5, "column": 67 }, "end": { "line": 5, "column": 68 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "getVersion", "start": 185, "end": 195, "loc": { "start": { "line": 6, "column": 4 }, "end": { "line": 6, "column": 14 } } }, { "type": { "label": "(", "beforeExpr": true, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 195, "end": 196, "loc": { "start": { "line": 6, "column": 14 }, "end": { "line": 6, "column": 15 } } }, { "type": { "label": ")", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 196, "end": 197, "loc": { "start": { "line": 6, "column": 15 }, "end": { "line": 6, "column": 16 } } }, { "type": { "label": "{", "beforeExpr": true, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 198, "end": 199, "loc": { "start": { "line": 6, "column": 17 }, "end": { "line": 6, "column": 18 } } }, { "type": { "label": "return", "keyword": "return", "beforeExpr": true, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "value": "return", "start": 209, "end": 215, "loc": { "start": { "line": 7, "column": 8 }, "end": { "line": 7, "column": 14 } } }, { "type": { "label": "num", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "value": 1000, "start": 216, "end": 220, "loc": { "start": { "line": 7, "column": 15 }, "end": { "line": 7, "column": 19 } } }, { "type": { "label": ";", "beforeExpr": true, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 220, "end": 221, "loc": { "start": { "line": 7, "column": 19 }, "end": { "line": 7, "column": 20 } } }, { "type": { "label": "}", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 227, "end": 228, "loc": { "start": { "line": 8, "column": 4 }, "end": { "line": 8, "column": 5 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "getSchemaUncached", "start": 236, "end": 253, "loc": { "start": { "line": 10, "column": 4 }, "end": { "line": 10, "column": 21 } } }, { "type": { "label": "(", "beforeExpr": true, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 253, "end": 254, "loc": { "start": { "line": 10, "column": 21 }, "end": { "line": 10, "column": 22 } } }, { "type": { "label": ")", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 254, "end": 255, "loc": { "start": { "line": 10, "column": 22 }, "end": { "line": 10, "column": 23 } } }, { "type": { "label": "{", "beforeExpr": true, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 256, "end": 257, "loc": { "start": { "line": 10, "column": 24 }, "end": { "line": 10, "column": 25 } } }, { "type": { "label": "return", "keyword": "return", "beforeExpr": true, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "value": "return", "start": 267, "end": 273, "loc": { "start": { "line": 11, "column": 8 }, "end": { "line": 11, "column": 14 } } }, { "type": { "label": "name", "beforeExpr": false, "startsExpr": true, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "value": "schema", "start": 274, "end": 280, "loc": { "start": { "line": 11, "column": 15 }, "end": { "line": 11, "column": 21 } } }, { "type": { "label": ";", "beforeExpr": true, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 280, "end": 281, "loc": { "start": { "line": 11, "column": 21 }, "end": { "line": 11, "column": 22 } } }, { "type": { "label": "}", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 287, "end": 288, "loc": { "start": { "line": 12, "column": 4 }, "end": { "line": 12, "column": 5 } } }, { "type": { "label": "}", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null }, "start": 290, "end": 291, "loc": { "start": { "line": 13, "column": 0 }, "end": { "line": 13, "column": 1 } } }, { "type": { "label": "eof", "beforeExpr": false, "startsExpr": false, "rightAssociative": false, "isLoop": false, "isAssign": false, "prefix": false, "postfix": false, "binop": null, "updateContext": null }, "start": 293, "end": 293, "loc": { "start": { "line": 14, "column": 0 }, "end": { "line": 14, "column": 0 } } } ] }