优化syntax_rule结构，新建appear_type类