提交 8f0df9c7 编写于 作者: W Wonseok Chae

Merge pull request #2034 from wschae/localization

Update Edit and Continue analyzers to use resource strings

Fix #1853 update UnitTests to use resource strings
Fix #1338 update EnC analyzers to use resource strings

- Shared the same strings in FeaturesResources
- Added "Locked" annotation not to be localized
......@@ -45,7 +45,7 @@ static void Main(string[] args)
var active = GetActiveStatements(src1, src2);
edits.VerifyRudeDiagnostics(active,
Diagnostic(RudeEditKind.Delete, "class C", "method"));
Diagnostic(RudeEditKind.Delete, "class C", FeaturesResources.Method));
}
[Fact]
......@@ -58,7 +58,7 @@ public void Method_Body_Delete1()
var active = GetActiveStatements(src1, src2);
edits.VerifyRudeDiagnostics(active,
Diagnostic(RudeEditKind.MethodBodyDelete, "int M()", "method"));
Diagnostic(RudeEditKind.MethodBodyDelete, "int M()", FeaturesResources.Method));
}
[Fact]
......@@ -71,7 +71,7 @@ public void Method_ExpressionBody_Delete1()
var active = GetActiveStatements(src1, src2);
edits.VerifyRudeDiagnostics(active,
Diagnostic(RudeEditKind.MethodBodyDelete, "int M()", "method"));
Diagnostic(RudeEditKind.MethodBodyDelete, "int M()", FeaturesResources.Method));
}
[Fact]
......@@ -222,7 +222,7 @@ static void Main(string[] args)
var active = GetActiveStatements(src1, src2);
edits.VerifyRudeDiagnostics(active,
Diagnostic(RudeEditKind.GenericMethodUpdate, "static void Swap<T>(T lhs, T rhs)", "method"));
Diagnostic(RudeEditKind.GenericMethodUpdate, "static void Swap<T>(T lhs, T rhs)", FeaturesResources.Method));
}
// Async
......@@ -520,7 +520,7 @@ public void Property_BlockBodyToExpressionBody2()
var active = GetActiveStatements(src1, src2);
edits.VerifyRudeDiagnostics(active,
Diagnostic(RudeEditKind.Delete, "int P", "property setter"));
Diagnostic(RudeEditKind.Delete, "int P", CSharpFeaturesResources.PropertySetter));
}
[Fact]
......@@ -598,7 +598,7 @@ public void Indexer_BlockBodyToExpressionBody2()
var active = GetActiveStatements(src1, src2);
edits.VerifyRudeDiagnostics(active,
Diagnostic(RudeEditKind.Delete, "int this[int a]", "indexer setter"));
Diagnostic(RudeEditKind.Delete, "int this[int a]", CSharpFeaturesResources.IndexerSetter));
}
[Fact]
......@@ -648,7 +648,7 @@ class SampleCollection<T>
var active = GetActiveStatements(src1, src2);
edits.VerifyRudeDiagnostics(active,
Diagnostic(RudeEditKind.GenericTypeUpdate, "set", "indexer setter"));
Diagnostic(RudeEditKind.GenericTypeUpdate, "set", CSharpFeaturesResources.IndexerSetter));
}
[WorkItem(750244)]
......@@ -702,7 +702,7 @@ class SampleCollection<T>
edits.VerifyRudeDiagnostics(active,
Diagnostic(RudeEditKind.ActiveStatementUpdate, @"stringCollection[1] = ""hello"";"),
Diagnostic(RudeEditKind.GenericTypeUpdate, "set", "indexer setter"));
Diagnostic(RudeEditKind.GenericTypeUpdate, "set", CSharpFeaturesResources.IndexerSetter));
}
[Fact]
......@@ -752,7 +752,7 @@ class SampleCollection<T>
var active = GetActiveStatements(src1, src2);
edits.VerifyRudeDiagnostics(active,
Diagnostic(RudeEditKind.GenericTypeUpdate, "get", "indexer getter"));
Diagnostic(RudeEditKind.GenericTypeUpdate, "get", CSharpFeaturesResources.IndexerGetter));
}
[WorkItem(750244)]
......@@ -804,7 +804,7 @@ class SampleCollection<T>
edits.VerifyRudeDiagnostics(active,
Diagnostic(RudeEditKind.ActiveStatementUpdate, "Console.WriteLine(stringCollection[1]);"),
Diagnostic(RudeEditKind.GenericTypeUpdate, "get", "indexer getter"));
Diagnostic(RudeEditKind.GenericTypeUpdate, "get", CSharpFeaturesResources.IndexerGetter));
}
[Fact]
......@@ -854,7 +854,7 @@ class SampleCollection<T>
var active = GetActiveStatements(src1, src2);
edits.VerifyRudeDiagnostics(active,
Diagnostic(RudeEditKind.GenericTypeUpdate, "set", "indexer setter"));
Diagnostic(RudeEditKind.GenericTypeUpdate, "set", CSharpFeaturesResources.IndexerSetter));
}
[Fact]
......@@ -953,7 +953,7 @@ class SampleCollection<T>
var active = GetActiveStatements(src1, src2);
edits.VerifyRudeDiagnostics(active,
Diagnostic(RudeEditKind.GenericTypeUpdate, "get", "indexer getter"));
Diagnostic(RudeEditKind.GenericTypeUpdate, "get", CSharpFeaturesResources.IndexerGetter));
}
[Fact]
......
......@@ -769,7 +769,7 @@ class Foo
var active = GetActiveStatements(src1, src2);
edits.VerifyRudeDiagnostics(active,
Diagnostic(RudeEditKind.Renamed, "int b", "parameter"));
Diagnostic(RudeEditKind.Renamed, "int b", FeaturesResources.Parameter));
}
[WorkItem(742334)]
......@@ -818,7 +818,7 @@ class Foo
var active = GetActiveStatements(src1, src2);
edits.VerifyRudeDiagnostics(active,
Diagnostic(RudeEditKind.InitializerUpdate, "int a = 42", "parameter"));
Diagnostic(RudeEditKind.InitializerUpdate, "int a = 42", FeaturesResources.Parameter));
}
[WorkItem(742334)]
......@@ -1416,7 +1416,7 @@ static void Main(string[] args)
var active = GetActiveStatements(src1, src2);
edits.VerifyRudeDiagnostics(active,
Diagnostic(RudeEditKind.MethodBodyAdd, "get", "property getter"));
Diagnostic(RudeEditKind.MethodBodyAdd, "get", CSharpFeaturesResources.PropertyGetter));
}
[Fact]
......@@ -1686,7 +1686,7 @@ static void Main(string[] args)
var active = GetActiveStatements(src1, src2);
edits.VerifyRudeDiagnostics(active,
Diagnostic(RudeEditKind.RUDE_EDIT_LAMBDA_EXPRESSION, "z", "field"));
Diagnostic(RudeEditKind.RUDE_EDIT_LAMBDA_EXPRESSION, "z", FeaturesResources.Field));
}
[Fact]
......@@ -1716,7 +1716,7 @@ static void Main(string[] args)
var active = GetActiveStatements(src1, src2);
edits.VerifyRudeDiagnostics(active,
Diagnostic(RudeEditKind.RUDE_EDIT_LAMBDA_EXPRESSION, "z", "auto-property"));
Diagnostic(RudeEditKind.RUDE_EDIT_LAMBDA_EXPRESSION, "z", FeaturesResources.AutoProperty));
}
[Fact]
......@@ -1746,7 +1746,7 @@ static void Main(string[] args)
var active = GetActiveStatements(src1, src2);
edits.VerifyRudeDiagnostics(active,
Diagnostic(RudeEditKind.RUDE_EDIT_LAMBDA_EXPRESSION, "z", "field"));
Diagnostic(RudeEditKind.RUDE_EDIT_LAMBDA_EXPRESSION, "z", FeaturesResources.Field));
}
[Fact]
......@@ -1776,7 +1776,7 @@ static void Main(string[] args)
var active = GetActiveStatements(src1, src2);
edits.VerifyRudeDiagnostics(active,
Diagnostic(RudeEditKind.RUDE_EDIT_LAMBDA_EXPRESSION, "z", "auto-property"));
Diagnostic(RudeEditKind.RUDE_EDIT_LAMBDA_EXPRESSION, "z", FeaturesResources.AutoProperty));
}
[Fact]
......@@ -1804,7 +1804,7 @@ class C
var active = GetActiveStatements(src1, src2);
edits.VerifyRudeDiagnostics(active,
Diagnostic(RudeEditKind.ModifiersUpdate, "const int a = 1", "const field"));
Diagnostic(RudeEditKind.ModifiersUpdate, "const int a = 1", FeaturesResources.ConstField));
}
[Fact]
......@@ -1854,7 +1854,7 @@ class C
var active = GetActiveStatements(src1, src2);
edits.VerifyRudeDiagnostics(active,
Diagnostic(RudeEditKind.ModifiersUpdate, "const int a = 1, b = 2", "const field"));
Diagnostic(RudeEditKind.ModifiersUpdate, "const int a = 1, b = 2", FeaturesResources.ConstField));
}
[Fact]
......@@ -2006,7 +2006,7 @@ class C
var active = GetActiveStatements(src1, src2);
edits.VerifyRudeDiagnostics(active,
Diagnostic(RudeEditKind.Delete, "class C", "field"));
Diagnostic(RudeEditKind.Delete, "class C", FeaturesResources.Field));
}
[Fact]
......@@ -2140,8 +2140,8 @@ class C
var active = GetActiveStatements(src1, src2);
edits.VerifyRudeDiagnostics(active,
Diagnostic(RudeEditKind.Move, "int c", "field"),
Diagnostic(RudeEditKind.Delete, "class C", "field"));
Diagnostic(RudeEditKind.Move, "int c", FeaturesResources.Field),
Diagnostic(RudeEditKind.Delete, "class C", FeaturesResources.Field));
}
[Fact]
......@@ -2191,7 +2191,7 @@ class C
var active = GetActiveStatements(src1, src2);
edits.VerifyRudeDiagnostics(active,
Diagnostic(RudeEditKind.Delete, "class C", "field"));
Diagnostic(RudeEditKind.Delete, "class C", FeaturesResources.Field));
}
[Fact]
......@@ -2213,7 +2213,7 @@ class C
var active = GetActiveStatements(src1, src2);
edits.VerifyRudeDiagnostics(active,
Diagnostic(RudeEditKind.Delete, "class C", "auto-property"));
Diagnostic(RudeEditKind.Delete, "class C", FeaturesResources.AutoProperty));
}
#endregion
......@@ -6806,7 +6806,7 @@ static void Foo(int a)
var edits = GetTopEdits(src1, src2);
edits.VerifyRudeDiagnostics(
Diagnostic(RudeEditKind.Delete, null, "class"));
Diagnostic(RudeEditKind.Delete, null, FeaturesResources.Class));
}
#endregion
......
......@@ -338,7 +338,7 @@ static void Bar()
edits.VerifyLineEdits(
Array.Empty<LineChange>(),
new string[] { "static void Bar()" },
Diagnostic(RudeEditKind.GenericTypeTriviaUpdate, "\r\n ", "method"));
Diagnostic(RudeEditKind.GenericTypeTriviaUpdate, "\r\n ", FeaturesResources.Method));
}
[Fact]
......@@ -366,7 +366,7 @@ static void Bar()
edits.VerifyLineEdits(
Array.Empty<LineChange>(),
new string[] { "static void Bar()" },
Diagnostic(RudeEditKind.GenericTypeTriviaUpdate, "\r\n /*edit*/", "method"));
Diagnostic(RudeEditKind.GenericTypeTriviaUpdate, "\r\n /*edit*/", FeaturesResources.Method));
}
[Fact]
......@@ -394,7 +394,7 @@ static void Bar<T>()
edits.VerifyLineEdits(
Array.Empty<LineChange>(),
new string[] { "static void Bar<T>()" },
Diagnostic(RudeEditKind.GenericMethodTriviaUpdate, "\r\n ", "method"));
Diagnostic(RudeEditKind.GenericMethodTriviaUpdate, "\r\n ", FeaturesResources.Method));
}
[Fact]
......@@ -566,7 +566,7 @@ public C(int a)
edits.VerifyLineEdits(
Array.Empty<LineChange>(),
new string[] { "public C(int a)" },
Diagnostic(RudeEditKind.GenericTypeTriviaUpdate, " ", "constructor"));
Diagnostic(RudeEditKind.GenericTypeTriviaUpdate, " ", FeaturesResources.Constructor));
}
#endregion
......@@ -845,7 +845,7 @@ class C<T>
edits.VerifyLineEdits(
Array.Empty<LineChange>(),
new string[] { "Foo = 1 + 1" },
Diagnostic(RudeEditKind.GenericTypeTriviaUpdate, " ", "field"));
Diagnostic(RudeEditKind.GenericTypeTriviaUpdate, " ", FeaturesResources.Field));
}
#endregion
......
......@@ -2727,7 +2727,7 @@ void F()
var edits = GetTopEdits(src1, src2);
edits.VerifySemanticDiagnostics(
Diagnostic(RudeEditKind.InsertLambdaWithMultiScopeCapture, "x1", "lambda", "x0", "x1"));
Diagnostic(RudeEditKind.InsertLambdaWithMultiScopeCapture, "x1", CSharpFeaturesResources.Lambda, "x0", "x1"));
}
[Fact]
......@@ -2766,7 +2766,7 @@ void F()
var edits = GetTopEdits(src1, src2);
edits.VerifySemanticDiagnostics(
Diagnostic(RudeEditKind.InsertLambdaWithMultiScopeCapture, "x1", "lambda", "x0", "x1"));
Diagnostic(RudeEditKind.InsertLambdaWithMultiScopeCapture, "x1", CSharpFeaturesResources.Lambda, "x0", "x1"));
}
[Fact]
......@@ -2812,7 +2812,7 @@ void F()
var edits = GetTopEdits(src1, src2);
edits.VerifySemanticDiagnostics(
Diagnostic(RudeEditKind.InsertLambdaWithMultiScopeCapture, "x2", "lambda", "x0", "x2"));
Diagnostic(RudeEditKind.InsertLambdaWithMultiScopeCapture, "x2", CSharpFeaturesResources.Lambda, "x0", "x2"));
}
[Fact]
......@@ -2886,7 +2886,7 @@ void F()
var edits = GetTopEdits(src1, src2);
edits.VerifySemanticDiagnostics(
Diagnostic(RudeEditKind.InsertLambdaWithMultiScopeCapture, "x0", "lambda", "x2", "x0"));
Diagnostic(RudeEditKind.InsertLambdaWithMultiScopeCapture, "x0", CSharpFeaturesResources.Lambda, "x2", "x0"));
}
[Fact]
......@@ -2944,7 +2944,7 @@ static void F()
var edits = GetTopEdits(src1, src2);
edits.VerifySemanticDiagnostics(
Diagnostic(RudeEditKind.InsertLambdaWithMultiScopeCapture, "x1", "lambda", "x0", "x1"));
Diagnostic(RudeEditKind.InsertLambdaWithMultiScopeCapture, "x1", CSharpFeaturesResources.Lambda, "x0", "x1"));
}
[Fact]
......@@ -3000,7 +3000,7 @@ static void F()
var edits = GetTopEdits(src1, src2);
edits.VerifySemanticDiagnostics(
Diagnostic(RudeEditKind.InsertLambdaWithMultiScopeCapture, "x1", "lambda", "x0", "x1"));
Diagnostic(RudeEditKind.InsertLambdaWithMultiScopeCapture, "x1", CSharpFeaturesResources.Lambda, "x0", "x1"));
}
[Fact, WorkItem(1504, "https://github.com/dotnet/roslyn/issues/1504")]
......@@ -4734,7 +4734,7 @@ void F()
var edits = GetTopEdits(src1, src2);
edits.VerifySemanticDiagnostics(
Diagnostic(RudeEditKind.ChangingQueryLambdaType, "select", "select clause"));
Diagnostic(RudeEditKind.ChangingQueryLambdaType, "select", CSharpFeaturesResources.SelectClause));
}
[Fact]
......@@ -4767,7 +4767,7 @@ void F()
var edits = GetTopEdits(src1, src2);
edits.VerifySemanticDiagnostics(
Diagnostic(RudeEditKind.ChangingQueryLambdaType, "select", "select clause"));
Diagnostic(RudeEditKind.ChangingQueryLambdaType, "select", CSharpFeaturesResources.SelectClause));
}
[Fact]
......@@ -4800,7 +4800,7 @@ void F()
var edits = GetTopEdits(src1, src2);
edits.VerifySemanticDiagnostics(
Diagnostic(RudeEditKind.ChangingQueryLambdaType, "from", "from clause"));
Diagnostic(RudeEditKind.ChangingQueryLambdaType, "from", CSharpFeaturesResources.FromClause));
}
[Fact]
......@@ -4901,7 +4901,7 @@ void F()
var edits = GetTopEdits(src1, src2);
edits.VerifySemanticDiagnostics(
Diagnostic(RudeEditKind.ChangingQueryLambdaType, "let", "let clause"));
Diagnostic(RudeEditKind.ChangingQueryLambdaType, "let", CSharpFeaturesResources.LetClause));
}
[Fact]
......@@ -4936,7 +4936,7 @@ void F()
var edits = GetTopEdits(src1, src2);
edits.VerifySemanticDiagnostics(
Diagnostic(RudeEditKind.ChangingQueryLambdaType, "a + 1.0 descending", "orderby clause"));
Diagnostic(RudeEditKind.ChangingQueryLambdaType, "a + 1.0 descending", CSharpFeaturesResources.OrderByClause));
}
[Fact]
......@@ -4971,7 +4971,7 @@ void F()
var edits = GetTopEdits(src1, src2);
edits.VerifySemanticDiagnostics(
Diagnostic(RudeEditKind.ChangingQueryLambdaType, "a + 2.0 ascending", "orderby clause"));
Diagnostic(RudeEditKind.ChangingQueryLambdaType, "a + 2.0 ascending", CSharpFeaturesResources.OrderByClause));
}
[Fact]
......@@ -5006,7 +5006,7 @@ void F()
var edits = GetTopEdits(src1, src2);
edits.VerifySemanticDiagnostics(
Diagnostic(RudeEditKind.ChangingQueryLambdaType, "join", "join clause"));
Diagnostic(RudeEditKind.ChangingQueryLambdaType, "join", CSharpFeaturesResources.JoinClause));
}
[Fact]
......@@ -5041,7 +5041,7 @@ void F()
var edits = GetTopEdits(src1, src2);
edits.VerifySemanticDiagnostics(
Diagnostic(RudeEditKind.ChangingQueryLambdaType, "join", "join clause"));
Diagnostic(RudeEditKind.ChangingQueryLambdaType, "join", CSharpFeaturesResources.JoinClause));
}
[Fact]
......@@ -5076,7 +5076,7 @@ void F()
var edits = GetTopEdits(src1, src2);
edits.VerifySemanticDiagnostics(
Diagnostic(RudeEditKind.ChangingQueryLambdaType, "join", "join clause"));
Diagnostic(RudeEditKind.ChangingQueryLambdaType, "join", CSharpFeaturesResources.JoinClause));
}
[Fact]
......@@ -5111,7 +5111,7 @@ void F()
var edits = GetTopEdits(src1, src2);
edits.VerifySemanticDiagnostics(
Diagnostic(RudeEditKind.ChangingQueryLambdaType, "join", "join clause"));
Diagnostic(RudeEditKind.ChangingQueryLambdaType, "join", CSharpFeaturesResources.JoinClause));
}
[Fact]
......@@ -5146,7 +5146,7 @@ void F()
var edits = GetTopEdits(src1, src2);
edits.VerifySemanticDiagnostics(
Diagnostic(RudeEditKind.ChangingQueryLambdaType, "group", "groupby clause"));
Diagnostic(RudeEditKind.ChangingQueryLambdaType, "group", CSharpFeaturesResources.GroupByClause));
}
[Fact]
......@@ -5181,7 +5181,7 @@ void F()
var edits = GetTopEdits(src1, src2);
edits.VerifySemanticDiagnostics(
Diagnostic(RudeEditKind.ChangingQueryLambdaType, "group", "groupby clause"));
Diagnostic(RudeEditKind.ChangingQueryLambdaType, "group", CSharpFeaturesResources.GroupByClause));
}
[Fact]
......@@ -5591,7 +5591,7 @@ void F()
";
var edits = GetTopEdits(src1, src2);
edits.VerifySemanticDiagnostics(
Diagnostic(RudeEditKind.ChangingQueryLambdaType, "select", "select clause"));
Diagnostic(RudeEditKind.ChangingQueryLambdaType, "select", CSharpFeaturesResources.SelectClause));
}
[Fact]
......@@ -5633,7 +5633,7 @@ void F()
";
var edits = GetTopEdits(src1, src2);
edits.VerifySemanticDiagnostics(
Diagnostic(RudeEditKind.AccessingCapturedVariableInLambda, "a", "a", "select clause"));
Diagnostic(RudeEditKind.AccessingCapturedVariableInLambda, "a", "a", CSharpFeaturesResources.SelectClause));
}
[Fact]
......@@ -5673,8 +5673,8 @@ void F()
";
var edits = GetTopEdits(src1, src2);
edits.VerifySemanticDiagnostics(
Diagnostic(RudeEditKind.AccessingCapturedVariableInLambda, "a", "a", "select clause"),
Diagnostic(RudeEditKind.AccessingCapturedVariableInLambda, "a", "a", "lambda"));
Diagnostic(RudeEditKind.AccessingCapturedVariableInLambda, "a", "a", CSharpFeaturesResources.SelectClause),
Diagnostic(RudeEditKind.AccessingCapturedVariableInLambda, "a", "a", CSharpFeaturesResources.Lambda));
}
[Fact]
......@@ -5716,7 +5716,7 @@ void F()
";
var edits = GetTopEdits(src1, src2);
edits.VerifySemanticDiagnostics(
Diagnostic(RudeEditKind.NotAccessingCapturedVariableInLambda, "select", "a", "select clause"));
Diagnostic(RudeEditKind.NotAccessingCapturedVariableInLambda, "select", "a", CSharpFeaturesResources.SelectClause));
}
[Fact]
......@@ -5756,8 +5756,8 @@ void F()
";
var edits = GetTopEdits(src1, src2);
edits.VerifySemanticDiagnostics(
Diagnostic(RudeEditKind.AccessingCapturedVariableInLambda, "a", "a", "select clause"),
Diagnostic(RudeEditKind.AccessingCapturedVariableInLambda, "a", "a", "lambda"));
Diagnostic(RudeEditKind.AccessingCapturedVariableInLambda, "a", "a", CSharpFeaturesResources.SelectClause),
Diagnostic(RudeEditKind.AccessingCapturedVariableInLambda, "a", "a", CSharpFeaturesResources.Lambda));
}
[Fact]
......
......@@ -328,7 +328,7 @@ End Class
Dim edits = GetTopEdits(src1, src2)
edits.VerifyLineEdits({},
{"Shared Sub Bar()"},
Diagnostic(RudeEditKind.GenericTypeTriviaUpdate, vbCrLf & " ", "method"))
Diagnostic(RudeEditKind.GenericTypeTriviaUpdate, vbCrLf & " ", FeaturesResources.Method))
End Sub
<Fact>
......@@ -351,7 +351,7 @@ End Class
Dim edits = GetTopEdits(src1, src2)
edits.VerifyLineEdits({},
{"Shared Sub Bar()"},
Diagnostic(RudeEditKind.GenericTypeTriviaUpdate, vbCrLf & " ", "method"))
Diagnostic(RudeEditKind.GenericTypeTriviaUpdate, vbCrLf & " ", FeaturesResources.Method))
End Sub
<Fact>
......@@ -375,7 +375,7 @@ End Class
Dim edits = GetTopEdits(src1, src2)
edits.VerifyLineEdits({},
{"Shared Sub Bar(Of T)()"},
Diagnostic(RudeEditKind.GenericMethodTriviaUpdate, vbCrLf & " ", "method"))
Diagnostic(RudeEditKind.GenericMethodTriviaUpdate, vbCrLf & " ", FeaturesResources.Method))
End Sub
<Fact>
......@@ -885,7 +885,7 @@ End Class
Dim edits = GetTopEdits(src1, src2)
edits.VerifyLineEdits({},
{"Foo As Integer = 1 + 1"},
Diagnostic(RudeEditKind.GenericTypeTriviaUpdate, " ", "field"))
Diagnostic(RudeEditKind.GenericTypeTriviaUpdate, " ", FeaturesResources.Field))
End Sub
#End Region
......
......@@ -2529,17 +2529,17 @@ End Class"
Dim insert = GetTopEdits(src1, src2)
insert.VerifySemanticDiagnostics(
Diagnostic(RudeEditKind.InsertLambdaWithMultiScopeCapture, "x1", "lambda", "y0", "x1"),
Diagnostic(RudeEditKind.InsertLambdaWithMultiScopeCapture, "x3", "lambda", "x1", "x3"),
Diagnostic(RudeEditKind.InsertLambdaWithMultiScopeCapture, "y0", "lambda", "Me", "y0"),
Diagnostic(RudeEditKind.InsertLambdaWithMultiScopeCapture, "x3", "lambda", "Me", "x3"))
Diagnostic(RudeEditKind.InsertLambdaWithMultiScopeCapture, "x1", VBFeaturesResources.LambdaExpression, "y0", "x1"),
Diagnostic(RudeEditKind.InsertLambdaWithMultiScopeCapture, "x3", VBFeaturesResources.LambdaExpression, "x1", "x3"),
Diagnostic(RudeEditKind.InsertLambdaWithMultiScopeCapture, "y0", VBFeaturesResources.LambdaExpression, "Me", "y0"),
Diagnostic(RudeEditKind.InsertLambdaWithMultiScopeCapture, "x3", VBFeaturesResources.LambdaExpression, "Me", "x3"))
Dim delete = GetTopEdits(src2, src1)
delete.VerifySemanticDiagnostics(
Diagnostic(RudeEditKind.DeleteLambdaWithMultiScopeCapture, "x1", "lambda", "y0", "x1"),
Diagnostic(RudeEditKind.DeleteLambdaWithMultiScopeCapture, "x3", "lambda", "x1", "x3"),
Diagnostic(RudeEditKind.DeleteLambdaWithMultiScopeCapture, "y0", "lambda", "Me", "y0"),
Diagnostic(RudeEditKind.DeleteLambdaWithMultiScopeCapture, "x3", "lambda", "Me", "x3"))
Diagnostic(RudeEditKind.DeleteLambdaWithMultiScopeCapture, "x1", VBFeaturesResources.LambdaExpression, "y0", "x1"),
Diagnostic(RudeEditKind.DeleteLambdaWithMultiScopeCapture, "x3", VBFeaturesResources.LambdaExpression, "x1", "x3"),
Diagnostic(RudeEditKind.DeleteLambdaWithMultiScopeCapture, "y0", VBFeaturesResources.LambdaExpression, "Me", "y0"),
Diagnostic(RudeEditKind.DeleteLambdaWithMultiScopeCapture, "x3", VBFeaturesResources.LambdaExpression, "Me", "x3"))
End Sub
<Fact>
......@@ -2605,7 +2605,7 @@ End Class
"
Dim edits = GetTopEdits(src1, src2)
edits.VerifySemanticDiagnostics(
Diagnostic(RudeEditKind.ChangingLambdaParameters, "Function(a)", "lambda"))
Diagnostic(RudeEditKind.ChangingLambdaParameters, "Function(a)", VBFeaturesResources.LambdaExpression))
End Sub
<Fact, WorkItem(1290)>
......@@ -2642,7 +2642,7 @@ End Class
"
Dim edits = GetTopEdits(src1, src2)
edits.VerifySemanticDiagnostics(
Diagnostic(RudeEditKind.ChangingLambdaParameters, "Function(a, b)", "lambda"))
Diagnostic(RudeEditKind.ChangingLambdaParameters, "Function(a, b)", VBFeaturesResources.LambdaExpression))
End Sub
<Fact, WorkItem(1290)>
......@@ -2679,7 +2679,7 @@ End Class
"
Dim edits = GetTopEdits(src1, src2)
edits.VerifySemanticDiagnostics(
Diagnostic(RudeEditKind.ChangingLambdaReturnType, "Function(a)", "lambda"))
Diagnostic(RudeEditKind.ChangingLambdaReturnType, "Function(a)", VBFeaturesResources.LambdaExpression))
End Sub
<Fact, WorkItem(1290)>
......@@ -2720,7 +2720,7 @@ End Class
"
Dim edits = GetTopEdits(src1, src2)
edits.VerifySemanticDiagnostics(
Diagnostic(RudeEditKind.ChangingLambdaParameters, "Sub(a)", "lambda"))
Diagnostic(RudeEditKind.ChangingLambdaParameters, "Sub(a)", VBFeaturesResources.LambdaExpression))
End Sub
<Fact, WorkItem(1290)>
......@@ -2761,7 +2761,7 @@ End Class
"
Dim edits = GetTopEdits(src1, src2)
edits.VerifySemanticDiagnostics(
Diagnostic(RudeEditKind.ChangingLambdaReturnType, "Function()", "lambda"))
Diagnostic(RudeEditKind.ChangingLambdaReturnType, "Function()", VBFeaturesResources.LambdaExpression))
End Sub
<Fact>
......@@ -2837,7 +2837,7 @@ End Class
"
Dim edits = GetTopEdits(src1, src2)
edits.VerifySemanticDiagnostics(
Diagnostic(RudeEditKind.ChangingLambdaReturnType, "Sub(a)", "lambda"))
Diagnostic(RudeEditKind.ChangingLambdaReturnType, "Sub(a)", VBFeaturesResources.LambdaExpression))
End Sub
<Fact>
......@@ -2954,7 +2954,7 @@ End Class
"
Dim edits = GetTopEdits(src1, src2)
edits.VerifySemanticDiagnostics(
Diagnostic(RudeEditKind.ChangingLambdaParameters, "Function(a As Integer)", "lambda"))
Diagnostic(RudeEditKind.ChangingLambdaParameters, "Function(a As Integer)", VBFeaturesResources.LambdaExpression))
End Sub
<Fact>
......@@ -3089,7 +3089,7 @@ End Class
"
Dim edits = GetTopEdits(src1, src2)
edits.VerifySemanticDiagnostics(
Diagnostic(RudeEditKind.ChangingLambdaParameters, "Function(a)", "lambda"))
Diagnostic(RudeEditKind.ChangingLambdaParameters, "Function(a)", VBFeaturesResources.LambdaExpression))
End Sub
<Fact, WorkItem(1290)>
......@@ -3141,7 +3141,7 @@ End Namespace
"
Dim edits = GetTopEdits(src1, src2)
edits.VerifySemanticDiagnostics(
Diagnostic(RudeEditKind.ChangingLambdaParameters, "Function(a)", "lambda"))
Diagnostic(RudeEditKind.ChangingLambdaParameters, "Function(a)", VBFeaturesResources.LambdaExpression))
End Sub
<Fact>
......@@ -3219,7 +3219,7 @@ End Class
"
Dim edits = GetTopEdits(src1, src2)
edits.VerifySemanticDiagnostics(
Diagnostic(RudeEditKind.ChangingLambdaParameters, "Function(a, b)", "lambda"))
Diagnostic(RudeEditKind.ChangingLambdaParameters, "Function(a, b)", VBFeaturesResources.LambdaExpression))
End Sub
<Fact>
......@@ -3285,7 +3285,7 @@ End Class
' TODO: better location
edits.VerifySemanticDiagnostics(
Diagnostic(RudeEditKind.NotAccessingCapturedVariableInLambda, "Function(a2)", "y", "lambda"))
Diagnostic(RudeEditKind.NotAccessingCapturedVariableInLambda, "Function(a2)", "y", VBFeaturesResources.LambdaExpression))
End Sub
<Fact>
......@@ -3607,7 +3607,7 @@ End Class
"
Dim edits = GetTopEdits(src1, src2)
edits.VerifySemanticDiagnostics(
Diagnostic(RudeEditKind.AccessingCapturedVariableInLambda, "Function(a1)", "Me", "lambda"))
Diagnostic(RudeEditKind.AccessingCapturedVariableInLambda, "Function(a1)", "Me", VBFeaturesResources.LambdaExpression))
End Sub
<Fact>
......@@ -3640,8 +3640,8 @@ End Class
"
Dim edits = GetTopEdits(src1, src2)
edits.VerifySemanticDiagnostics(
Diagnostic(RudeEditKind.AccessingCapturedVariableInLambda, "x", "x", "lambda").WithFirstLine("x + ' 1"),
Diagnostic(RudeEditKind.AccessingCapturedVariableInLambda, "x", "x", "lambda").WithFirstLine("x ' 2"))
Diagnostic(RudeEditKind.AccessingCapturedVariableInLambda, "x", "x", VBFeaturesResources.LambdaExpression).WithFirstLine("x + ' 1"),
Diagnostic(RudeEditKind.AccessingCapturedVariableInLambda, "x", "x", VBFeaturesResources.LambdaExpression).WithFirstLine("x ' 2"))
End Sub
<Fact>
......@@ -3672,7 +3672,7 @@ End Class
"
Dim edits = GetTopEdits(src1, src2)
edits.VerifySemanticDiagnostics(
Diagnostic(RudeEditKind.AccessingCapturedVariableInLambda, "y", "y", "lambda"))
Diagnostic(RudeEditKind.AccessingCapturedVariableInLambda, "y", "y", VBFeaturesResources.LambdaExpression))
End Sub
<Fact>
......@@ -3772,7 +3772,7 @@ End Class
"
Dim edits = GetTopEdits(src1, src2)
edits.VerifySemanticDiagnostics(
Diagnostic(RudeEditKind.AccessingCapturedVariableInLambda, "x0", "x0", "lambda"))
Diagnostic(RudeEditKind.AccessingCapturedVariableInLambda, "x0", "x0", VBFeaturesResources.LambdaExpression))
End Sub
<Fact>
......@@ -3824,7 +3824,7 @@ Class C
End Class"
Dim edits = GetTopEdits(src1, src2)
edits.VerifySemanticDiagnostics(
Diagnostic(RudeEditKind.NotAccessingCapturedVariableInLambda, "Function(a)", "x0", "lambda"))
Diagnostic(RudeEditKind.NotAccessingCapturedVariableInLambda, "Function(a)", "x0", VBFeaturesResources.LambdaExpression))
End Sub
<Fact>
......@@ -3878,7 +3878,7 @@ Class C
End Class"
Dim edits = GetTopEdits(src1, src2)
edits.VerifySemanticDiagnostics(
Diagnostic(RudeEditKind.AccessingCapturedVariableInLambda, "x0", "x0", "lambda"))
Diagnostic(RudeEditKind.AccessingCapturedVariableInLambda, "x0", "x0", VBFeaturesResources.LambdaExpression))
End Sub
<Fact>
......@@ -3937,10 +3937,10 @@ End Class
' Including statement distance when matching would help.
edits.VerifySemanticDiagnostics(
Diagnostic(RudeEditKind.NotAccessingCapturedVariableInLambda, "Function(a)", "Me", "lambda").WithFirstLine("G(Function(a) y1 + x0) ' error: connecting previously disconnected closures"),
Diagnostic(RudeEditKind.AccessingCapturedVariableInLambda, "y1", "y1", "lambda").WithFirstLine("G(Function(a) y1 + x0) ' error: connecting previously disconnected closures"),
Diagnostic(RudeEditKind.AccessingCapturedVariableInLambda, "Function(a)", "Me", "lambda").WithFirstLine("G(Function(a) x) ' error: disconnecting previously connected closures"),
Diagnostic(RudeEditKind.NotAccessingCapturedVariableInLambda, "Function(a)", "y1", "lambda").WithFirstLine("G(Function(a) x) ' error: disconnecting previously connected closures"))
Diagnostic(RudeEditKind.NotAccessingCapturedVariableInLambda, "Function(a)", "Me", VBFeaturesResources.LambdaExpression).WithFirstLine("G(Function(a) y1 + x0) ' error: connecting previously disconnected closures"),
Diagnostic(RudeEditKind.AccessingCapturedVariableInLambda, "y1", "y1", VBFeaturesResources.LambdaExpression).WithFirstLine("G(Function(a) y1 + x0) ' error: connecting previously disconnected closures"),
Diagnostic(RudeEditKind.AccessingCapturedVariableInLambda, "Function(a)", "Me", VBFeaturesResources.LambdaExpression).WithFirstLine("G(Function(a) x) ' error: disconnecting previously connected closures"),
Diagnostic(RudeEditKind.NotAccessingCapturedVariableInLambda, "Function(a)", "y1", VBFeaturesResources.LambdaExpression).WithFirstLine("G(Function(a) x) ' error: disconnecting previously connected closures"))
End Sub
#End Region
......@@ -3969,7 +3969,7 @@ End Class
"
Dim edits = GetTopEdits(src1, src2)
edits.VerifySemanticDiagnostics(
Diagnostic(RudeEditKind.ChangingQueryLambdaType, "Select", "Select clause"))
Diagnostic(RudeEditKind.ChangingQueryLambdaType, "Select", VBFeaturesResources.SelectClause))
End Sub
<Fact>
......@@ -3996,7 +3996,7 @@ End Class
"
Dim edits = GetTopEdits(src1, src2)
edits.VerifySemanticDiagnostics(
Diagnostic(RudeEditKind.ChangingQueryLambdaType, "Select", "Select clause"))
Diagnostic(RudeEditKind.ChangingQueryLambdaType, "Select", VBFeaturesResources.SelectClause))
End Sub
<Fact>
......@@ -4023,7 +4023,7 @@ End Class
"
Dim edits = GetTopEdits(src1, src2)
edits.VerifySemanticDiagnostics(
Diagnostic(RudeEditKind.ChangingQueryLambdaType, "Select", "Select clause"))
Diagnostic(RudeEditKind.ChangingQueryLambdaType, "Select", VBFeaturesResources.SelectClause))
End Sub
<Fact>
......@@ -4050,7 +4050,7 @@ End Class
"
Dim edits = GetTopEdits(src1, src2)
edits.VerifySemanticDiagnostics(
Diagnostic(RudeEditKind.ChangingQueryLambdaType, "From", "From clause"))
Diagnostic(RudeEditKind.ChangingQueryLambdaType, "From", VBFeaturesResources.FromClause))
End Sub
<Fact>
......@@ -4226,7 +4226,7 @@ End Class
"
Dim edits = GetTopEdits(src1, src2)
edits.VerifySemanticDiagnostics(
Diagnostic(RudeEditKind.ChangingQueryLambdaType, "Let", "Let clause"))
Diagnostic(RudeEditKind.ChangingQueryLambdaType, "Let", VBFeaturesResources.LetClause))
End Sub
<Fact>
......@@ -4255,7 +4255,7 @@ End Class
"
Dim edits = GetTopEdits(src1, src2)
edits.VerifySemanticDiagnostics(
Diagnostic(RudeEditKind.ChangingQueryLambdaType, "a + 1.0 Descending", "ordering clause"))
Diagnostic(RudeEditKind.ChangingQueryLambdaType, "a + 1.0 Descending", VBFeaturesResources.OrderingClause))
End Sub
<Fact>
......@@ -4284,7 +4284,7 @@ End Class
"
Dim edits = GetTopEdits(src1, src2)
edits.VerifySemanticDiagnostics(
Diagnostic(RudeEditKind.ChangingQueryLambdaType, "a + 2.0 Ascending", "ordering clause"))
Diagnostic(RudeEditKind.ChangingQueryLambdaType, "a + 2.0 Ascending", VBFeaturesResources.OrderingClause))
End Sub
<Fact(Skip:="https://github.com/dotnet/roslyn/issues/1212"), WorkItem(1212)>
......@@ -5138,7 +5138,7 @@ End Class
Dim edits = GetTopEdits(src1, src2)
edits.VerifySemanticDiagnostics(
Diagnostic(RudeEditKind.AccessingCapturedVariableInLambda, "a", "a", "Select clause"))
Diagnostic(RudeEditKind.AccessingCapturedVariableInLambda, "a", "a", VBFeaturesResources.SelectClause))
End Sub
<Fact>
......@@ -5179,7 +5179,7 @@ End Class
"
Dim edits = GetTopEdits(src1, src2)
edits.VerifySemanticDiagnostics(
Diagnostic(RudeEditKind.AccessingCapturedVariableInLambda, "a", "a", "Select clause"))
Diagnostic(RudeEditKind.AccessingCapturedVariableInLambda, "a", "a", VBFeaturesResources.SelectClause))
End Sub
<Fact>
......@@ -5218,8 +5218,8 @@ End Class
"
Dim edits = GetTopEdits(src1, src2)
edits.VerifySemanticDiagnostics(
Diagnostic(RudeEditKind.AccessingCapturedVariableInLambda, "a", "a", "Select clause"),
Diagnostic(RudeEditKind.AccessingCapturedVariableInLambda, "a", "a", "lambda"))
Diagnostic(RudeEditKind.AccessingCapturedVariableInLambda, "a", "a", VBFeaturesResources.SelectClause),
Diagnostic(RudeEditKind.AccessingCapturedVariableInLambda, "a", "a", VBFeaturesResources.LambdaExpression))
End Sub
<Fact>
......@@ -5260,7 +5260,7 @@ End Class
"
Dim edits = GetTopEdits(src1, src2)
edits.VerifySemanticDiagnostics(
Diagnostic(RudeEditKind.NotAccessingCapturedVariableInLambda, "Select", "a", "Select clause"))
Diagnostic(RudeEditKind.NotAccessingCapturedVariableInLambda, "Select", "a", VBFeaturesResources.SelectClause))
End Sub
<Fact>
......@@ -5299,8 +5299,8 @@ End Class
"
Dim edits = GetTopEdits(src1, src2)
edits.VerifySemanticDiagnostics(
Diagnostic(RudeEditKind.NotAccessingCapturedVariableInLambda, "Select", "a", "Select clause"),
Diagnostic(RudeEditKind.NotAccessingCapturedVariableInLambda, "Function()", "a", "lambda"))
Diagnostic(RudeEditKind.NotAccessingCapturedVariableInLambda, "Select", "a", VBFeaturesResources.SelectClause),
Diagnostic(RudeEditKind.NotAccessingCapturedVariableInLambda, "Function()", "a", VBFeaturesResources.LambdaExpression))
End Sub
......
......@@ -69,6 +69,15 @@ internal class CSharpFeaturesResources {
}
}
/// <summary>
/// Looks up a localized string similar to attribute target.
/// </summary>
internal static string AttributeTarget {
get {
return ResourceManager.GetString("AttributeTarget", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Autoselect disabled due to possible explicitly named anonymous type member creation..
/// </summary>
......@@ -213,6 +222,15 @@ internal class CSharpFeaturesResources {
}
}
/// <summary>
/// Looks up a localized string similar to conversion operator.
/// </summary>
internal static string ConversionOperator {
get {
return ResourceManager.GetString("ConversionOperator", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to deprecated.
/// </summary>
......@@ -222,6 +240,15 @@ internal class CSharpFeaturesResources {
}
}
/// <summary>
/// Looks up a localized string similar to destructor.
/// </summary>
internal static string Destructor {
get {
return ResourceManager.GetString("Destructor", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Do not change this code. Put cleanup code in Dispose(bool disposing) above..
/// </summary>
......@@ -231,6 +258,15 @@ internal class CSharpFeaturesResources {
}
}
/// <summary>
/// Looks up a localized string similar to event field.
/// </summary>
internal static string EventField {
get {
return ResourceManager.GetString("EventField", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Generate explicit conversion operator in &apos;{0}&apos;.
/// </summary>
......@@ -303,6 +339,15 @@ internal class CSharpFeaturesResources {
}
}
/// <summary>
/// Looks up a localized string similar to global statement.
/// </summary>
internal static string GlobalStatement {
get {
return ResourceManager.GetString("GlobalStatement", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to groupby clause.
/// </summary>
......@@ -339,6 +384,33 @@ internal class CSharpFeaturesResources {
}
}
/// <summary>
/// Looks up a localized string similar to indexer.
/// </summary>
internal static string Indexer {
get {
return ResourceManager.GetString("Indexer", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to indexer getter.
/// </summary>
internal static string IndexerGetter {
get {
return ResourceManager.GetString("IndexerGetter", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to indexer setter.
/// </summary>
internal static string IndexerSetter {
get {
return ResourceManager.GetString("IndexerSetter", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Inline temporary variable.
/// </summary>
......@@ -537,6 +609,24 @@ internal class CSharpFeaturesResources {
}
}
/// <summary>
/// Looks up a localized string similar to property getter.
/// </summary>
internal static string PropertyGetter {
get {
return ResourceManager.GetString("PropertyGetter", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to property setter.
/// </summary>
internal static string PropertySetter {
get {
return ResourceManager.GetString("PropertySetter", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to query body.
/// </summary>
......@@ -726,6 +816,15 @@ internal class CSharpFeaturesResources {
}
}
/// <summary>
/// Looks up a localized string similar to struct.
/// </summary>
internal static string Struct {
get {
return ResourceManager.GetString("Struct", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to with #pragma directive.
/// </summary>
......@@ -789,6 +888,24 @@ internal class CSharpFeaturesResources {
}
}
/// <summary>
/// Looks up a localized string similar to using directive.
/// </summary>
internal static string UsingDirective {
get {
return ResourceManager.GetString("UsingDirective", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to using namespace.
/// </summary>
internal static string UsingNamespace {
get {
return ResourceManager.GetString("UsingNamespace", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to using statement.
/// </summary>
......
......@@ -300,6 +300,9 @@
<data name="UncommentTheFollowingIfFinalizerOverriddenTodo" xml:space="preserve">
<value>TODO: uncomment the following line if the finalizer is overridden above.</value>
</data>
<data name="RemoveUnnecessaryUsingsDiagnosticTitle" xml:space="preserve">
<value>Using directive is unnecessary.</value>
</data>
<data name="TryBlock" xml:space="preserve">
<value>try block</value>
</data>
......@@ -369,7 +372,44 @@
<data name="IntoClause" xml:space="preserve">
<value>into clause</value>
</data>
<data name="RemoveUnnecessaryUsingsDiagnosticTitle" xml:space="preserve">
<value>Using directive is unnecessary.</value>
<data name="GlobalStatement" xml:space="preserve">
<value>global statement</value>
</data>
<data name="UsingNamespace" xml:space="preserve">
<value>using namespace</value>
</data>
<data name="UsingDirective" xml:space="preserve">
<value>using directive</value>
</data>
<data name="Struct" xml:space="preserve">
<value>struct</value>
<comment>{Locked}</comment>
</data>
<data name="EventField" xml:space="preserve">
<value>event field</value>
</data>
<data name="ConversionOperator" xml:space="preserve">
<value>conversion operator</value>
</data>
<data name="Destructor" xml:space="preserve">
<value>destructor</value>
</data>
<data name="Indexer" xml:space="preserve">
<value>indexer</value>
</data>
<data name="PropertyGetter" xml:space="preserve">
<value>property getter</value>
</data>
<data name="IndexerGetter" xml:space="preserve">
<value>indexer getter</value>
</data>
<data name="PropertySetter" xml:space="preserve">
<value>property setter</value>
</data>
<data name="IndexerSetter" xml:space="preserve">
<value>indexer setter</value>
</data>
<data name="AttributeTarget" xml:space="preserve">
<value>attribute target</value>
</data>
</root>
\ No newline at end of file
......@@ -771,4 +771,67 @@ Do you want to continue?</value>
<data name="ErrorSourceIntelliSense" xml:space="preserve">
<value>IntelliSense Build</value>
</data>
<data name="Namespace" xml:space="preserve">
<value>namespace</value>
<comment>{Locked}</comment>
</data>
<data name="Class" xml:space="preserve">
<value>class</value>
<comment>{Locked}</comment>
</data>
<data name="Interface" xml:space="preserve">
<value>interface</value>
<comment>{Locked}</comment>
</data>
<data name="Enum" xml:space="preserve">
<value>enum</value>
<comment>{Locked}</comment>
</data>
<data name="EnumValue" xml:space="preserve">
<value>enum value</value>
</data>
<data name="Delegate" xml:space="preserve">
<value>delegate</value>
<comment>{Locked}</comment>
</data>
<data name="ConstField" xml:space="preserve">
<value>const field</value>
</data>
<data name="Field" xml:space="preserve">
<value>field</value>
</data>
<data name="Method" xml:space="preserve">
<value>method</value>
</data>
<data name="Operator" xml:space="preserve">
<value>operator</value>
</data>
<data name="Constructor" xml:space="preserve">
<value>constructor</value>
</data>
<data name="AutoProperty" xml:space="preserve">
<value>auto-property</value>
</data>
<data name="Property" xml:space="preserve">
<value>property</value>
</data>
<data name="Event" xml:space="preserve">
<value>event</value>
<comment>{Locked}</comment>
</data>
<data name="EventAccessor" xml:space="preserve">
<value>event accessor</value>
</data>
<data name="TypeConstraint" xml:space="preserve">
<value>type constraint</value>
</data>
<data name="TypeParameter" xml:space="preserve">
<value>type parameter</value>
</data>
<data name="Parameter" xml:space="preserve">
<value>parameter</value>
</data>
<data name="Attribute" xml:space="preserve">
<value>attribute</value>
</data>
</root>
\ No newline at end of file
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册