Make generate_parser return an Expr instead of an item. Needed so that it can be called recursively