simplify struct declaration
support typedef
add parser_helper