All of the definitons of patterns are described here. It’s really useful to split between patterns and expressions in order to restrict even more because not all of the expressions can be turned into patterns.
pattern