Add message and its test case
This commit is contained in:
parent
c16b1dfe4b
commit
5047c61bba
|
@ -6,8 +6,8 @@ message([[]])
|
||||||
|
|
||||||
---
|
---
|
||||||
(source_file
|
(source_file
|
||||||
(normal_command
|
(message_command
|
||||||
(identifier)
|
(message)
|
||||||
(argument (bracket_argument))
|
(argument (bracket_argument))
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
|
@ -20,8 +20,8 @@ message([[an argument]])
|
||||||
|
|
||||||
---
|
---
|
||||||
(source_file
|
(source_file
|
||||||
(normal_command
|
(message_command
|
||||||
(identifier)
|
(message)
|
||||||
(argument (bracket_argument (bracket_content)))
|
(argument (bracket_argument (bracket_content)))
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
|
@ -34,8 +34,8 @@ message([[first argument]] [[second argument]])
|
||||||
|
|
||||||
---
|
---
|
||||||
(source_file
|
(source_file
|
||||||
(normal_command
|
(message_command
|
||||||
(identifier)
|
(message)
|
||||||
(argument (bracket_argument (bracket_content)))
|
(argument (bracket_argument (bracket_content)))
|
||||||
(argument (bracket_argument (bracket_content)))
|
(argument (bracket_argument (bracket_content)))
|
||||||
)
|
)
|
||||||
|
@ -52,8 +52,8 @@ message(
|
||||||
|
|
||||||
---
|
---
|
||||||
(source_file
|
(source_file
|
||||||
(normal_command
|
(message_command
|
||||||
(identifier)
|
(message)
|
||||||
(argument (bracket_argument (bracket_content)))
|
(argument (bracket_argument (bracket_content)))
|
||||||
(argument (bracket_argument (bracket_content)))
|
(argument (bracket_argument (bracket_content)))
|
||||||
)
|
)
|
||||||
|
@ -69,8 +69,8 @@ with line break
|
||||||
|
|
||||||
---
|
---
|
||||||
(source_file
|
(source_file
|
||||||
(normal_command
|
(message_command
|
||||||
(identifier)
|
(message)
|
||||||
(argument (bracket_argument (bracket_content)))
|
(argument (bracket_argument (bracket_content)))
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
|
|
|
@ -79,7 +79,7 @@ endif()
|
||||||
(if)
|
(if)
|
||||||
(argument (unquoted_argument))
|
(argument (unquoted_argument))
|
||||||
)
|
)
|
||||||
(normal_command (identifier) (argument (unquoted_argument)))
|
(message_command (message))
|
||||||
(endif_command (endif))
|
(endif_command (endif))
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
|
|
43
corpus/message.txt
Normal file
43
corpus/message.txt
Normal file
|
@ -0,0 +1,43 @@
|
||||||
|
=====================
|
||||||
|
No argument [message]
|
||||||
|
=====================
|
||||||
|
|
||||||
|
message()
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
(source_file
|
||||||
|
(message_command
|
||||||
|
(message)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
|
||||||
|
=================================
|
||||||
|
No argument with spaces [message]
|
||||||
|
=================================
|
||||||
|
|
||||||
|
message( )
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
(source_file
|
||||||
|
(message_command
|
||||||
|
(message)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
|
||||||
|
===============================================
|
||||||
|
Message without argument with newline [message]
|
||||||
|
===============================================
|
||||||
|
|
||||||
|
message(
|
||||||
|
|
||||||
|
)
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
(source_file
|
||||||
|
(message_command
|
||||||
|
(message)
|
||||||
|
)
|
||||||
|
)
|
|
@ -1,44 +0,0 @@
|
||||||
=================================================
|
|
||||||
Command invocation without argument [no_argument]
|
|
||||||
=================================================
|
|
||||||
|
|
||||||
message()
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
(source_file
|
|
||||||
(normal_command
|
|
||||||
(identifier)
|
|
||||||
)
|
|
||||||
)
|
|
||||||
|
|
||||||
=============================================================
|
|
||||||
Command invocation without argument with spaces [no_argument]
|
|
||||||
=============================================================
|
|
||||||
|
|
||||||
message( )
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
(source_file
|
|
||||||
(normal_command
|
|
||||||
(identifier)
|
|
||||||
)
|
|
||||||
)
|
|
||||||
|
|
||||||
==============================================================
|
|
||||||
Command invocation without argument with newline [no_argument]
|
|
||||||
==============================================================
|
|
||||||
|
|
||||||
message(
|
|
||||||
|
|
||||||
)
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
(source_file
|
|
||||||
(normal_command
|
|
||||||
(identifier)
|
|
||||||
)
|
|
||||||
)
|
|
||||||
|
|
|
@ -6,8 +6,8 @@ message("")
|
||||||
|
|
||||||
---
|
---
|
||||||
(source_file
|
(source_file
|
||||||
(normal_command
|
(message_command
|
||||||
(identifier)
|
(message)
|
||||||
(argument (quoted_argument))
|
(argument (quoted_argument))
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
|
@ -20,8 +20,8 @@ message("An argument")
|
||||||
|
|
||||||
---
|
---
|
||||||
(source_file
|
(source_file
|
||||||
(normal_command
|
(message_command
|
||||||
(identifier)
|
(message)
|
||||||
(argument (quoted_argument (quoted_element)))
|
(argument (quoted_argument (quoted_element)))
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
|
@ -34,8 +34,8 @@ message("First argument" "Second argument")
|
||||||
|
|
||||||
---
|
---
|
||||||
(source_file
|
(source_file
|
||||||
(normal_command
|
(message_command
|
||||||
(identifier)
|
(message)
|
||||||
(argument (quoted_argument (quoted_element)))
|
(argument (quoted_argument (quoted_element)))
|
||||||
(argument (quoted_argument (quoted_element)))
|
(argument (quoted_argument (quoted_element)))
|
||||||
)
|
)
|
||||||
|
@ -50,8 +50,8 @@ with line break")
|
||||||
|
|
||||||
---
|
---
|
||||||
(source_file
|
(source_file
|
||||||
(normal_command
|
(message_command
|
||||||
(identifier)
|
(message)
|
||||||
(argument (quoted_argument (quoted_element)))
|
(argument (quoted_argument (quoted_element)))
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
|
@ -64,8 +64,8 @@ message("${var}")
|
||||||
|
|
||||||
---
|
---
|
||||||
(source_file
|
(source_file
|
||||||
(normal_command
|
(message_command
|
||||||
(identifier)
|
(message)
|
||||||
(argument
|
(argument
|
||||||
(quoted_argument
|
(quoted_argument
|
||||||
(quoted_element
|
(quoted_element
|
||||||
|
@ -84,8 +84,8 @@ message("${var} ${var}")
|
||||||
|
|
||||||
---
|
---
|
||||||
(source_file
|
(source_file
|
||||||
(normal_command
|
(message_command
|
||||||
(identifier)
|
(message)
|
||||||
(argument
|
(argument
|
||||||
(quoted_argument
|
(quoted_argument
|
||||||
(quoted_element
|
(quoted_element
|
||||||
|
|
|
@ -7,9 +7,8 @@ message(STATUS)
|
||||||
---
|
---
|
||||||
|
|
||||||
(source_file
|
(source_file
|
||||||
(normal_command
|
(message_command
|
||||||
(identifier)
|
(message)
|
||||||
(argument (unquoted_argument))
|
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
|
|
||||||
|
@ -22,9 +21,8 @@ message(STATUS Hello)
|
||||||
---
|
---
|
||||||
|
|
||||||
(source_file
|
(source_file
|
||||||
(normal_command
|
(message_command
|
||||||
(identifier)
|
(message)
|
||||||
(argument (unquoted_argument))
|
|
||||||
(argument (unquoted_argument))
|
(argument (unquoted_argument))
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
|
@ -39,14 +37,8 @@ STATUS)
|
||||||
---
|
---
|
||||||
|
|
||||||
(source_file
|
(source_file
|
||||||
(normal_command
|
(message_command (message))
|
||||||
(identifier)
|
(message_command (message))
|
||||||
(argument (unquoted_argument))
|
|
||||||
)
|
|
||||||
(normal_command
|
|
||||||
(identifier)
|
|
||||||
(argument (unquoted_argument))
|
|
||||||
)
|
|
||||||
)
|
)
|
||||||
============================================================
|
============================================================
|
||||||
Command invocations with escape sequence [unquoted_argument]
|
Command invocations with escape sequence [unquoted_argument]
|
||||||
|
@ -58,14 +50,8 @@ STATUS)
|
||||||
---
|
---
|
||||||
|
|
||||||
(source_file
|
(source_file
|
||||||
(normal_command
|
(message_command (message))
|
||||||
(identifier)
|
(message_command (message))
|
||||||
(argument (unquoted_argument))
|
|
||||||
)
|
|
||||||
(normal_command
|
|
||||||
(identifier)
|
|
||||||
(argument (unquoted_argument))
|
|
||||||
)
|
|
||||||
)
|
)
|
||||||
|
|
||||||
========================================
|
========================================
|
||||||
|
@ -75,8 +61,8 @@ message(${var_ref})
|
||||||
---
|
---
|
||||||
|
|
||||||
(source_file
|
(source_file
|
||||||
(normal_command
|
(message_command
|
||||||
(identifier)
|
(message)
|
||||||
(argument
|
(argument
|
||||||
(unquoted_argument
|
(unquoted_argument
|
||||||
(variable_ref (normal_var (variable)))
|
(variable_ref (normal_var (variable)))
|
||||||
|
|
54
grammar.js
54
grammar.js
|
@ -1,3 +1,18 @@
|
||||||
|
commands = [
|
||||||
|
"if",
|
||||||
|
"elseif",
|
||||||
|
"else",
|
||||||
|
"endif",
|
||||||
|
"foreach",
|
||||||
|
"endforeach",
|
||||||
|
"while",
|
||||||
|
"endwhile",
|
||||||
|
"function",
|
||||||
|
"endfunction",
|
||||||
|
"macro",
|
||||||
|
"endmacro",
|
||||||
|
"message",
|
||||||
|
];
|
||||||
if_args = [
|
if_args = [
|
||||||
"1",
|
"1",
|
||||||
"ON",
|
"ON",
|
||||||
|
@ -45,6 +60,22 @@ if_args = [
|
||||||
"VERSION_GREATER_EQUAL",
|
"VERSION_GREATER_EQUAL",
|
||||||
];
|
];
|
||||||
foreach_args = ["IN", "RANGE", "ZIP_LISTS", "LISTS", "ITEMS"];
|
foreach_args = ["IN", "RANGE", "ZIP_LISTS", "LISTS", "ITEMS"];
|
||||||
|
message_args = [
|
||||||
|
"FATAL_ERROR",
|
||||||
|
"SEND_ERROR",
|
||||||
|
"WARNING",
|
||||||
|
"AUTHOR_WARNING",
|
||||||
|
"DEPRECATION",
|
||||||
|
"NOTICE",
|
||||||
|
"STATUS",
|
||||||
|
"VERBOSE",
|
||||||
|
"DEBUG",
|
||||||
|
"TRACE",
|
||||||
|
"CHECK_START",
|
||||||
|
"CHECK_PASS",
|
||||||
|
"CHECK_FAIL",
|
||||||
|
];
|
||||||
|
|
||||||
module.exports = grammar({
|
module.exports = grammar({
|
||||||
name: "cmake",
|
name: "cmake",
|
||||||
|
|
||||||
|
@ -89,11 +120,30 @@ module.exports = grammar({
|
||||||
endwhile_command: ($) => command($.endwhile, optional(choice($.argument, ...if_args))),
|
endwhile_command: ($) => command($.endwhile, optional(choice($.argument, ...if_args))),
|
||||||
while_loop: ($) => seq($.while_command, repeat($._command_invocation), $.endwhile_command),
|
while_loop: ($) => seq($.while_command, repeat($._command_invocation), $.endwhile_command),
|
||||||
|
|
||||||
|
function_command: ($) => command($.function, args($.argument)),
|
||||||
|
endfunction_command: ($) => command($.endfunction, args($.argument)),
|
||||||
|
function_def: ($) => seq($.function_command, repeat($._command_invocation), $.endfunction_command),
|
||||||
|
|
||||||
|
macro_command: ($) => command($.macro, args($.argument)),
|
||||||
|
endmacro_command: ($) => command($.endmacro, args($.argument)),
|
||||||
|
macro_def: ($) => seq($.macro_command, repeat($._command_invocation), $.endmacro_command),
|
||||||
|
|
||||||
|
message_command: ($) => command($.message, optional(args(choice($.argument, ...message_args)))),
|
||||||
|
|
||||||
normal_command: ($) => command($.identifier, optional(args($.argument))),
|
normal_command: ($) => command($.identifier, optional(args($.argument))),
|
||||||
|
|
||||||
_command_invocation: ($) => choice($.normal_command, $.if_condition, $.foreach_loop, $.while_loop),
|
_command_invocation: ($) =>
|
||||||
|
choice(
|
||||||
|
$.normal_command,
|
||||||
|
$.if_condition,
|
||||||
|
$.foreach_loop,
|
||||||
|
$.while_loop,
|
||||||
|
$.function_def,
|
||||||
|
$.macro_def,
|
||||||
|
$.message_command
|
||||||
|
),
|
||||||
|
|
||||||
...commandNames("if", "elseif", "else", "endif", "foreach", "endforeach", "while", "endwhile"),
|
...commandNames(...commands),
|
||||||
identifier: (_) => /[A-Za-z_][A-Za-z0-9_]*/,
|
identifier: (_) => /[A-Za-z_][A-Za-z0-9_]*/,
|
||||||
integer: (_) => /[+-]*\d+/,
|
integer: (_) => /[+-]*\d+/,
|
||||||
},
|
},
|
||||||
|
|
604
src/grammar.json
604
src/grammar.json
|
@ -2573,6 +2573,578 @@
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
|
"function_command": {
|
||||||
|
"type": "SEQ",
|
||||||
|
"members": [
|
||||||
|
{
|
||||||
|
"type": "SYMBOL",
|
||||||
|
"name": "function"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "STRING",
|
||||||
|
"value": "("
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "REPEAT",
|
||||||
|
"content": {
|
||||||
|
"type": "CHOICE",
|
||||||
|
"members": [
|
||||||
|
{
|
||||||
|
"type": "PATTERN",
|
||||||
|
"value": "[ \\t]+"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "PATTERN",
|
||||||
|
"value": "\\n+"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "SEQ",
|
||||||
|
"members": [
|
||||||
|
{
|
||||||
|
"type": "SYMBOL",
|
||||||
|
"name": "argument"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "REPEAT",
|
||||||
|
"content": {
|
||||||
|
"type": "PREC_LEFT",
|
||||||
|
"value": 0,
|
||||||
|
"content": {
|
||||||
|
"type": "SEQ",
|
||||||
|
"members": [
|
||||||
|
{
|
||||||
|
"type": "REPEAT1",
|
||||||
|
"content": {
|
||||||
|
"type": "CHOICE",
|
||||||
|
"members": [
|
||||||
|
{
|
||||||
|
"type": "PATTERN",
|
||||||
|
"value": "[ \\t]+"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "PATTERN",
|
||||||
|
"value": "\\n+"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "CHOICE",
|
||||||
|
"members": [
|
||||||
|
{
|
||||||
|
"type": "SYMBOL",
|
||||||
|
"name": "argument"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "BLANK"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "STRING",
|
||||||
|
"value": ")"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"endfunction_command": {
|
||||||
|
"type": "SEQ",
|
||||||
|
"members": [
|
||||||
|
{
|
||||||
|
"type": "SYMBOL",
|
||||||
|
"name": "endfunction"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "STRING",
|
||||||
|
"value": "("
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "REPEAT",
|
||||||
|
"content": {
|
||||||
|
"type": "CHOICE",
|
||||||
|
"members": [
|
||||||
|
{
|
||||||
|
"type": "PATTERN",
|
||||||
|
"value": "[ \\t]+"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "PATTERN",
|
||||||
|
"value": "\\n+"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "SEQ",
|
||||||
|
"members": [
|
||||||
|
{
|
||||||
|
"type": "SYMBOL",
|
||||||
|
"name": "argument"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "REPEAT",
|
||||||
|
"content": {
|
||||||
|
"type": "PREC_LEFT",
|
||||||
|
"value": 0,
|
||||||
|
"content": {
|
||||||
|
"type": "SEQ",
|
||||||
|
"members": [
|
||||||
|
{
|
||||||
|
"type": "REPEAT1",
|
||||||
|
"content": {
|
||||||
|
"type": "CHOICE",
|
||||||
|
"members": [
|
||||||
|
{
|
||||||
|
"type": "PATTERN",
|
||||||
|
"value": "[ \\t]+"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "PATTERN",
|
||||||
|
"value": "\\n+"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "CHOICE",
|
||||||
|
"members": [
|
||||||
|
{
|
||||||
|
"type": "SYMBOL",
|
||||||
|
"name": "argument"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "BLANK"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "STRING",
|
||||||
|
"value": ")"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"function_def": {
|
||||||
|
"type": "SEQ",
|
||||||
|
"members": [
|
||||||
|
{
|
||||||
|
"type": "SYMBOL",
|
||||||
|
"name": "function_command"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "REPEAT",
|
||||||
|
"content": {
|
||||||
|
"type": "SYMBOL",
|
||||||
|
"name": "_command_invocation"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "SYMBOL",
|
||||||
|
"name": "endfunction_command"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"macro_command": {
|
||||||
|
"type": "SEQ",
|
||||||
|
"members": [
|
||||||
|
{
|
||||||
|
"type": "SYMBOL",
|
||||||
|
"name": "macro"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "STRING",
|
||||||
|
"value": "("
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "REPEAT",
|
||||||
|
"content": {
|
||||||
|
"type": "CHOICE",
|
||||||
|
"members": [
|
||||||
|
{
|
||||||
|
"type": "PATTERN",
|
||||||
|
"value": "[ \\t]+"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "PATTERN",
|
||||||
|
"value": "\\n+"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "SEQ",
|
||||||
|
"members": [
|
||||||
|
{
|
||||||
|
"type": "SYMBOL",
|
||||||
|
"name": "argument"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "REPEAT",
|
||||||
|
"content": {
|
||||||
|
"type": "PREC_LEFT",
|
||||||
|
"value": 0,
|
||||||
|
"content": {
|
||||||
|
"type": "SEQ",
|
||||||
|
"members": [
|
||||||
|
{
|
||||||
|
"type": "REPEAT1",
|
||||||
|
"content": {
|
||||||
|
"type": "CHOICE",
|
||||||
|
"members": [
|
||||||
|
{
|
||||||
|
"type": "PATTERN",
|
||||||
|
"value": "[ \\t]+"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "PATTERN",
|
||||||
|
"value": "\\n+"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "CHOICE",
|
||||||
|
"members": [
|
||||||
|
{
|
||||||
|
"type": "SYMBOL",
|
||||||
|
"name": "argument"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "BLANK"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "STRING",
|
||||||
|
"value": ")"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"endmacro_command": {
|
||||||
|
"type": "SEQ",
|
||||||
|
"members": [
|
||||||
|
{
|
||||||
|
"type": "SYMBOL",
|
||||||
|
"name": "endmacro"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "STRING",
|
||||||
|
"value": "("
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "REPEAT",
|
||||||
|
"content": {
|
||||||
|
"type": "CHOICE",
|
||||||
|
"members": [
|
||||||
|
{
|
||||||
|
"type": "PATTERN",
|
||||||
|
"value": "[ \\t]+"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "PATTERN",
|
||||||
|
"value": "\\n+"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "SEQ",
|
||||||
|
"members": [
|
||||||
|
{
|
||||||
|
"type": "SYMBOL",
|
||||||
|
"name": "argument"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "REPEAT",
|
||||||
|
"content": {
|
||||||
|
"type": "PREC_LEFT",
|
||||||
|
"value": 0,
|
||||||
|
"content": {
|
||||||
|
"type": "SEQ",
|
||||||
|
"members": [
|
||||||
|
{
|
||||||
|
"type": "REPEAT1",
|
||||||
|
"content": {
|
||||||
|
"type": "CHOICE",
|
||||||
|
"members": [
|
||||||
|
{
|
||||||
|
"type": "PATTERN",
|
||||||
|
"value": "[ \\t]+"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "PATTERN",
|
||||||
|
"value": "\\n+"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "CHOICE",
|
||||||
|
"members": [
|
||||||
|
{
|
||||||
|
"type": "SYMBOL",
|
||||||
|
"name": "argument"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "BLANK"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "STRING",
|
||||||
|
"value": ")"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"macro_def": {
|
||||||
|
"type": "SEQ",
|
||||||
|
"members": [
|
||||||
|
{
|
||||||
|
"type": "SYMBOL",
|
||||||
|
"name": "macro_command"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "REPEAT",
|
||||||
|
"content": {
|
||||||
|
"type": "SYMBOL",
|
||||||
|
"name": "_command_invocation"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "SYMBOL",
|
||||||
|
"name": "endmacro_command"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"message_command": {
|
||||||
|
"type": "SEQ",
|
||||||
|
"members": [
|
||||||
|
{
|
||||||
|
"type": "SYMBOL",
|
||||||
|
"name": "message"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "STRING",
|
||||||
|
"value": "("
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "REPEAT",
|
||||||
|
"content": {
|
||||||
|
"type": "CHOICE",
|
||||||
|
"members": [
|
||||||
|
{
|
||||||
|
"type": "PATTERN",
|
||||||
|
"value": "[ \\t]+"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "PATTERN",
|
||||||
|
"value": "\\n+"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "CHOICE",
|
||||||
|
"members": [
|
||||||
|
{
|
||||||
|
"type": "SEQ",
|
||||||
|
"members": [
|
||||||
|
{
|
||||||
|
"type": "CHOICE",
|
||||||
|
"members": [
|
||||||
|
{
|
||||||
|
"type": "SYMBOL",
|
||||||
|
"name": "argument"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "STRING",
|
||||||
|
"value": "FATAL_ERROR"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "STRING",
|
||||||
|
"value": "SEND_ERROR"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "STRING",
|
||||||
|
"value": "WARNING"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "STRING",
|
||||||
|
"value": "AUTHOR_WARNING"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "STRING",
|
||||||
|
"value": "DEPRECATION"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "STRING",
|
||||||
|
"value": "NOTICE"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "STRING",
|
||||||
|
"value": "STATUS"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "STRING",
|
||||||
|
"value": "VERBOSE"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "STRING",
|
||||||
|
"value": "DEBUG"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "STRING",
|
||||||
|
"value": "TRACE"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "STRING",
|
||||||
|
"value": "CHECK_START"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "STRING",
|
||||||
|
"value": "CHECK_PASS"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "STRING",
|
||||||
|
"value": "CHECK_FAIL"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "REPEAT",
|
||||||
|
"content": {
|
||||||
|
"type": "PREC_LEFT",
|
||||||
|
"value": 0,
|
||||||
|
"content": {
|
||||||
|
"type": "SEQ",
|
||||||
|
"members": [
|
||||||
|
{
|
||||||
|
"type": "REPEAT1",
|
||||||
|
"content": {
|
||||||
|
"type": "CHOICE",
|
||||||
|
"members": [
|
||||||
|
{
|
||||||
|
"type": "PATTERN",
|
||||||
|
"value": "[ \\t]+"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "PATTERN",
|
||||||
|
"value": "\\n+"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "CHOICE",
|
||||||
|
"members": [
|
||||||
|
{
|
||||||
|
"type": "CHOICE",
|
||||||
|
"members": [
|
||||||
|
{
|
||||||
|
"type": "SYMBOL",
|
||||||
|
"name": "argument"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "STRING",
|
||||||
|
"value": "FATAL_ERROR"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "STRING",
|
||||||
|
"value": "SEND_ERROR"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "STRING",
|
||||||
|
"value": "WARNING"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "STRING",
|
||||||
|
"value": "AUTHOR_WARNING"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "STRING",
|
||||||
|
"value": "DEPRECATION"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "STRING",
|
||||||
|
"value": "NOTICE"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "STRING",
|
||||||
|
"value": "STATUS"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "STRING",
|
||||||
|
"value": "VERBOSE"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "STRING",
|
||||||
|
"value": "DEBUG"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "STRING",
|
||||||
|
"value": "TRACE"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "STRING",
|
||||||
|
"value": "CHECK_START"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "STRING",
|
||||||
|
"value": "CHECK_PASS"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "STRING",
|
||||||
|
"value": "CHECK_FAIL"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "BLANK"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "BLANK"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "STRING",
|
||||||
|
"value": ")"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
"normal_command": {
|
"normal_command": {
|
||||||
"type": "SEQ",
|
"type": "SEQ",
|
||||||
"members": [
|
"members": [
|
||||||
|
@ -2681,6 +3253,18 @@
|
||||||
{
|
{
|
||||||
"type": "SYMBOL",
|
"type": "SYMBOL",
|
||||||
"name": "while_loop"
|
"name": "while_loop"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "SYMBOL",
|
||||||
|
"name": "function_def"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "SYMBOL",
|
||||||
|
"name": "macro_def"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "SYMBOL",
|
||||||
|
"name": "message_command"
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
|
@ -2716,6 +3300,26 @@
|
||||||
"type": "PATTERN",
|
"type": "PATTERN",
|
||||||
"value": "[eE][nN][dD][wW][hH][iI][lL][eE]"
|
"value": "[eE][nN][dD][wW][hH][iI][lL][eE]"
|
||||||
},
|
},
|
||||||
|
"function": {
|
||||||
|
"type": "PATTERN",
|
||||||
|
"value": "[fF][uU][nN][cC][tT][iI][oO][nN]"
|
||||||
|
},
|
||||||
|
"endfunction": {
|
||||||
|
"type": "PATTERN",
|
||||||
|
"value": "[eE][nN][dD][fF][uU][nN][cC][tT][iI][oO][nN]"
|
||||||
|
},
|
||||||
|
"macro": {
|
||||||
|
"type": "PATTERN",
|
||||||
|
"value": "[mM][aA][cC][rR][oO]"
|
||||||
|
},
|
||||||
|
"endmacro": {
|
||||||
|
"type": "PATTERN",
|
||||||
|
"value": "[eE][nN][dD][mM][aA][cC][rR][oO]"
|
||||||
|
},
|
||||||
|
"message": {
|
||||||
|
"type": "PATTERN",
|
||||||
|
"value": "[mM][eE][sS][sS][aA][gG][eE]"
|
||||||
|
},
|
||||||
"identifier": {
|
"identifier": {
|
||||||
"type": "PATTERN",
|
"type": "PATTERN",
|
||||||
"value": "[A-Za-z_][A-Za-z0-9_]*"
|
"value": "[A-Za-z_][A-Za-z0-9_]*"
|
||||||
|
|
|
@ -114,6 +114,25 @@
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"type": "endfunction_command",
|
||||||
|
"named": true,
|
||||||
|
"fields": {},
|
||||||
|
"children": {
|
||||||
|
"multiple": true,
|
||||||
|
"required": true,
|
||||||
|
"types": [
|
||||||
|
{
|
||||||
|
"type": "argument",
|
||||||
|
"named": true
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "endfunction",
|
||||||
|
"named": true
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"type": "endif_command",
|
"type": "endif_command",
|
||||||
"named": true,
|
"named": true,
|
||||||
|
@ -133,6 +152,25 @@
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"type": "endmacro_command",
|
||||||
|
"named": true,
|
||||||
|
"fields": {},
|
||||||
|
"children": {
|
||||||
|
"multiple": true,
|
||||||
|
"required": true,
|
||||||
|
"types": [
|
||||||
|
{
|
||||||
|
"type": "argument",
|
||||||
|
"named": true
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "endmacro",
|
||||||
|
"named": true
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"type": "endwhile_command",
|
"type": "endwhile_command",
|
||||||
"named": true,
|
"named": true,
|
||||||
|
@ -211,10 +249,88 @@
|
||||||
"type": "foreach_loop",
|
"type": "foreach_loop",
|
||||||
"named": true
|
"named": true
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"type": "function_def",
|
||||||
|
"named": true
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"type": "if_condition",
|
"type": "if_condition",
|
||||||
"named": true
|
"named": true
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"type": "macro_def",
|
||||||
|
"named": true
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "message_command",
|
||||||
|
"named": true
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "normal_command",
|
||||||
|
"named": true
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "while_loop",
|
||||||
|
"named": true
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "function_command",
|
||||||
|
"named": true,
|
||||||
|
"fields": {},
|
||||||
|
"children": {
|
||||||
|
"multiple": true,
|
||||||
|
"required": true,
|
||||||
|
"types": [
|
||||||
|
{
|
||||||
|
"type": "argument",
|
||||||
|
"named": true
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "function",
|
||||||
|
"named": true
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "function_def",
|
||||||
|
"named": true,
|
||||||
|
"fields": {},
|
||||||
|
"children": {
|
||||||
|
"multiple": true,
|
||||||
|
"required": true,
|
||||||
|
"types": [
|
||||||
|
{
|
||||||
|
"type": "endfunction_command",
|
||||||
|
"named": true
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "foreach_loop",
|
||||||
|
"named": true
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "function_command",
|
||||||
|
"named": true
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "function_def",
|
||||||
|
"named": true
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "if_condition",
|
||||||
|
"named": true
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "macro_def",
|
||||||
|
"named": true
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "message_command",
|
||||||
|
"named": true
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"type": "normal_command",
|
"type": "normal_command",
|
||||||
"named": true
|
"named": true
|
||||||
|
@ -269,6 +385,10 @@
|
||||||
"type": "foreach_loop",
|
"type": "foreach_loop",
|
||||||
"named": true
|
"named": true
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"type": "function_def",
|
||||||
|
"named": true
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"type": "if_command",
|
"type": "if_command",
|
||||||
"named": true
|
"named": true
|
||||||
|
@ -277,6 +397,14 @@
|
||||||
"type": "if_condition",
|
"type": "if_condition",
|
||||||
"named": true
|
"named": true
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"type": "macro_def",
|
||||||
|
"named": true
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "message_command",
|
||||||
|
"named": true
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"type": "normal_command",
|
"type": "normal_command",
|
||||||
"named": true
|
"named": true
|
||||||
|
@ -288,6 +416,91 @@
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"type": "macro_command",
|
||||||
|
"named": true,
|
||||||
|
"fields": {},
|
||||||
|
"children": {
|
||||||
|
"multiple": true,
|
||||||
|
"required": true,
|
||||||
|
"types": [
|
||||||
|
{
|
||||||
|
"type": "argument",
|
||||||
|
"named": true
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "macro",
|
||||||
|
"named": true
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "macro_def",
|
||||||
|
"named": true,
|
||||||
|
"fields": {},
|
||||||
|
"children": {
|
||||||
|
"multiple": true,
|
||||||
|
"required": true,
|
||||||
|
"types": [
|
||||||
|
{
|
||||||
|
"type": "endmacro_command",
|
||||||
|
"named": true
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "foreach_loop",
|
||||||
|
"named": true
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "function_def",
|
||||||
|
"named": true
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "if_condition",
|
||||||
|
"named": true
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "macro_command",
|
||||||
|
"named": true
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "macro_def",
|
||||||
|
"named": true
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "message_command",
|
||||||
|
"named": true
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "normal_command",
|
||||||
|
"named": true
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "while_loop",
|
||||||
|
"named": true
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "message_command",
|
||||||
|
"named": true,
|
||||||
|
"fields": {},
|
||||||
|
"children": {
|
||||||
|
"multiple": true,
|
||||||
|
"required": true,
|
||||||
|
"types": [
|
||||||
|
{
|
||||||
|
"type": "argument",
|
||||||
|
"named": true
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "message",
|
||||||
|
"named": true
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"type": "normal_command",
|
"type": "normal_command",
|
||||||
"named": true,
|
"named": true,
|
||||||
|
@ -368,10 +581,22 @@
|
||||||
"type": "foreach_loop",
|
"type": "foreach_loop",
|
||||||
"named": true
|
"named": true
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"type": "function_def",
|
||||||
|
"named": true
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"type": "if_condition",
|
"type": "if_condition",
|
||||||
"named": true
|
"named": true
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"type": "macro_def",
|
||||||
|
"named": true
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "message_command",
|
||||||
|
"named": true
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"type": "normal_command",
|
"type": "normal_command",
|
||||||
"named": true
|
"named": true
|
||||||
|
@ -475,10 +700,22 @@
|
||||||
"type": "foreach_loop",
|
"type": "foreach_loop",
|
||||||
"named": true
|
"named": true
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"type": "function_def",
|
||||||
|
"named": true
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"type": "if_condition",
|
"type": "if_condition",
|
||||||
"named": true
|
"named": true
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"type": "macro_def",
|
||||||
|
"named": true
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "message_command",
|
||||||
|
"named": true
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"type": "normal_command",
|
"type": "normal_command",
|
||||||
"named": true
|
"named": true
|
||||||
|
@ -534,18 +771,42 @@
|
||||||
"type": "AND",
|
"type": "AND",
|
||||||
"named": false
|
"named": false
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"type": "AUTHOR_WARNING",
|
||||||
|
"named": false
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"type": "CACHE",
|
"type": "CACHE",
|
||||||
"named": false
|
"named": false
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"type": "CHECK_FAIL",
|
||||||
|
"named": false
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "CHECK_PASS",
|
||||||
|
"named": false
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "CHECK_START",
|
||||||
|
"named": false
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"type": "COMMAND",
|
"type": "COMMAND",
|
||||||
"named": false
|
"named": false
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"type": "DEBUG",
|
||||||
|
"named": false
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"type": "DEFINED",
|
"type": "DEFINED",
|
||||||
"named": false
|
"named": false
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"type": "DEPRECATION",
|
||||||
|
"named": false
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"type": "ENV",
|
"type": "ENV",
|
||||||
"named": false
|
"named": false
|
||||||
|
@ -562,6 +823,10 @@
|
||||||
"type": "FALSE",
|
"type": "FALSE",
|
||||||
"named": false
|
"named": false
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"type": "FATAL_ERROR",
|
||||||
|
"named": false
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"type": "GREATER",
|
"type": "GREATER",
|
||||||
"named": false
|
"named": false
|
||||||
|
@ -634,6 +899,10 @@
|
||||||
"type": "NOTFOUND",
|
"type": "NOTFOUND",
|
||||||
"named": false
|
"named": false
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"type": "NOTICE",
|
||||||
|
"named": false
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"type": "OFF",
|
"type": "OFF",
|
||||||
"named": false
|
"named": false
|
||||||
|
@ -654,6 +923,14 @@
|
||||||
"type": "RANGE",
|
"type": "RANGE",
|
||||||
"named": false
|
"named": false
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"type": "SEND_ERROR",
|
||||||
|
"named": false
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "STATUS",
|
||||||
|
"named": false
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"type": "STREQUAL",
|
"type": "STREQUAL",
|
||||||
"named": false
|
"named": false
|
||||||
|
@ -682,10 +959,18 @@
|
||||||
"type": "TEST",
|
"type": "TEST",
|
||||||
"named": false
|
"named": false
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"type": "TRACE",
|
||||||
|
"named": false
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"type": "TRUE",
|
"type": "TRUE",
|
||||||
"named": false
|
"named": false
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"type": "VERBOSE",
|
||||||
|
"named": false
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"type": "VERSION_EQUAL",
|
"type": "VERSION_EQUAL",
|
||||||
"named": false
|
"named": false
|
||||||
|
@ -706,6 +991,10 @@
|
||||||
"type": "VERSION_LESS_EQUAL",
|
"type": "VERSION_LESS_EQUAL",
|
||||||
"named": false
|
"named": false
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"type": "WARNING",
|
||||||
|
"named": false
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"type": "Y",
|
"type": "Y",
|
||||||
"named": false
|
"named": false
|
||||||
|
@ -754,10 +1043,18 @@
|
||||||
"type": "endforeach",
|
"type": "endforeach",
|
||||||
"named": true
|
"named": true
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"type": "endfunction",
|
||||||
|
"named": true
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"type": "endif",
|
"type": "endif",
|
||||||
"named": true
|
"named": true
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"type": "endmacro",
|
||||||
|
"named": true
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"type": "endwhile",
|
"type": "endwhile",
|
||||||
"named": true
|
"named": true
|
||||||
|
@ -766,6 +1063,10 @@
|
||||||
"type": "foreach",
|
"type": "foreach",
|
||||||
"named": true
|
"named": true
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"type": "function",
|
||||||
|
"named": true
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"type": "identifier",
|
"type": "identifier",
|
||||||
"named": true
|
"named": true
|
||||||
|
@ -774,6 +1075,14 @@
|
||||||
"type": "if",
|
"type": "if",
|
||||||
"named": true
|
"named": true
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"type": "macro",
|
||||||
|
"named": true
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "message",
|
||||||
|
"named": true
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"type": "while",
|
"type": "while",
|
||||||
"named": true
|
"named": true
|
||||||
|
|
23232
src/parser.c
23232
src/parser.c
File diff suppressed because it is too large
Load diff
Loading…
Reference in a new issue