🌳JSのASTの比較
function draw() {
circle(10,10,10);
}
ACRON
{
"type": "Program",
"start": 0,
"end": 99,
"body": [
{
"type": "FunctionDeclaration",
"start": 0,
"end": 39,
"id": {
"type": "Identifier",
"start": 9,
"end": 13,
"name": "draw"
},
"expression": false,
"generator": false,
"async": false,
"params": [],
"body": {
"type": "BlockStatement",
"start": 16,
"end": 39,
"body": [
{
"type": "ExpressionStatement",
"start": 20,
"end": 37,
"expression": {
"type": "CallExpression",
"start": 20,
"end": 36,
"callee": {
"type": "Identifier",
"start": 20,
"end": 26,
"name": "circle"
},
"arguments": [
{
"type": "Literal",
"start": 27,
"end": 29,
"value": 10,
"raw": "10"
},
{
"type": "Literal",
"start": 30,
"end": 32,
"value": 10,
"raw": "10"
},
{
"type": "Literal",
"start": 33,
"end": 35,
"value": 10,
"raw": "10"
}
],
"optional": false
}
}
]
}
}
],
"sourceType": "script"
}
https://editor.p5js.org/setapolo/sketches/OIkR4L6i8
esprima
{
"type": "Program",
"body": [
{
"type": "FunctionDeclaration",
"id": {
"type": "Identifier",
"name": "draw"
},
"params": [],
"body": {
"type": "BlockStatement",
"body": [
{
"type": "ExpressionStatement",
"expression": {
"type": "CallExpression",
"callee": {
"type": "Identifier",
"name": "circle"
},
"arguments": [
{
"type": "Literal",
"value": 10,
"raw": "10"
},
{
"type": "Literal",
"value": 10,
"raw": "10"
},
{
"type": "Literal",
"value": 10,
"raw": "10"
}
]
}
}
]
},
"generator": false,
"expression": false,
"async": false
}
],
"sourceType": "script"
}
お願い致します