boolean (PsiBuilder b, int l) { if (!recursion_guard_(b, l, "not_expression")) return false; if (!nextTokenIsSmart(b, T_BNOT, T_NOT)) return false; boolean r, p; Marker m = enter_section_(b, l, _NONE_, null); r = not_expression_0(b, l + 1); p = r; r = p && expression(b, l, 14); exit_section_(b, l, m, UNARY_EXPRESSION, r, p, null); return r || p; }