/
rascal-a.bgf
2 lines (2 loc) · 3.58 KB
/
rascal-a.bgf
1
2
<?xml version="1.0" encoding="UTF-8"?>
<bgf:grammar xmlns:bgf="http://planet-sl.org/bgf"><bgf:production><label>prg</label><nonterminal>FLPrg</nonterminal><bgf:expression><selectable><selector>fs</selector><bgf:expression><star><bgf:expression><nonterminal>FLFun</nonterminal></bgf:expression></star></bgf:expression></selectable></bgf:expression></bgf:production><bgf:production><label>fun</label><nonterminal>FLFun</nonterminal><bgf:expression><sequence><bgf:expression><selectable><selector>f</selector><bgf:expression><value>string</value></bgf:expression></selectable></bgf:expression><bgf:expression><selectable><selector>args</selector><bgf:expression><star><bgf:expression><nonterminal>str</nonterminal></bgf:expression></star></bgf:expression></selectable></bgf:expression><bgf:expression><selectable><selector>body</selector><bgf:expression><nonterminal>FLExpr</nonterminal></bgf:expression></selectable></bgf:expression></sequence></bgf:expression></bgf:production><bgf:production><nonterminal>FLExpr</nonterminal><bgf:expression><choice><bgf:expression><selectable><selector>binary</selector><bgf:expression><sequence><bgf:expression><selectable><selector>e1</selector><bgf:expression><nonterminal>FLExpr</nonterminal></bgf:expression></selectable></bgf:expression><bgf:expression><selectable><selector>op</selector><bgf:expression><nonterminal>FLOp</nonterminal></bgf:expression></selectable></bgf:expression><bgf:expression><selectable><selector>e2</selector><bgf:expression><nonterminal>FLExpr</nonterminal></bgf:expression></selectable></bgf:expression></sequence></bgf:expression></selectable></bgf:expression><bgf:expression><selectable><selector>apply</selector><bgf:expression><sequence><bgf:expression><selectable><selector>f</selector><bgf:expression><value>string</value></bgf:expression></selectable></bgf:expression><bgf:expression><selectable><selector>vargs</selector><bgf:expression><star><bgf:expression><nonterminal>FLExpr</nonterminal></bgf:expression></star></bgf:expression></selectable></bgf:expression></sequence></bgf:expression></selectable></bgf:expression><bgf:expression><selectable><selector>ifThenElse</selector><bgf:expression><sequence><bgf:expression><selectable><selector>c</selector><bgf:expression><nonterminal>FLExpr</nonterminal></bgf:expression></selectable></bgf:expression><bgf:expression><selectable><selector>t</selector><bgf:expression><nonterminal>FLExpr</nonterminal></bgf:expression></selectable></bgf:expression><bgf:expression><selectable><selector>e</selector><bgf:expression><nonterminal>FLExpr</nonterminal></bgf:expression></selectable></bgf:expression></sequence></bgf:expression></selectable></bgf:expression><bgf:expression><selectable><selector>argument</selector><bgf:expression><selectable><selector>a</selector><bgf:expression><value>string</value></bgf:expression></selectable></bgf:expression></selectable></bgf:expression><bgf:expression><selectable><selector>literal</selector><bgf:expression><selectable><selector>i</selector><bgf:expression><value>int</value></bgf:expression></selectable></bgf:expression></selectable></bgf:expression></choice></bgf:expression></bgf:production><bgf:production><nonterminal>FLOp</nonterminal><bgf:expression><choice><bgf:expression><selectable><selector>minus</selector><bgf:expression><epsilon /></bgf:expression></selectable></bgf:expression><bgf:expression><selectable><selector>plus</selector><bgf:expression><epsilon /></bgf:expression></selectable></bgf:expression><bgf:expression><selectable><selector>equal</selector><bgf:expression><epsilon /></bgf:expression></selectable></bgf:expression></choice></bgf:expression></bgf:production></bgf:grammar>