MCPcopy Create free account
hub / github.com/agenticsorg/lean-agentic / parse_forall_expr

Method parse_forall_expr

leanr-syntax/src/parser.rs:341–353  ·  view source on GitHub ↗

Parse forall: forall x : T, U

(&mut self)

Source from the content-addressed store, hash-verified

339
340 /// Parse forall: forall x : T, U
341 fn parse_forall_expr(&mut self) -> crate::Result<Expr> {
342 if self.check(&TokenKind::Forall) {
343 let start = self.advance().span;
344 let params = self.parse_params()?;
345 self.expect(TokenKind::Comma)?;
346 let body = Box::new(self.parse_expr()?);
347 let span = start.to(body.span());
348
349 Ok(Expr::Forall { span, params, body })
350 } else {
351 self.parse_lambda_expr()
352 }
353 }
354
355 /// Parse lambda: fun x => body
356 fn parse_lambda_expr(&mut self) -> crate::Result<Expr> {

Callers 1

parse_arrow_exprMethod · 0.80

Calls 8

parse_paramsMethod · 0.80
expectMethod · 0.80
parse_exprMethod · 0.80
toMethod · 0.80
spanMethod · 0.80
parse_lambda_exprMethod · 0.80
checkMethod · 0.45
advanceMethod · 0.45

Tested by

no test coverage detected