@@ -616,17 +616,17 @@ enum IfOrSwitch: RawTokenKindSubset {
616
616
case switchKeyword
617
617
618
618
init ? ( lexeme: Lexer . Lexeme ) {
619
- switch lexeme {
620
- case RawTokenKindMatch ( . keyword ( . if ) ) : self = . ifKeyword
621
- case RawTokenKindMatch ( . keyword ( . switch ) ) : self = . switchKeyword
619
+ switch lexeme. tokenKind {
620
+ case . ifKeyword : self = . ifKeyword
621
+ case . switchKeyword : self = . switchKeyword
622
622
default : return nil
623
623
}
624
624
}
625
625
626
626
var rawTokenKind : RawTokenKind {
627
627
switch self {
628
- case . ifKeyword: return . keyword ( . if )
629
- case . switchKeyword: return . keyword ( . switch )
628
+ case . ifKeyword: return . ifKeyword
629
+ case . switchKeyword: return . switchKeyword
630
630
}
631
631
}
632
632
}
@@ -795,6 +795,7 @@ enum ExpressionStart: RawTokenKindSubset {
795
795
case expressionPrefixOperator( ExpressionPrefixOperator )
796
796
case matchingPatternStart( MatchingPatternStart )
797
797
case primaryExpressionStart( PrimaryExpressionStart )
798
+ case ifOrSwitch( IfOrSwitch )
798
799
799
800
init ? ( lexeme: Lexer . Lexeme ) {
800
801
if let subset = AwaitTryMove ( lexeme: lexeme) {
@@ -805,6 +806,8 @@ enum ExpressionStart: RawTokenKindSubset {
805
806
self = . matchingPatternStart( subset)
806
807
} else if let subset = PrimaryExpressionStart ( lexeme: lexeme) {
807
808
self = . primaryExpressionStart( subset)
809
+ } else if let subset = IfOrSwitch ( lexeme: lexeme) {
810
+ self = . ifOrSwitch( subset)
808
811
} else {
809
812
return nil
810
813
}
@@ -815,6 +818,7 @@ enum ExpressionStart: RawTokenKindSubset {
815
818
+ ExpressionPrefixOperator. allCases. map ( Self . expressionPrefixOperator)
816
819
+ MatchingPatternStart. allCases. map ( Self . matchingPatternStart)
817
820
+ PrimaryExpressionStart. allCases. map ( Self . primaryExpressionStart)
821
+ + IfOrSwitch. allCases. map ( Self . ifOrSwitch)
818
822
}
819
823
820
824
var rawTokenKind : RawTokenKind {
@@ -823,6 +827,7 @@ enum ExpressionStart: RawTokenKindSubset {
823
827
case . expressionPrefixOperator( let underlyingKind) : return underlyingKind. rawTokenKind
824
828
case . matchingPatternStart( let underlyingKind) : return underlyingKind. rawTokenKind
825
829
case . primaryExpressionStart( let underlyingKind) : return underlyingKind. rawTokenKind
830
+ case . ifOrSwitch( let underlyingKind) : return underlyingKind. rawTokenKind
826
831
}
827
832
}
828
833
@@ -832,6 +837,7 @@ enum ExpressionStart: RawTokenKindSubset {
832
837
case . expressionPrefixOperator( let underlyingKind) : return underlyingKind. contextualKeyword
833
838
case . matchingPatternStart( let underlyingKind) : return underlyingKind. contextualKeyword
834
839
case . primaryExpressionStart( let underlyingKind) : return underlyingKind. contextualKeyword
840
+ case . ifOrSwitch( let underlyingKind) : return underlyingKind. contextualKeyword
835
841
}
836
842
}
837
843
}
0 commit comments