%%% $Id: Restrictions.sdf 17765 2006-02-13 12:54:52Z jurgenv $ module languages/sdf2/syntax/Restrictions imports languages/sdf2/syntax/CC exports sorts Lookahead Lookaheads Restriction Restrictions context-free syntax CharClass -> Lookahead {cons("char-class")} head:CharClass "." tail:Lookaheads -> Lookahead {cons("seq")} Lookahead -> Lookaheads {cons("single")} "left":Lookaheads "|" "right":Lookaheads -> Lookaheads {cons("alt"),right} "(" Lookaheads ")" -> Lookaheads {bracket} "[[" list:{Lookahead ","}* "]]" -> Lookaheads {cons("list")} Symbols "-/-" Lookaheads -> Restriction {cons("follow")} list:Restriction* -> Restrictions "restrictions" Restrictions -> Grammar {cons("restrictions")} "reject" -> Attribute {cons("reject")} "prefer" -> Attribute {cons("prefer")} "avoid" -> Attribute {cons("avoid")} context-free priorities CharClass "." Lookaheads -> Lookahead > Lookaheads "|" Lookaheads -> Lookaheads