Lines Matching defs:statement
72 /// is allows a terminal operation rewrite statement but no other rewrite
86 /// `replace` statement.
1089 // Parse the single statement of the lambda body.
1254 [&](ast::Stmt *&statement) -> LogicalResult {
1255 if (isa<ast::OpRewriteStmt>(statement))
1258 ast::Expr *statementExpr = dyn_cast<ast::Expr>(statement);
1261 statement->getLoc(),
1263 "or an operation rewrite statement; such as `erase`, "
1266 statement =
1267 ast::ReturnStmt::create(ctx, statement->getLoc(), statementExpr);
1454 return parseLambdaBody([&](ast::Stmt *&statement) -> LogicalResult {
1455 if (isa<ast::OpRewriteStmt>(statement))
1458 statement->getLoc(),
1460 "rewrite statement, such as `erase`, `replace`, or `rewrite`");
1506 // Break when we've found the rewrite statement.
1513 "rewrite statement, such as `erase`");
1518 "rewrite statement, but found trailing statements");
2277 failed(parseToken(Token::semicolon, "expected `;` after statement"))))
2290 FailureOr<ast::Stmt *> statement = parseStmt();
2291 if (failed(statement))
2293 statements.push_back(*statement);
2393 // The replacement portion of this statement is within a rewrite context.
2460 // The rewrite body of this statement is within a rewrite context.