Difference between revisions of "NXSL Formal Grammar"

Jump to navigation Jump to search
443 bytes added ,  16:13, 13 September 2022
m
Text replacement - "^" to "{{deprecated}}"
m (Text replacement - "^" to "{{deprecated}}")
 
(5 intermediate revisions by 4 users not shown)
Line 1: Line 1:
<syntaxhighlight lang="abnf">
{{deprecated}}
{| style="border-spacing: 20px; border: 20px solid red;"
|
'''WARNING''': This page is no longer updated. Please visit '''[https://www.netxms.org/documentation/nxsl-latest/#_formal_grammar NXSL Formal Grammar]''' for current version of the documentation.
|}
 
 
 
 
<pre>
script ::=
script ::=
module |
module |
Line 46: Line 55:
switch_statement |
switch_statement |
array_statement |
array_statement |
global_statement |
break ";"
break ";"
continue ";"
continue ";"
Line 83: Line 93:


array_statement ::=
array_statement ::=
array identifier_list ";"
[ global ] array identifier_list ";"
 
global_statement ::=
global global_variable_declaration { "," global_variable_declaration } ";"
 
global_variable_declaration ::=
IDENTIFIER [ "=" expression ]


expression ::=
expression ::=
Line 151: Line 167:
REAL |
REAL |
NULL
NULL
</syntaxhighlight>
</pre>


'''Terminal symbols'''
'''Terminal symbols'''


<syntaxhighlight>
<pre>
IDENTIFIER ::= [A-Za-z_\$][A-Za-z_\$0-9]*
IDENTIFIER ::= [A-Za-z_\$][A-Za-z_\$0-9]*
COMPOUND_IDENTIFIER ::= { IDENTIFIER}(::{ IDENTIFIER})+
COMPOUND_IDENTIFIER ::= { IDENTIFIER}(::{ IDENTIFIER})+
Line 164: Line 180:
UINT64 ::= {INTEGER}(UL|LU)
UINT64 ::= {INTEGER}(UL|LU)
REAL ::= \-?[0-9]+\.[0-9]+
REAL ::= \-?[0-9]+\.[0-9]+
</syntaxhighlight>
</pre>
 
 
 
[[Category:Scripting Guide]]

Navigation menu