@lcap/nasl-parser
Version:
Take Nasl text to Nasl AST with the help of generalized parsing.
340 lines (339 loc) • 12.4 kB
JSON
{
"concept": "App",
"dataSources": [],
"structures": [],
"enums": [
{
"concept": "Enum",
"name": "MyEnumInt",
"description": "这不是一个有用的枚举",
"valueType": {
"concept": "TypeAnnotation",
"typeKind": "primitive",
"typeNamespace": "nasl.core",
"typeName": "Long"
},
"enumItems": [
{
"concept": "EnumItem",
"value": "0",
"label": {
"concept": "StaticString",
"value": "nmb",
"changedTime": 1729602548705
}
},
{
"concept": "EnumItem",
"value": "1",
"label": {
"concept": "StaticString",
"value": "2333",
"changedTime": 1729602551497
}
}
]
},
{
"concept": "Enum",
"name": "MyEnumStr",
"description": "这是一个垃圾枚举",
"valueType": {
"concept": "TypeAnnotation",
"typeKind": "primitive",
"typeNamespace": "nasl.core",
"typeName": "String"
},
"enumItems": [
{
"concept": "EnumItem",
"value": "J",
"label": {
"concept": "StaticString",
"value": "值J",
"changedTime": 1729602591829
}
},
{
"concept": "EnumItem",
"value": "K",
"label": {
"concept": "StaticString",
"value": "值K",
"changedTime": 1729602594458
}
}
]
}
],
"logics": [
{
"concept": "Logic",
"name": "enumRef",
"triggerType": null,
"cron": null,
"overridable": null,
"composedBy": null,
"transactional": {
"concept": "Transactional",
"enabled": false,
"propagation": null,
"isolation": null
},
"params": [],
"returns": [],
"variables": [
{
"concept": "Variable",
"name": "variable1",
"composedBy": null,
"typeAnnotation": {
"concept": "TypeAnnotation",
"typeKind": "reference",
"typeNamespace": "app.enums",
"typeName": "MyEnumInt"
}
},
{
"concept": "Variable",
"name": "variable2"
},
{
"concept": "Variable",
"name": "variable3"
},
{
"concept": "Variable",
"name": "variable4"
},
{
"concept": "Variable",
"name": "variable5"
},
{
"concept": "Variable",
"name": "variable6"
},
{
"concept": "Variable",
"name": "variable7"
}
],
"body": [
{
"concept": "Start",
"label": "开始",
"folded": false
},
{
"concept": "Assignment",
"folded": false,
"changedTime": 1729602637359,
"left": {
"concept": "Identifier",
"name": "variable1",
"folded": false
},
"right": {
"concept": "MemberExpression",
"folded": false,
"object": {
"concept": "Identifier",
"namespace": "app.enums",
"name": "MyEnumInt",
"folded": false,
"changedTime": 1729603912708
},
"property": {
"concept": "Identifier",
"name": "0",
"folded": false
}
}
},
{
"concept": "Assignment",
"folded": false,
"changedTime": 1729602655023,
"left": {
"concept": "Identifier",
"name": "variable2",
"folded": false
},
"right": {
"concept": "MemberExpression",
"folded": false,
"object": {
"concept": "Identifier",
"namespace": "app.enums",
"name": "MyEnumInt",
"folded": false,
"changedTime": 1729603912714
},
"property": {
"concept": "Identifier",
"name": "1",
"folded": false
}
}
},
{
"concept": "Assignment",
"folded": false,
"changedTime": 1729602674235,
"left": {
"concept": "Identifier",
"name": "variable3",
"folded": false
},
"right": {
"concept": "MemberExpression",
"folded": false,
"object": {
"concept": "Identifier",
"namespace": "app.enums",
"name": "MyEnumStr",
"folded": false,
"changedTime": 1729603904076
},
"property": {
"concept": "Identifier",
"name": "J",
"folded": false
}
}
},
{
"concept": "Assignment",
"folded": false,
"changedTime": 1729602680180,
"left": {
"concept": "Identifier",
"name": "variable4",
"folded": false
},
"right": {
"concept": "MemberExpression",
"folded": false,
"object": {
"concept": "Identifier",
"namespace": "app.enums",
"name": "MyEnumStr",
"folded": false,
"changedTime": 1729603904099
},
"property": {
"concept": "Identifier",
"name": "K",
"folded": false
}
}
},
{
"concept": "Assignment",
"folded": false,
"changedTime": 1729602713231,
"left": {
"concept": "Identifier",
"name": "variable5",
"folded": false
},
"right": {
"concept": "CallFunction",
"calleeNamespace": "nasl.util",
"calleeName": "EnumItemToStructure",
"folded": false,
"typeArguments": [],
"arguments": [
{
"concept": "Argument",
"keyword": "value",
"folded": false,
"changedTime": 1729602765699,
"expression": {
"concept": "MemberExpression",
"folded": false,
"object": {
"concept": "Identifier",
"namespace": "app.enums",
"name": "MyEnumStr",
"folded": false,
"changedTime": 1729603904104
},
"property": {
"concept": "Identifier",
"name": "J",
"folded": false
}
}
}
]
}
},
{
"concept": "Assignment",
"folded": false,
"changedTime": 1729602813239,
"left": {
"concept": "Identifier",
"name": "variable6",
"folded": false
},
"right": {
"concept": "CallFunction",
"calleeNamespace": "nasl.util",
"calleeName": "EnumItemToText",
"folded": false,
"typeArguments": [],
"arguments": [
{
"concept": "Argument",
"keyword": "value",
"folded": false,
"expression": {
"concept": "MemberExpression",
"folded": false,
"object": {
"concept": "Identifier",
"namespace": "app.enums",
"name": "MyEnumInt",
"folded": false,
"changedTime": 1729603912719
},
"property": {
"concept": "Identifier",
"name": "0",
"folded": false
}
}
}
]
}
},
{
"concept": "End",
"label": "结束",
"folded": false
}
],
"playground": [],
"applyAnnotations": null
}
],
"interfaces": [],
"processes": [],
"processV2s": [],
"roles": [],
"connectorDependencies": [],
"frontendTypes": [],
"id": "",
"interfaceDependencies": [],
"dependencies": [],
"authLogics": [],
"authLogicsForCallInterface": [],
"connections": [],
"triggerLaunchers": [],
"metadataTypes": [],
"overriddenLogics": [],
"name": "UnstableFeatureTestOnly"
}