See More

#!/usr/bin/env python2.6 import re f = open('classes') contents = f.read() f.close() r = re.findall(r'class KDEVPYTHONPARSER_EXPORT (?P\w+)Ast', contents) r.sort() for item in r: funcname = 'visit' + item astname = item + 'Ast' #print 'virtual void ' + funcname + '(' + astname + '* node);' #print 'virtual void ' + funcname + '(' + astname + '* node) { Q_UNUSED(node); };' #print 'case Ast::' + astname + 'Type:\t\t\t' + 'AstVisitor::' + funcname + '(dynamic_cast<' + astname + '>(node)); break;' print 'else if ( name == "' + astname.lower() +'" ) ast = new ' + astname + '();'