Rollup merge of #138511 - mohe2015:rustc-parse-pub-parse-expr-cond, r=oli-obk

Make `Parser::parse_expr_cond` public

This allows usage in rustfmt and rustfmt forks.

I'm using this for custom macro formatting, see 30c83df9e1/src/parse/macros/html.rs (L57)

It would be great if this could be upstreamed so I don't need to rely on a fork.
This commit is contained in:
León Orell Valerian Liehr 2025-03-15 00:18:26 +01:00 committed by GitHub
commit 79775921aa
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -2588,7 +2588,8 @@ impl<'a> Parser<'a> {
}
/// Parses the condition of a `if` or `while` expression.
fn parse_expr_cond(&mut self) -> PResult<'a, P<Expr>> {
// Public because it is used in rustfmt forks such as https://github.com/tucant/rustfmt/blob/30c83df9e1db10007bdd16dafce8a86b404329b2/src/parse/macros/html.rs#L57 for custom if expressions.
pub fn parse_expr_cond(&mut self) -> PResult<'a, P<Expr>> {
let attrs = self.parse_outer_attributes()?;
let (mut cond, _) =
self.parse_expr_res(Restrictions::NO_STRUCT_LITERAL | Restrictions::ALLOW_LET, attrs)?;