Skip to content

Commit 74a57e5

Browse files
committed
unified: Update AST mapping
1 parent 559032e commit 74a57e5

4 files changed

Lines changed: 7 additions & 8 deletions

File tree

‎unified/extractor/src/languages/swift/swift.rs‎

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -210,9 +210,8 @@ fn translation_rules() -> Vec<Rule<SwiftContext>> {
210210
// referenced identifier / operator symbol.
211211
rule!((declReferenceExpr baseName: @name) => (identifier #{name})),
212212
// A discard `_` used as an expression — e.g. the target of a discarding
213-
// assignment `_ = x`. swift-syntax models it as a `discardAssignmentExpr`;
214-
// the target AST represents it as a `name_node` over the `_` token.
215-
rule!((discardAssignmentExpr wildcard: @@w) => (identifier #{w})),
213+
// assignment `_ = x`. swift-syntax models it as a `discardAssignmentExpr`.
214+
rule!((discardAssignmentExpr wildcard: @@w) => (ignore_pattern #{w})),
216215
// A generic specialization in expression position (`C<Foo>`,
217216
// `Array<Int>`) is represented by swift-syntax as a
218217
// `genericSpecializationExpr`. When used as a call target
@@ -547,7 +546,7 @@ fn translation_rules() -> Vec<Rule<SwiftContext>> {
547546
// A wildcard *binding* pattern (`let _ = x`, `for _ in xs`). swift-syntax
548547
// models this as a `wildcardPattern`, distinct from the `_` match form
549548
// handled by the context-aware `discardAssignmentExpr` rule.
550-
rule!((wildcardPattern) @@wildcard => (identifier #{wildcard})),
549+
rule!((wildcardPattern) @@wildcard => (ignore_pattern #{wildcard})),
551550
// An expression pattern only establishes pattern context; its child
552551
// determines the concrete pattern shape.
553552
rule!((expressionPattern expression: @@e) => expr {

‎unified/extractor/tests/corpus/swift/expressions/super-expression.output‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -171,7 +171,7 @@ top_level source="⟨body⟩"
171171
block source="override func update() {\n ⟨stmt⟩\n ⟨stmt⟩\n }"
172172
stmt:
173173
binary_expr source="⟨left⟩ ⟨operator⟩ ⟨right⟩"
174-
left: identifier "_" source="_"
174+
left: ignore_pattern "_" source="_"
175175
operator: infix_operator "=" source="="
176176
right:
177177
member_access_expr source="⟨base⟩.⟨member_name_node⟩"

‎unified/extractor/tests/corpus/swift/operators/unresolved-operator-sequence-with-casts.output‎

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -109,7 +109,7 @@ top_level source="⟨body⟩"
109109
stmt:
110110
unresolved_operator_sequence source="⟨element⟩ ⟨element⟩ ⟨element⟩ ⟨element⟩ ⟨element⟩ ⟨element⟩ ⟨element⟩"
111111
element:
112-
identifier "_" source="_"
112+
ignore_pattern "_" source="_"
113113
infix_operator "=" source="="
114114
identifier "a" source="a"
115115
infix_operator "as" source="as"
@@ -118,7 +118,7 @@ top_level source="⟨body⟩"
118118
identifier "b" source="b"
119119
unresolved_operator_sequence source="⟨element⟩ ⟨element⟩ ⟨element⟩ ⟨element⟩ ⟨element⟩ ⟨element⟩ ⟨element⟩"
120120
element:
121-
identifier "_" source="_"
121+
ignore_pattern "_" source="_"
122122
infix_operator "=" source="="
123123
identifier "a" source="a"
124124
infix_operator "is" source="is"

‎unified/extractor/tests/corpus/swift/operators/unresolved-operator-sequence.output‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -82,7 +82,7 @@ top_level source="⟨body⟩"
8282
stmt:
8383
unresolved_operator_sequence source="⟨element⟩ ⟨element⟩ ⟨element⟩ ⟨element⟩ ⟨element⟩"
8484
element:
85-
identifier "_" source="_"
85+
ignore_pattern "_" source="_"
8686
infix_operator "=" source="="
8787
identifier "a" source="a"
8888
infix_operator ".&" source=".&"

0 commit comments

Comments
 (0)