This seems like a surprisingly small amount of matching, would this allow something like `&'static [~"foo", ~"bar"]` or possibly `(~"foo", ~"bar")`?

I would initially expect an exhaustive match performed through a `Visitor`, but I also may be missing something here.