<html>#2192: schedule.ccl SYNC allows for [timelevels] suffixes
<table style='border-spacing: 1ex 0pt; '>
<tr><td style='text-align:right'> Reporter:</td><td>Zach Etienne</td></tr>
<tr><td style='text-align:right'>   Status:</td><td>open</td></tr>
<tr><td style='text-align:right'>Milestone:</td><td></td></tr>
<tr><td style='text-align:right'>  Version:</td><td>development version</td></tr>
<tr><td style='text-align:right'>     Type:</td><td>bug</td></tr>
<tr><td style='text-align:right'> Priority:</td><td>minor</td></tr>
<tr><td style='text-align:right'>Component:</td><td>Other</td></tr>
</table>

<p>Comment (by Steven R. Brandt):</p>
<p>Suggested patch…</p>
<div class="codehilite"><pre><span></span><span class="gh">diff --git a/src/piraha/pegs/schedule.peg b/src/piraha/pegs/schedule.peg</span>
<span class="gh">index 977e3a68..c04d8c6a 100644</span>
<span class="gd">--- a/src/piraha/pegs/schedule.peg</span>
<span class="gi">+++ b/src/piraha/pegs/schedule.peg</span>
<span class="gu">@@ -2,10 +2,11 @@</span>
 skipper = \b([\ \t\n\r\b]|{-ccomment}|\#[^\n]*|\\[\r\n])*

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


<p>‌</p>
<p>--<br/>
Ticket URL: <a href='https://bitbucket.org/einsteintoolkit/tickets/issues/2192/scheduleccl-sync-allows-for-timelevels'>https://bitbucket.org/einsteintoolkit/tickets/issues/2192/scheduleccl-sync-allows-for-timelevels</a></p>
</html>