boolean (PsiBuilder b, int l) { if (!recursion_guard_(b, l, "class_type_definition")) return false; if (!nextTokenIsFast(b, KW_CLASS)) return false; boolean r, p; Marker m = enter_section_(b, l, _LEFT_, CLASS_TYPE_DEFINITION, null); r = consumeTokenFast(b, KW_CLASS); r = r && class_definition_header(b, l + 1); p = r; // pin = class_definition_header r = r && report_error_(b, mb_nl(b, l + 1)); r = p && report_error_(b, class_body(b, l + 1)) && r; r = p && popClassIdentifier(b, l + 1) && r; exit_section_(b, l, m, r, p, null); return r || p; }