generic pattern types in layout syntax