def __init__(self, storage_class_specifiers=[], type_qualifiers=[], type_specifiers=[], function_specifiers=[], lexer_base=CLexer, **kwargs): self.lexer_class = type("ExtensibleCLexer", (CLexer, ), dict()) self.add_rule("storage_class_specifier", storage_class_specifiers, self.p_storage_class_specifier) self.add_rule("type_qualifier", type_qualifiers, self.p_type_qualifier) self.add_rule("function_specifier", function_specifiers, self.p_function_specifier) self.add_rule("type_specifier_no_typeid", type_specifiers, self.p_type_specifier_no_typeid) kwargs['lexer'] = self.lexer_class kwargs['lex_optimize'] = False kwargs['yacc_optimize'] = False #kwargs['yacc_debug']=True CParser.__init__(self, **kwargs)
def __init__(self, **kwds): kwds['lexer'] = CPPLexer kwds['lextab'] = 'nicelib.parser.lextab' kwds['yacctab'] = 'nicelib.parser.yacctab' CParser.__init__(self, **kwds)