def ClauseC(self, rule,tokens, _parent=None):
        _context = self.Context(_parent, self._scanner, 'ClauseC', [rule,tokens])
        ClauseD = self.ClauseD(rule,tokens, _context)
        _token = self._peek('PLUS', 'STAR', 'QUEST', 'STR', 'ID', 'LP', 'LB', 'STMT', 'OR', 'RP', 'RB', '"rule"', 'EOF', context=_context)
        if _token == 'PLUS':
            PLUS = self._scan('PLUS', context=_context)
            return parsetree.Plus(rule, ClauseD)
        elif _token == 'STAR':
            STAR = self._scan('STAR', context=_context)
            return parsetree.Star(rule, ClauseD)
        elif _token == 'QUEST':
            QUEST = self._scan('QUEST', context=_context)
            return parsetree.Option(rule, ClauseD)
        else:
            return ClauseD
dataset/ETHPy150Open smurfix/yapps/yapps/grammar.py/ParserDescription.ClauseC/original