Guest User

Untitled

a guest
Sep 25th, 2014
235
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 0.72 KB | None | 0 0
  1. #!/usr/bin/env python
  2.  
  3. import CppHeaderParser
  4. import sys
  5.  
  6. def generate_enum(fname):
  7.     hdr = CppHeaderParser.CppHeader(fname)
  8.     with open(fname[:-2] + '_enum.h', 'w') as f:
  9.         f.write('#include "' + fname + '"\n')
  10.         for enum in hdr.enums:
  11.             f.write('const char* ToString(' + enum['name'] + ' val) {\n')
  12.             f.write('   switch(val) {\n')
  13.             for value in enum['values']:
  14.                 f.write('       case ' + value['name'] + ': return "' + value['name'] + '";\n')
  15.             f.write('   }\n')
  16.             f.write('}\n')
  17.  
  18. if __name__ == '__main__':
  19.     if len(sys.argv) != 2:
  20.         print "Usage:", sys.argv[0], "header.h"
  21.         exit(-1)
  22.     generate_enum(sys.argv[1])
Advertisement
Add Comment
Please, Sign In to add comment