@@ -325,11 +325,10 @@ rule("cosCommand").split(
325325 id ( [
326326 { CI , value : "set" , class : "keyword" } ,
327327 { CI , value : "s" , class : "keyword" }
328- ] ) . call ( "postCondition" ) . whitespace ( ) . branch ( ) . call ( "variable" ) . optWhitespace ( ) . char ( "=" ) . optWhitespace ( )
329- . call ( "expression" ) . optWhitespace ( ) . split (
330- char ( "," ) . optWhitespace ( ) . merge ( ) ,
331- any ( ) . exit ( )
332- ) ,
328+ ] ) . call ( "postCondition" ) . whitespace ( ) . branch ( ) . call ( "setExpression" ) . optWhitespace ( ) . split (
329+ char ( "," ) . optWhitespace ( ) . merge ( ) ,
330+ any ( ) . exit ( )
331+ ) ,
333332 id ( { CI , value : "try" , class : "keyword" } ) . optWhitespace ( ) . char ( "{" ) . branch ( ) . optWhitespace ( )
334333 . split (
335334 char ( "}" ) . optWhitespace ( ) . id ( { CI , value : "catch" , class : "keyword" } )
@@ -472,6 +471,14 @@ rule("cosCommand").split(
472471 )
473472) . end ( ) ;
474473
474+ rule ( "setExpression" ) . split (
475+ char ( "(" ) . branch ( ) . optWhitespace ( ) . call ( "variable" ) . optWhitespace ( ) . split (
476+ char ( "," ) . merge ( ) ,
477+ any ( )
478+ ) . char ( ")" ) ,
479+ call ( "variable" )
480+ ) . optWhitespace ( ) . char ( "=" ) . optWhitespace ( ) . call ( "expression" ) . exit ( ) . end ( ) ;
481+
475482rule ( "deviceParameters" ) . branch ( ) . split (
476483 char ( { value : "/" , class : "special" } ) . id ( { class : "special" } ) . split (
477484 char ( "=" ) . call ( "expression" ) ,
@@ -560,6 +567,9 @@ rule("expression").split(
560567
561568rule ( "variable" ) . split (
562569 split (
570+ char ( "@" ) ,
571+ any ( )
572+ ) . split (
563573 id ( { class : "variable" , type : "variable" } ) ,
564574 char ( { value : "%" , class : "variable" , type : "variable" } )
565575 . id ( { class : "variable" , type : "variable" } )
0 commit comments