@lcap/nasl-parser
Version:
Take Nasl text to Nasl AST with the help of generalized parsing.
281 lines (280 loc) • 9.06 kB
JSON
{
"concept": "Logic",
"name": "testArith",
"params": [],
"returns": [
{
"concept": "Return",
"name": "result"
}
],
"variables": [
{
"concept": "Variable",
"name": "variable1"
},
{
"concept": "Variable",
"name": "variable2"
},
{
"concept": "Variable",
"name": "variable3"
},
{
"concept": "Variable",
"name": "variable4"
}
],
"body": [
{
"concept": "Start",
"label": "开始",
"folded": false,
"offsetX": null,
"offsetY": null
},
{
"concept": "Assignment",
"left": {
"concept": "Identifier",
"name": "variable1",
"folded": false,
"offsetX": null,
"offsetY": null
},
"right": {
"concept": "BinaryExpression",
"left": {
"concept": "BinaryExpression",
"left": {
"concept": "NumericLiteral",
"value": "1",
"typeAnnotation": {
"concept": "TypeAnnotation",
"typeKind": "primitive",
"typeNamespace": "nasl.core",
"typeName": "Long"
},
"folded": false,
"offsetX": null,
"offsetY": null
},
"right": {
"concept": "NumericLiteral",
"value": "2",
"typeAnnotation": {
"concept": "TypeAnnotation",
"typeKind": "primitive",
"typeNamespace": "nasl.core",
"typeName": "Long"
},
"folded": false,
"offsetX": null,
"offsetY": null
},
"operator": "+",
"folded": false,
"offsetX": 249.75,
"offsetY": 281.51953125
},
"right": {
"concept": "NumericLiteral",
"value": "3",
"typeAnnotation": {
"concept": "TypeAnnotation",
"typeKind": "primitive",
"typeNamespace": "nasl.core",
"typeName": "Long"
},
"folded": false,
"offsetX": null,
"offsetY": null
},
"operator": "+",
"folded": false,
"offsetX": null,
"offsetY": null
},
"folded": false,
"offsetX": null,
"offsetY": null
},
{
"concept": "Assignment",
"left": {
"concept": "Identifier",
"name": "variable2",
"folded": false,
"offsetX": null,
"offsetY": null
},
"right": {
"concept": "BinaryExpression",
"left": {
"concept": "NumericLiteral",
"value": "1",
"typeAnnotation": {
"concept": "TypeAnnotation",
"typeKind": "primitive",
"typeNamespace": "nasl.core",
"typeName": "Long"
},
"folded": false,
"offsetX": null,
"offsetY": null
},
"right": {
"concept": "BinaryExpression",
"left": {
"concept": "NumericLiteral",
"value": "2",
"typeAnnotation": {
"concept": "TypeAnnotation",
"typeKind": "primitive",
"typeNamespace": "nasl.core",
"typeName": "Long"
},
"folded": false,
"offsetX": null,
"offsetY": null
},
"right": {
"concept": "NumericLiteral",
"value": "3",
"typeAnnotation": {
"concept": "TypeAnnotation",
"typeKind": "primitive",
"typeNamespace": "nasl.core",
"typeName": "Long"
},
"folded": false,
"offsetX": null,
"offsetY": null
},
"operator": "-",
"folded": false,
"offsetX": 205.37728118896484,
"offsetY": 457.12890625
},
"operator": "-",
"folded": false,
"offsetX": 453.7265625,
"offsetY": 304.51953125
},
"folded": false,
"offsetX": null,
"offsetY": null
},
{
"concept": "Assignment",
"left": {
"concept": "Identifier",
"name": "variable3",
"folded": false,
"offsetX": null,
"offsetY": null
},
"right": {
"concept": "BinaryExpression",
"left": {
"concept": "Identifier",
"name": "variable1",
"folded": false,
"offsetX": 268.54134368896484,
"offsetY": 395
},
"right": {
"concept": "Identifier",
"name": "variable2",
"folded": false,
"offsetX": null,
"offsetY": null
},
"operator": "*",
"folded": false,
"offsetX": null,
"offsetY": null
},
"folded": false,
"offsetX": null,
"offsetY": null
},
{
"concept": "Assignment",
"left": {
"concept": "Identifier",
"name": "variable4",
"folded": false,
"offsetX": null,
"offsetY": null
},
"right": {
"concept": "BinaryExpression",
"left": {
"concept": "Identifier",
"name": "variable3",
"folded": false,
"offsetX": null,
"offsetY": null
},
"right": {
"concept": "BinaryExpression",
"left": {
"concept": "Identifier",
"name": "variable3",
"folded": false,
"offsetX": null,
"offsetY": null
},
"right": {
"concept": "Identifier",
"name": "variable3",
"folded": false,
"offsetX": null,
"offsetY": null
},
"operator": "%",
"folded": false,
"offsetX": null,
"offsetY": null
},
"operator": "/",
"folded": false,
"offsetX": null,
"offsetY": null
},
"folded": false,
"offsetX": null,
"offsetY": null
},
{
"concept": "Assignment",
"left": {
"concept": "Identifier",
"name": "result",
"folded": false,
"offsetX": null,
"offsetY": null
},
"right": {
"concept": "Identifier",
"name": "variable4",
"folded": false,
"offsetX": null,
"offsetY": null
},
"folded": false,
"offsetX": null,
"offsetY": null
},
{
"concept": "End",
"label": "结束",
"folded": false,
"offsetX": null,
"offsetY": null
}
],
"playground": []
}