@lcap/nasl-parser
Version:
Take Nasl text to Nasl AST with the help of generalized parsing.
183 lines (182 loc) • 6.14 kB
JSON
{
"concept": "Logic",
"name": "aiTest1",
"description": "这是一段描述",
"params": [
{
"concept": "Param",
"name": "list",
"typeAnnotation": {
"concept": "TypeAnnotation",
"typeKind": "generic",
"typeNamespace": "nasl.collection",
"typeName": "List",
"typeArguments": [
{
"concept": "TypeAnnotation",
"typeKind": "primitive",
"typeNamespace": "nasl.core",
"typeName": "Long"
}
]
}
}
],
"returns": [
{
"concept": "Return",
"name": "result"
}
],
"variables": [
{
"concept": "Variable",
"name": "userDeptMapList",
"typeAnnotation": {
"concept": "TypeAnnotation",
"typeKind": "generic",
"typeNamespace": "nasl.collection",
"typeName": "List",
"typeArguments": [
{
"concept": "TypeAnnotation",
"typeKind": "reference",
"typeNamespace": "app.dataSources.defaultDS.entities",
"typeName": "LCAPUserDeptMapping"
}
]
}
}
],
"body": [
{
"concept": "Start",
"label": "开始",
"folded": false
},
{
"concept": "Assignment",
"folded": false,
"left": {
"concept": "Identifier",
"name": "result",
"folded": false
},
"right": {
"concept": "NullLiteral",
"folded": false
}
},
{
"concept": "IfStatement",
"label": "条件分支",
"folded": false,
"test": {
"concept": "BinaryExpression",
"operator": "==",
"folded": false,
"offsetX": 273,
"offsetY": 418,
"left": {
"concept": "MemberExpression",
"folded": false,
"object": {
"concept": "Identifier",
"name": "list",
"folded": false
},
"property": {
"concept": "Identifier",
"name": "length",
"folded": false
}
},
"right": {
"concept": "NumericLiteral",
"value": "0",
"folded": false,
"typeAnnotation": {
"concept": "TypeAnnotation",
"typeKind": "primitive",
"typeNamespace": "nasl.core",
"typeName": "Long"
}
}
},
"consequent": [
{
"concept": "Assignment",
"folded": false,
"_aiUID": "0d49347b-8718-4a06-b8a9-29615d2e285a_52c7_0",
"left": {
"concept": "Identifier",
"name": "result",
"folded": false,
"_aiUID": "0d49347b-8718-4a06-b8a9-29615d2e285a_52c7_1"
},
"right": {
"concept": "NullLiteral",
"folded": false
}
}
],
"alternate": [
{
"concept": "Assignment",
"folded": false,
"left": {
"concept": "Identifier",
"name": "result",
"folded": false
},
"right": {
"concept": "BinaryExpression",
"operator": "/",
"folded": false,
"offsetX": 507,
"offsetY": 412,
"left": {
"concept": "CallFunction",
"calleeNamespace": "nasl.util",
"calleeName": "ListSum",
"folded": false,
"typeArguments": [],
"arguments": [
{
"concept": "Argument",
"keyword": "list",
"folded": false,
"expression": {
"concept": "Identifier",
"name": "list",
"folded": false
}
}
]
},
"right": {
"concept": "MemberExpression",
"folded": false,
"object": {
"concept": "Identifier",
"name": "list",
"folded": false
},
"property": {
"concept": "Identifier",
"name": "length",
"folded": false
}
}
}
}
]
},
{
"concept": "End",
"label": "结束",
"folded": false
}
],
"playground": []
}