add code generator
add code gen
add indent for code gen
add * to grammar of code generator
fix code gen
fix code gen grammar with asterisk