--- source: kcl-lib/src/simulation_tests.rs description: Result of parsing walkie-talkie.kcl --- { "Ok": { "body": [ { "commentStart": 383, "end": 0, "path": { "type": "Kcl", "filename": "globals.kcl" }, "preComments": [ "// import constants" ], "selector": { "commentStart": 412, "end": 0, "start": 0, "type": "Glob" }, "start": 0, "type": "ImportStatement", "type": "ImportStatement" }, { "commentStart": 432, "end": 0, "path": { "type": "Kcl", "filename": "body.kcl" }, "preComments": [ "", "", "// import parts and constants" ], "selector": { "type": "List", "items": [ { "alias": null, "commentStart": 471, "end": 0, "name": { "commentStart": 471, "end": 0, "name": "body", "start": 0, "type": "Identifier" }, "start": 0, "type": "ImportItem" } ] }, "start": 0, "type": "ImportStatement", "type": "ImportStatement" }, { "commentStart": 492, "end": 0, "path": { "type": "Kcl", "filename": "case.kcl" }, "selector": { "type": "List", "items": [ { "alias": null, "commentStart": 499, "end": 0, "name": { "commentStart": 499, "end": 0, "name": "case", "start": 0, "type": "Identifier" }, "start": 0, "type": "ImportItem" } ] }, "start": 0, "type": "ImportStatement", "type": "ImportStatement" }, { "commentStart": 520, "end": 0, "path": { "type": "Kcl", "filename": "antenna.kcl" }, "selector": { "type": "List", "items": [ { "alias": null, "commentStart": 527, "end": 0, "name": { "commentStart": 527, "end": 0, "name": "antenna", "start": 0, "type": "Identifier" }, "start": 0, "type": "ImportItem" } ] }, "start": 0, "type": "ImportStatement", "type": "ImportStatement" }, { "commentStart": 554, "end": 0, "path": { "type": "Kcl", "filename": "talk-button.kcl" }, "selector": { "type": "List", "items": [ { "alias": null, "commentStart": 561, "end": 0, "name": { "commentStart": 561, "end": 0, "name": "talkButton", "start": 0, "type": "Identifier" }, "start": 0, "type": "ImportItem" } ] }, "start": 0, "type": "ImportStatement", "type": "ImportStatement" }, { "commentStart": 595, "end": 0, "path": { "type": "Kcl", "filename": "knob.kcl" }, "selector": { "type": "List", "items": [ { "alias": null, "commentStart": 602, "end": 0, "name": { "commentStart": 602, "end": 0, "name": "knob", "start": 0, "type": "Identifier" }, "start": 0, "type": "ImportItem" } ] }, "start": 0, "type": "ImportStatement", "type": "ImportStatement" }, { "commentStart": 623, "end": 0, "path": { "type": "Kcl", "filename": "button.kcl" }, "selector": { "type": "List", "items": [ { "alias": null, "commentStart": 630, "end": 0, "name": { "commentStart": 630, "end": 0, "name": "button", "start": 0, "type": "Identifier" }, "start": 0, "type": "ImportItem" } ] }, "start": 0, "type": "ImportStatement", "type": "ImportStatement" }, { "commentStart": 654, "end": 0, "expression": { "arguments": [], "callee": { "abs_path": false, "commentStart": 675, "end": 0, "name": { "commentStart": 675, "end": 0, "name": "body", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 675, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" }, "preComments": [ "", "", "// import the body" ], "start": 0, "type": "ExpressionStatement", "type": "ExpressionStatement" }, { "commentStart": 681, "end": 0, "expression": { "body": [ { "arguments": [], "callee": { "abs_path": false, "commentStart": 705, "end": 0, "name": { "commentStart": 705, "end": 0, "name": "antenna", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 705, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" }, { "arguments": [ { "type": "LabeledArg", "label": { "commentStart": 730, "end": 0, "name": "x", "start": 0, "type": "Identifier" }, "arg": { "commentStart": 734, "end": 0, "left": { "commentStart": 734, "end": 0, "left": { "argument": { "abs_path": false, "commentStart": 735, "end": 0, "name": { "commentStart": 735, "end": 0, "name": "width", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" }, "commentStart": 734, "end": 0, "operator": "-", "start": 0, "type": "UnaryExpression", "type": "UnaryExpression" }, "operator": "/", "right": { "commentStart": 743, "end": 0, "raw": "2", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 2.0, "suffix": "None" } }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" }, "operator": "+", "right": { "commentStart": 747, "end": 0, "raw": ".45", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 0.45, "suffix": "None" } }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" } }, { "type": "LabeledArg", "label": { "commentStart": 752, "end": 0, "name": "y", "start": 0, "type": "Identifier" }, "arg": { "argument": { "commentStart": 757, "end": 0, "raw": "0.10", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 0.1, "suffix": "None" } }, "commentStart": 756, "end": 0, "operator": "-", "start": 0, "type": "UnaryExpression", "type": "UnaryExpression" } }, { "type": "LabeledArg", "label": { "commentStart": 763, "end": 0, "name": "z", "start": 0, "type": "Identifier" }, "arg": { "commentStart": 767, "end": 0, "left": { "abs_path": false, "commentStart": 767, "end": 0, "name": { "commentStart": 767, "end": 0, "name": "height", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" }, "operator": "/", "right": { "commentStart": 776, "end": 0, "raw": "2", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 2.0, "suffix": "None" } }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" } } ], "callee": { "abs_path": false, "commentStart": 720, "end": 0, "name": { "commentStart": 720, "end": 0, "name": "translate", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 720, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": null } ], "commentStart": 705, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "1": [ { "commentStart": 778, "end": 0, "start": 0, "type": "NonCodeNode", "value": { "type": "newLineBlockComment", "value": "import the case", "style": "line" } } ] }, "startNodes": [] }, "start": 0, "type": "PipeExpression", "type": "PipeExpression" }, "preComments": [ "", "", "// import the antenna" ], "start": 0, "type": "ExpressionStatement", "type": "ExpressionStatement" }, { "commentStart": 799, "end": 0, "expression": { "body": [ { "arguments": [], "callee": { "abs_path": false, "commentStart": 799, "end": 0, "name": { "commentStart": 799, "end": 0, "name": "case", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 799, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" }, { "arguments": [ { "type": "LabeledArg", "label": { "commentStart": 821, "end": 0, "name": "x", "start": 0, "type": "Identifier" }, "arg": { "commentStart": 825, "end": 0, "raw": "0", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 0.0, "suffix": "None" } } }, { "type": "LabeledArg", "label": { "commentStart": 828, "end": 0, "name": "y", "start": 0, "type": "Identifier" }, "arg": { "argument": { "commentStart": 833, "end": 0, "raw": "1", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 1.0, "suffix": "None" } }, "commentStart": 832, "end": 0, "operator": "-", "start": 0, "type": "UnaryExpression", "type": "UnaryExpression" } }, { "type": "LabeledArg", "label": { "commentStart": 836, "end": 0, "name": "z", "start": 0, "type": "Identifier" }, "arg": { "commentStart": 840, "end": 0, "raw": "0", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 0.0, "suffix": "None" } } } ], "callee": { "abs_path": false, "commentStart": 811, "end": 0, "name": { "commentStart": 811, "end": 0, "name": "translate", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 811, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": null } ], "commentStart": 799, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "1": [ { "commentStart": 842, "end": 0, "start": 0, "type": "NonCodeNode", "value": { "type": "newLineBlockComment", "value": "import the talk button", "style": "line" } } ] }, "startNodes": [] }, "start": 0, "type": "PipeExpression", "type": "PipeExpression" }, "start": 0, "type": "ExpressionStatement", "type": "ExpressionStatement" }, { "commentStart": 870, "end": 0, "expression": { "body": [ { "arguments": [], "callee": { "abs_path": false, "commentStart": 870, "end": 0, "name": { "commentStart": 870, "end": 0, "name": "talkButton", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 870, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" }, { "arguments": [ { "type": "LabeledArg", "label": { "commentStart": 898, "end": 0, "name": "x", "start": 0, "type": "Identifier" }, "arg": { "commentStart": 902, "end": 0, "left": { "abs_path": false, "commentStart": 902, "end": 0, "name": { "commentStart": 902, "end": 0, "name": "width", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" }, "operator": "/", "right": { "commentStart": 910, "end": 0, "raw": "2", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 2.0, "suffix": "None" } }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" } }, { "type": "LabeledArg", "label": { "commentStart": 913, "end": 0, "name": "y", "start": 0, "type": "Identifier" }, "arg": { "commentStart": 917, "end": 0, "left": { "argument": { "abs_path": false, "commentStart": 918, "end": 0, "name": { "commentStart": 918, "end": 0, "name": "thickness", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" }, "commentStart": 917, "end": 0, "operator": "-", "start": 0, "type": "UnaryExpression", "type": "UnaryExpression" }, "operator": "/", "right": { "commentStart": 930, "end": 0, "raw": "2", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 2.0, "suffix": "None" } }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" } }, { "type": "LabeledArg", "label": { "commentStart": 933, "end": 0, "name": "z", "start": 0, "type": "Identifier" }, "arg": { "commentStart": 937, "end": 0, "raw": ".5", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 0.5, "suffix": "None" } } } ], "callee": { "abs_path": false, "commentStart": 888, "end": 0, "name": { "commentStart": 888, "end": 0, "name": "translate", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 888, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": null } ], "commentStart": 870, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "1": [ { "commentStart": 940, "end": 0, "start": 0, "type": "NonCodeNode", "value": { "type": "newLineBlockComment", "value": "import the frequency knob", "style": "line" } } ] }, "startNodes": [] }, "start": 0, "type": "PipeExpression", "type": "PipeExpression" }, "start": 0, "type": "ExpressionStatement", "type": "ExpressionStatement" }, { "commentStart": 971, "end": 0, "expression": { "body": [ { "arguments": [], "callee": { "abs_path": false, "commentStart": 971, "end": 0, "name": { "commentStart": 971, "end": 0, "name": "knob", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 971, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" }, { "arguments": [ { "type": "LabeledArg", "label": { "commentStart": 993, "end": 0, "name": "x", "start": 0, "type": "Identifier" }, "arg": { "commentStart": 997, "end": 0, "left": { "commentStart": 997, "end": 0, "left": { "abs_path": false, "commentStart": 997, "end": 0, "name": { "commentStart": 997, "end": 0, "name": "width", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" }, "operator": "/", "right": { "commentStart": 1005, "end": 0, "raw": "2", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 2.0, "suffix": "None" } }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" }, "operator": "-", "right": { "commentStart": 1009, "end": 0, "raw": "0.70", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 0.7, "suffix": "None" } }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" } }, { "type": "LabeledArg", "label": { "commentStart": 1015, "end": 0, "name": "y", "start": 0, "type": "Identifier" }, "arg": { "commentStart": 1019, "end": 0, "left": { "argument": { "abs_path": false, "commentStart": 1020, "end": 0, "name": { "commentStart": 1020, "end": 0, "name": "thickness", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" }, "commentStart": 1019, "end": 0, "operator": "-", "start": 0, "type": "UnaryExpression", "type": "UnaryExpression" }, "operator": "/", "right": { "commentStart": 1032, "end": 0, "raw": "2", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 2.0, "suffix": "None" } }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" } }, { "type": "LabeledArg", "label": { "commentStart": 1035, "end": 0, "name": "z", "start": 0, "type": "Identifier" }, "arg": { "commentStart": 1039, "end": 0, "left": { "abs_path": false, "commentStart": 1039, "end": 0, "name": { "commentStart": 1039, "end": 0, "name": "height", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" }, "operator": "/", "right": { "commentStart": 1048, "end": 0, "raw": "2", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 2.0, "suffix": "None" } }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" } } ], "callee": { "abs_path": false, "commentStart": 983, "end": 0, "name": { "commentStart": 983, "end": 0, "name": "translate", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 983, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": null } ], "commentStart": 971, "end": 0, "nonCodeMeta": { "nonCodeNodes": { "1": [ { "commentStart": 1050, "end": 0, "start": 0, "type": "NonCodeNode", "value": { "type": "newLineBlockComment", "value": "import the buttons", "style": "line" } } ] }, "startNodes": [] }, "start": 0, "type": "PipeExpression", "type": "PipeExpression" }, "start": 0, "type": "ExpressionStatement", "type": "ExpressionStatement" }, { "commentStart": 1074, "end": 0, "expression": { "body": [ { "arguments": [], "callee": { "abs_path": false, "commentStart": 1074, "end": 0, "name": { "commentStart": 1074, "end": 0, "name": "button", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 1074, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" }, { "arguments": [ { "type": "LabeledArg", "label": { "commentStart": 1098, "end": 0, "name": "x", "start": 0, "type": "Identifier" }, "arg": { "argument": { "commentStart": 1104, "end": 0, "left": { "commentStart": 1104, "end": 0, "left": { "abs_path": false, "commentStart": 1104, "end": 0, "name": { "commentStart": 1104, "end": 0, "name": "screenWidth", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" }, "operator": "/", "right": { "commentStart": 1118, "end": 0, "raw": "2", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 2.0, "suffix": "None" } }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" }, "operator": "+", "right": { "abs_path": false, "commentStart": 1122, "end": 0, "name": { "commentStart": 1122, "end": 0, "name": "tolerance", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" }, "commentStart": 1102, "end": 0, "operator": "-", "start": 0, "type": "UnaryExpression", "type": "UnaryExpression" } }, { "type": "LabeledArg", "label": { "commentStart": 1134, "end": 0, "name": "y", "start": 0, "type": "Identifier" }, "arg": { "argument": { "commentStart": 1139, "end": 0, "raw": "1", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 1.0, "suffix": "None" } }, "commentStart": 1138, "end": 0, "operator": "-", "start": 0, "type": "UnaryExpression", "type": "UnaryExpression" } }, { "type": "LabeledArg", "label": { "commentStart": 1142, "end": 0, "name": "z", "start": 0, "type": "Identifier" }, "arg": { "abs_path": false, "commentStart": 1146, "end": 0, "name": { "commentStart": 1146, "end": 0, "name": "screenYPosition", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" } } ], "callee": { "abs_path": false, "commentStart": 1088, "end": 0, "name": { "commentStart": 1088, "end": 0, "name": "translate", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 1088, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": null } ], "commentStart": 1074, "end": 0, "start": 0, "type": "PipeExpression", "type": "PipeExpression" }, "start": 0, "type": "ExpressionStatement", "type": "ExpressionStatement" }, { "commentStart": 1163, "end": 0, "expression": { "body": [ { "arguments": [], "callee": { "abs_path": false, "commentStart": 1163, "end": 0, "name": { "commentStart": 1163, "end": 0, "name": "button", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 1163, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" }, { "arguments": [ { "type": "LabeledArg", "label": { "commentStart": 1187, "end": 0, "name": "x", "start": 0, "type": "Identifier" }, "arg": { "argument": { "commentStart": 1193, "end": 0, "left": { "commentStart": 1193, "end": 0, "left": { "abs_path": false, "commentStart": 1193, "end": 0, "name": { "commentStart": 1193, "end": 0, "name": "screenWidth", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" }, "operator": "/", "right": { "commentStart": 1207, "end": 0, "raw": "2", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 2.0, "suffix": "None" } }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" }, "operator": "+", "right": { "abs_path": false, "commentStart": 1211, "end": 0, "name": { "commentStart": 1211, "end": 0, "name": "tolerance", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" }, "commentStart": 1191, "end": 0, "operator": "-", "start": 0, "type": "UnaryExpression", "type": "UnaryExpression" } }, { "type": "LabeledArg", "label": { "commentStart": 1223, "end": 0, "name": "y", "start": 0, "type": "Identifier" }, "arg": { "argument": { "commentStart": 1228, "end": 0, "raw": "1", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 1.0, "suffix": "None" } }, "commentStart": 1227, "end": 0, "operator": "-", "start": 0, "type": "UnaryExpression", "type": "UnaryExpression" } }, { "type": "LabeledArg", "label": { "commentStart": 1231, "end": 0, "name": "z", "start": 0, "type": "Identifier" }, "arg": { "commentStart": 1235, "end": 0, "left": { "commentStart": 1235, "end": 0, "left": { "abs_path": false, "commentStart": 1235, "end": 0, "name": { "commentStart": 1235, "end": 0, "name": "screenYPosition", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" }, "operator": "-", "right": { "abs_path": false, "commentStart": 1253, "end": 0, "name": { "commentStart": 1253, "end": 0, "name": "buttonHeight", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" }, "operator": "-", "right": { "commentStart": 1269, "end": 0, "left": { "abs_path": false, "commentStart": 1269, "end": 0, "name": { "commentStart": 1269, "end": 0, "name": "tolerance", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" }, "operator": "*", "right": { "commentStart": 1281, "end": 0, "raw": "2", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 2.0, "suffix": "None" } }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" } } ], "callee": { "abs_path": false, "commentStart": 1177, "end": 0, "name": { "commentStart": 1177, "end": 0, "name": "translate", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 1177, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": null } ], "commentStart": 1163, "end": 0, "start": 0, "type": "PipeExpression", "type": "PipeExpression" }, "start": 0, "type": "ExpressionStatement", "type": "ExpressionStatement" }, { "commentStart": 1285, "end": 0, "expression": { "body": [ { "arguments": [], "callee": { "abs_path": false, "commentStart": 1285, "end": 0, "name": { "commentStart": 1285, "end": 0, "name": "button", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 1285, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" }, { "arguments": [ { "type": "LabeledArg", "label": { "commentStart": 1324, "end": 0, "name": "roll", "start": 0, "type": "Identifier" }, "arg": { "commentStart": 1331, "end": 0, "raw": "0", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 0.0, "suffix": "None" } } }, { "type": "LabeledArg", "label": { "commentStart": 1341, "end": 0, "name": "pitch", "start": 0, "type": "Identifier" }, "arg": { "commentStart": 1349, "end": 0, "raw": "180", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 180.0, "suffix": "None" } } }, { "type": "LabeledArg", "label": { "commentStart": 1361, "end": 0, "name": "yaw", "start": 0, "type": "Identifier" }, "arg": { "commentStart": 1367, "end": 0, "raw": "0", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 0.0, "suffix": "None" } } } ], "callee": { "abs_path": false, "commentStart": 1299, "end": 0, "name": { "commentStart": 1299, "end": 0, "name": "rotate", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 1299, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { "commentStart": 1314, "end": 0, "start": 0, "type": "PipeSubstitution", "type": "PipeSubstitution" } }, { "arguments": [ { "type": "LabeledArg", "label": { "commentStart": 1400, "end": 0, "name": "x", "start": 0, "type": "Identifier" }, "arg": { "commentStart": 1404, "end": 0, "left": { "commentStart": 1404, "end": 0, "left": { "abs_path": false, "commentStart": 1404, "end": 0, "name": { "commentStart": 1404, "end": 0, "name": "screenWidth", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" }, "operator": "/", "right": { "commentStart": 1418, "end": 0, "raw": "2", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 2.0, "suffix": "None" } }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" }, "operator": "+", "right": { "abs_path": false, "commentStart": 1422, "end": 0, "name": { "commentStart": 1422, "end": 0, "name": "tolerance", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" } }, { "type": "LabeledArg", "label": { "commentStart": 1440, "end": 0, "name": "y", "start": 0, "type": "Identifier" }, "arg": { "argument": { "commentStart": 1445, "end": 0, "raw": "1", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 1.0, "suffix": "None" } }, "commentStart": 1444, "end": 0, "operator": "-", "start": 0, "type": "UnaryExpression", "type": "UnaryExpression" } }, { "type": "LabeledArg", "label": { "commentStart": 1455, "end": 0, "name": "z", "start": 0, "type": "Identifier" }, "arg": { "commentStart": 1459, "end": 0, "left": { "abs_path": false, "commentStart": 1459, "end": 0, "name": { "commentStart": 1459, "end": 0, "name": "screenYPosition", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" }, "operator": "-", "right": { "abs_path": false, "commentStart": 1477, "end": 0, "name": { "commentStart": 1477, "end": 0, "name": "buttonHeight", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" } }, { "type": "LabeledArg", "label": { "commentStart": 1498, "end": 0, "name": "global", "start": 0, "type": "Identifier" }, "arg": { "commentStart": 1507, "end": 0, "raw": "true", "start": 0, "type": "Literal", "type": "Literal", "value": true } } ], "callee": { "abs_path": false, "commentStart": 1382, "end": 0, "name": { "commentStart": 1382, "end": 0, "name": "translate", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 1382, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": null } ], "commentStart": 1285, "end": 0, "start": 0, "type": "PipeExpression", "type": "PipeExpression" }, "start": 0, "type": "ExpressionStatement", "type": "ExpressionStatement" }, { "commentStart": 1520, "end": 0, "expression": { "body": [ { "arguments": [], "callee": { "abs_path": false, "commentStart": 1520, "end": 0, "name": { "commentStart": 1520, "end": 0, "name": "button", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 1520, "end": 0, "start": 0, "type": "CallExpression", "type": "CallExpression" }, { "arguments": [ { "type": "LabeledArg", "label": { "commentStart": 1559, "end": 0, "name": "roll", "start": 0, "type": "Identifier" }, "arg": { "commentStart": 1566, "end": 0, "raw": "0", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 0.0, "suffix": "None" } } }, { "type": "LabeledArg", "label": { "commentStart": 1576, "end": 0, "name": "pitch", "start": 0, "type": "Identifier" }, "arg": { "commentStart": 1584, "end": 0, "raw": "180", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 180.0, "suffix": "None" } } }, { "type": "LabeledArg", "label": { "commentStart": 1596, "end": 0, "name": "yaw", "start": 0, "type": "Identifier" }, "arg": { "commentStart": 1602, "end": 0, "raw": "0", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 0.0, "suffix": "None" } } } ], "callee": { "abs_path": false, "commentStart": 1534, "end": 0, "name": { "commentStart": 1534, "end": 0, "name": "rotate", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 1534, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": { "commentStart": 1549, "end": 0, "start": 0, "type": "PipeSubstitution", "type": "PipeSubstitution" } }, { "arguments": [ { "type": "LabeledArg", "label": { "commentStart": 1635, "end": 0, "name": "x", "start": 0, "type": "Identifier" }, "arg": { "commentStart": 1639, "end": 0, "left": { "commentStart": 1639, "end": 0, "left": { "abs_path": false, "commentStart": 1639, "end": 0, "name": { "commentStart": 1639, "end": 0, "name": "screenWidth", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" }, "operator": "/", "right": { "commentStart": 1653, "end": 0, "raw": "2", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 2.0, "suffix": "None" } }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" }, "operator": "+", "right": { "abs_path": false, "commentStart": 1657, "end": 0, "name": { "commentStart": 1657, "end": 0, "name": "tolerance", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" } }, { "type": "LabeledArg", "label": { "commentStart": 1675, "end": 0, "name": "y", "start": 0, "type": "Identifier" }, "arg": { "argument": { "commentStart": 1680, "end": 0, "raw": "1", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 1.0, "suffix": "None" } }, "commentStart": 1679, "end": 0, "operator": "-", "start": 0, "type": "UnaryExpression", "type": "UnaryExpression" } }, { "type": "LabeledArg", "label": { "commentStart": 1690, "end": 0, "name": "z", "start": 0, "type": "Identifier" }, "arg": { "commentStart": 1694, "end": 0, "left": { "commentStart": 1694, "end": 0, "left": { "abs_path": false, "commentStart": 1694, "end": 0, "name": { "commentStart": 1694, "end": 0, "name": "screenYPosition", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" }, "operator": "-", "right": { "commentStart": 1713, "end": 0, "left": { "abs_path": false, "commentStart": 1713, "end": 0, "name": { "commentStart": 1713, "end": 0, "name": "buttonHeight", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" }, "operator": "*", "right": { "commentStart": 1728, "end": 0, "raw": "2", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 2.0, "suffix": "None" } }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" }, "operator": "-", "right": { "commentStart": 1734, "end": 0, "left": { "abs_path": false, "commentStart": 1734, "end": 0, "name": { "commentStart": 1734, "end": 0, "name": "tolerance", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" }, "operator": "*", "right": { "commentStart": 1746, "end": 0, "raw": "2", "start": 0, "type": "Literal", "type": "Literal", "value": { "value": 2.0, "suffix": "None" } }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" }, "start": 0, "type": "BinaryExpression", "type": "BinaryExpression" } }, { "type": "LabeledArg", "label": { "commentStart": 1757, "end": 0, "name": "global", "start": 0, "type": "Identifier" }, "arg": { "commentStart": 1766, "end": 0, "raw": "true", "start": 0, "type": "Literal", "type": "Literal", "value": true } } ], "callee": { "abs_path": false, "commentStart": 1617, "end": 0, "name": { "commentStart": 1617, "end": 0, "name": "translate", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name" }, "commentStart": 1617, "end": 0, "start": 0, "type": "CallExpressionKw", "type": "CallExpressionKw", "unlabeled": null } ], "commentStart": 1520, "end": 0, "start": 0, "type": "PipeExpression", "type": "PipeExpression" }, "start": 0, "type": "ExpressionStatement", "type": "ExpressionStatement" } ], "commentStart": 0, "end": 0, "innerAttrs": [ { "commentStart": 0, "end": 0, "name": { "commentStart": 351, "end": 0, "name": "settings", "start": 0, "type": "Identifier" }, "preComments": [ "// Walkie Talkie", "// A portable, handheld two-way radio device that allows users to communicate wirelessly over short to medium distances. It operates on specific radio frequencies and features a push-to-talk button for transmitting messages, making it ideal for quick and reliable communication in outdoor, work, or emergency settings.", "", "", "// set units" ], "properties": [ { "commentStart": 360, "end": 0, "key": { "commentStart": 360, "end": 0, "name": "defaultLengthUnit", "start": 0, "type": "Identifier" }, "start": 0, "type": "ObjectProperty", "value": { "abs_path": false, "commentStart": 380, "end": 0, "name": { "commentStart": 380, "end": 0, "name": "in", "start": 0, "type": "Identifier" }, "path": [], "start": 0, "type": "Name", "type": "Name" } } ], "start": 0, "type": "Annotation" } ], "nonCodeMeta": { "nonCodeNodes": {}, "startNodes": [ { "commentStart": 383, "end": 0, "start": 0, "type": "NonCodeNode", "value": { "type": "newLine" } } ] }, "start": 0 } }