I think we'll also need to re-arrange the cases for that to work, since by cutting after the `->` you force the function to have a filter (in this particular case). Re-arranging the cases will break how function types with filters will parse though, unless we complicate the syntax classes for types (by excluding `:`).