boolean (PsiBuilder b, int l) { if (!recursion_guard_(b, l, "flat_pattern")) return false; if (!nextTokenIs(b, "<flat pattern>", PATTERN_IDENTIFIER, PATTERN_WHITE_SPACE)) return false; boolean r; Marker m = enter_section_(b, l, _NONE_, FLAT_PATTERN, "<flat pattern>"); r = flat_pattern_0(b, l + 1); while (r) { int c = current_position_(b); if (!flat_pattern_0(b, l + 1)) break; if (!empty_element_parsed_guard_(b, "flat_pattern", c)) break; } exit_section_(b, l, m, r, false, null); return r; }