Skip to content

Conversation

@lucasly-ba
Copy link
Contributor

@lucasly-ba lucasly-ba commented Nov 20, 2025

This patch refactors all uses of vector patterns since a vector of patterns would be considered as an alt pattern, a vector is considered useless.

This patch refactors all uses of vector patterns since a vector of
patterns would be considered as an alt pattern, a vector is considered
useless.

gcc/rust/ChangeLog:

	* ast/rust-ast-builder.cc (Builder::match_arm): Moves the vector of patterns
	to a single pattern.
	* ast/rust-ast-collector.cc (TokenCollector::visit):Likewise.
	* ast/rust-ast-pointer-visitor.cc (PointerVisitor::visit):Likewise.
	* ast/rust-ast-visitor.cc (DefaultASTVisitor::visit):Likewise.
	* ast/rust-ast.cc (IfLetExpr::as_string):Likewise.
	(WhileLetLoopExpr::as_string):Likewise.
	(MatchArm::as_string):Likewise.
	* ast/rust-desugar-question-mark.cc (make_match_arm):Likewise.
	* ast/rust-desugar-while-let.cc (DesugarWhileLet::desugar):Likewise.
	* ast/rust-expr.h (class WhileLetLoopExpr):Likewise.
	(class IfLetExpr):Likewise.
	* backend/rust-compile-expr.cc (CompileExpr::visit):Likewise.
	* checks/errors/rust-hir-pattern-analysis.cc (lower_arm):Likewise.
	* expand/rust-cfg-strip.cc (CfgStrip::visit):Likewise.
	* hir/rust-ast-lower.cc (ASTLoweringIfLetBlock::desugar_iflet):Likewise.
	(ASTLoweringExprWithBlock::visit):Likewise.
	* hir/rust-hir-dump.cc (Dump::do_matcharm):Likewise.
	(Dump::visit):Likewise.
	* hir/tree/rust-hir-expr.cc (OperatorExpr::operator=):Likewise.
	(ArithmeticOrLogicalExpr::operator=):Likewise.
	(ComparisonExpr::operator=):Likewise.
	(LazyBooleanExpr::operator=):Likewise.
	(TypeCastExpr::operator=):Likewise.
	(AssignmentExpr::operator=):Likewise.
	(CompoundAssignmentExpr::operator=):Likewise.
	(GroupedExpr::operator=):Likewise.
	(ArrayExpr::operator=):Likewise.
	(ArrayIndexExpr::operator=):Likewise.
	(CallExpr::operator=):Likewise.
	(MethodCallExpr::operator=):Likewise.
	(FieldAccessExpr::operator=):Likewise.
	(BlockExpr::operator=):Likewise.
	(BreakExpr::operator=):Likewise.
	(ReturnExpr::operator=):Likewise.
	(UnsafeBlockExpr::operator=):Likewise.
	(BaseLoopExpr::operator=):Likewise.
	(WhileLetLoopExpr::WhileLetLoopExpr):Likewise.
	(WhileLetLoopExpr::operator=):Likewise.
	(MatchArm::MatchArm):Likewise.
	(MatchArm::operator=):Likewise.
	(MatchExpr::operator=):Likewise.
	* hir/tree/rust-hir-expr.h (class WhileLetLoopExpr):Likewise.
	* hir/tree/rust-hir-visitor.cc (DefaultHIRVisitor::walk):Likewise.
	(DefaultHIRVisitor::visit_match_arm):Likewise.
	* hir/tree/rust-hir.cc (WhileLetLoopExpr::as_string):Likewise.
	(MatchArm::as_string):Likewise.
	* parse/rust-parse-impl.h (Parser::parse_if_let_expr):Likewise.
	(Parser::parse_match_arm):Likewise.
	(Parser::parse_match_arm_patterns):Likewise.
	(Parser::parse_match_arm_pattern):Likewise.
	* parse/rust-parse.h:Likewise.
	* resolve/rust-default-resolver.cc (DefaultResolver::visit_if_let_patterns):Likewise.
	* resolve/rust-late-name-resolver-2.0.cc (Late::visit):Likewise.
	* typecheck/rust-hir-type-check-expr.cc (TypeCheckExpr::visit):Likewise.

Signed-off-by: Lucas Ly Ba <lucas.ly-ba@outlook.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant