#2192: schedule.ccl SYNC allows for [timelevels] suffixes
Reporter:Zach Etienne
Status:open
Milestone:
Version:development version
Type:bug
Priority:minor
Component:Other

Comment (by Steven R. Brandt):

Suggested patch…

diff --git a/src/piraha/pegs/schedule.peg b/src/piraha/pegs/schedule.peg
index 977e3a68..c04d8c6a 100644
--- a/src/piraha/pegs/schedule.peg
+++ b/src/piraha/pegs/schedule.peg
@@ -2,10 +2,11 @@
 skipper = \b([\ \t\n\r\b]|{-ccomment}|\#[^\n]*|\\[\r\n])*

 any = [^]
-name = (?i:[a-zA-Z_][a-zA-Z0-9_\-]*\b)
+name = (?i:[a-zA-Z_][a-zA-Z0-9_-]*\b)
 expr = {name}|{quote}|{num}
 # TODO: Should this be a * or a ?
 vname = {name}( :: {name})*( \[ {expr} \]|)
+uname = {name}( :: {name})?
 quote = "(\\{any}|[^"])*"
 ccomment = /\*((?!\*/){-any})*\*/
 num = [+\-]?[0-9]+(\.[0-9]+)?
@@ -36,9 +37,10 @@ group = (?i:group)
 nogroup =
 prepositions = ({preposition} )*
 preposition = {par} {pararg}
-sync = (?i:sync) : {vname}( , {vname}|{-spacing}{vname})*
+sync = (?i:sync) : {uname}( , {uname}|{-spacing}{uname})*
 spacing = ([ \t]|\\\r?\n)+
-options = (?i:options?) : {vname}( , {vname}|{-spacing}{vname})*
+optname = [a-zA-Z0-9-]+
+options = (?i:options?) : {optname}( , {optname}|{-spacing}{optname})*
 triggers = (?i:triggers?) : {vname}( , {vname}|{-spacing}{vname})*
 reads = (?i:reads) : {qrname}( , {qrname}|{-spacing}{qrname})*
 writes = (?i:writes) : {qrname}( , {qrname}|{-spacing}{qrname})*

‌

--
Ticket URL: https://bitbucket.org/einsteintoolkit/tickets/issues/2192/scheduleccl-sync-allows-for-timelevels