Skip to content

Commit c0c2c4f

Browse files
Unify more classification code.
1 parent 5ad7a59 commit c0c2c4f

File tree

4 files changed

+25
-13
lines changed

4 files changed

+25
-13
lines changed

src/services/services.ts

Lines changed: 13 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1505,7 +1505,8 @@ module ts {
15051505
public static interfaceName = "interface name";
15061506
public static moduleName = "module name";
15071507
public static typeParameterName = "type parameter name";
1508-
public static typeAlias = "type alias name";
1508+
public static typeAliasName = "type alias name";
1509+
public static parameterName = "type alias name";
15091510
}
15101511

15111512
export const enum ClassificationType {
@@ -1524,7 +1525,7 @@ module ts {
15241525
interfaceName = 13,
15251526
moduleName = 14,
15261527
typeParameterName = 15,
1527-
typeAlias = 16,
1528+
typeAliasName = 16,
15281529
parameterName = 17
15291530
}
15301531

@@ -5876,7 +5877,7 @@ module ts {
58765877
return ClassificationType.enumName;
58775878
}
58785879
else if (flags & SymbolFlags.TypeAlias) {
5879-
return ClassificationType.typeAlias;
5880+
return ClassificationType.typeAliasName;
58805881
}
58815882
else if (meaningAtPosition & SemanticMeaning.Type) {
58825883
if (flags & SymbolFlags.Interface) {
@@ -5942,7 +5943,8 @@ module ts {
59425943
case ClassificationType.interfaceName: return ClassificationTypeNames.interfaceName;
59435944
case ClassificationType.moduleName: return ClassificationTypeNames.moduleName;
59445945
case ClassificationType.typeParameterName: return ClassificationTypeNames.typeParameterName;
5945-
case ClassificationType.typeAlias: return ClassificationTypeNames.typeAlias;
5946+
case ClassificationType.typeAliasName: return ClassificationTypeNames.typeAliasName;
5947+
case ClassificationType.parameterName: return ClassificationTypeNames.parameterName;
59465948
}
59475949
}
59485950

@@ -6147,6 +6149,12 @@ module ts {
61476149
return ClassificationType.moduleName;
61486150
}
61496151
return;
6152+
case SyntaxKind.Parameter:
6153+
if ((<ParameterDeclaration>token.parent).name === token) {
6154+
return ClassificationType.parameterName;
6155+
}
6156+
return;
6157+
61506158
}
61516159
}
61526160

@@ -6669,7 +6677,7 @@ module ts {
66696677
case ClassificationType.interfaceName:
66706678
case ClassificationType.moduleName:
66716679
case ClassificationType.typeParameterName:
6672-
case ClassificationType.typeAlias:
6680+
case ClassificationType.typeAliasName:
66736681
case ClassificationType.text:
66746682
case ClassificationType.parameterName:
66756683
default:

tests/cases/fourslash/fourslash.ts

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -651,8 +651,12 @@ module FourSlashInterface {
651651
return getClassification("typeParameterName", text, position);
652652
}
653653

654-
export function typeAlias(text: string, position?: number): { classificationType: string; text: string; textSpan?: TextSpan } {
655-
return getClassification("typeAlias", text, position);
654+
export function parameterName(text: string, position?: number): { classificationType: string; text: string; textSpan?: TextSpan } {
655+
return getClassification("parameterName", text, position);
656+
}
657+
658+
export function typeAliasName(text: string, position?: number): { classificationType: string; text: string; textSpan?: TextSpan } {
659+
return getClassification("typeAliasName", text, position);
656660
}
657661

658662
function getClassification(type: string, text: string, position?: number) {

tests/cases/fourslash/semanticClassificatonTypeAlias.ts

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -7,9 +7,9 @@
77

88
var c = classification;
99
verify.semanticClassificationsAre(
10-
c.typeAlias("Alias", test.marker("0").position),
11-
c.typeAlias("Alias", test.marker("1").position),
12-
c.typeAlias("Alias", test.marker("2").position),
13-
c.typeAlias("Alias", test.marker("3").position),
14-
c.typeAlias("Alias", test.marker("4").position)
10+
c.typeAliasName("Alias", test.marker("0").position),
11+
c.typeAliasName("Alias", test.marker("1").position),
12+
c.typeAliasName("Alias", test.marker("2").position),
13+
c.typeAliasName("Alias", test.marker("3").position),
14+
c.typeAliasName("Alias", test.marker("4").position)
1515
);

tests/cases/fourslash/syntacticClassificationsFunctionWithComments.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ var firstCommentText =
1919
var c = classification;
2020
verify.syntacticClassificationsAre(
2121
c.comment(firstCommentText),
22-
c.keyword("function"), c.text("myFunction"), c.punctuation("("), c.comment("/* x */"), c.text("x"), c.punctuation(":"), c.keyword("any"), c.punctuation(")"), c.punctuation("{"),
22+
c.keyword("function"), c.text("myFunction"), c.punctuation("("), c.comment("/* x */"), c.parameterName("x"), c.punctuation(":"), c.keyword("any"), c.punctuation(")"), c.punctuation("{"),
2323
c.keyword("var"), c.text("y"), c.operator("="), c.text("x"), c.operator("?"), c.text("x"), c.operator("++"), c.operator(":"), c.operator("++"), c.text("x"), c.punctuation(";"),
2424
c.punctuation("}"),
2525
c.comment("// end of file"));

0 commit comments

Comments
 (0)