Browse Source

Adjust SharpDevelop to NRefactory changes.

pull/45/merge
Daniel Grunwald 13 years ago
parent
commit
00e083ae5d
  1. 2
      src/AddIns/Analysis/UnitTesting/NUnit/NUnitTestClass.cs
  2. 2
      src/AddIns/Analysis/UnitTesting/NUnit/NUnitTestFramework.cs
  3. 4
      src/AddIns/Analysis/UnitTesting/NUnit/NUnitTestProject.cs
  4. 3
      src/AddIns/BackendBindings/CSharpBinding/Project/CSharpBinding.addin
  5. 6
      src/AddIns/BackendBindings/CSharpBinding/Project/Src/Completion/OverrideCompletionData.cs
  6. 2
      src/AddIns/BackendBindings/CSharpBinding/Project/Src/ExtensionMethods.cs
  7. 1
      src/AddIns/BackendBindings/CSharpBinding/Project/Src/Refactoring/CSharpSyntaxIssue.cs
  8. 1
      src/AddIns/BackendBindings/CSharpBinding/Project/Src/Refactoring/IssueManager.cs
  9. 2
      src/AddIns/BackendBindings/CSharpBinding/Project/Src/Refactoring/IssueOptions.xaml
  10. 1
      src/AddIns/BackendBindings/CSharpBinding/Project/Src/Refactoring/IssueOptionsViewModel.cs
  11. 4
      src/AddIns/BackendBindings/CSharpBinding/Tests/RegistrationTests.cs
  12. 2
      src/AddIns/DisplayBindings/AvalonEdit.AddIn/Src/QuickClassBrowser.cs
  13. 40
      src/Libraries/AvalonEdit/ICSharpCode.AvalonEdit/CodeCompletion/Images/CompletionImage.cs
  14. 2
      src/Main/Base/Project/Src/Gui/Dialogs/GotoDialog.cs
  15. 4
      src/Main/SharpDevelop/Dom/MemberModel.cs
  16. 2
      src/Main/SharpDevelop/Dom/TypeDefinitionModel.cs

2
src/AddIns/Analysis/UnitTesting/NUnit/NUnitTestClass.cs

@ -174,7 +174,7 @@ namespace ICSharpCode.UnitTesting
newOrUpdatedNestedTests.Add(nestedTestClass); newOrUpdatedNestedTests.Add(nestedTestClass);
} }
// Get methods (not operators etc.) // Get methods (not operators etc.)
foreach (IMethod method in typeDefinition.GetMethods(m => m.EntityType == EntityType.Method)) { foreach (IMethod method in typeDefinition.GetMethods(m => m.SymbolKind == SymbolKind.Method)) {
if (!NUnitTestFramework.IsTestMethod(method)) if (!NUnitTestFramework.IsTestMethod(method))
continue; continue;

2
src/AddIns/Analysis/UnitTesting/NUnit/NUnitTestFramework.cs

@ -38,7 +38,7 @@ namespace ICSharpCode.UnitTesting
public static bool IsTestMethod(IMethod method) public static bool IsTestMethod(IMethod method)
{ {
if (method == null || method.EntityType != EntityType.Method) if (method == null || method.SymbolKind != SymbolKind.Method)
return false; return false;
var testAttribute = testAttributeRef.Resolve(method.Compilation); var testAttribute = testAttributeRef.Resolve(method.Compilation);
var testCaseAttribute = testCaseAttributeRef.Resolve(method.Compilation); var testCaseAttribute = testCaseAttributeRef.Resolve(method.Compilation);

4
src/AddIns/Analysis/UnitTesting/NUnit/NUnitTestProject.cs

@ -74,9 +74,9 @@ namespace ICSharpCode.UnitTesting
{ {
if (c == null) if (c == null)
return null; return null;
if (entity.EntityType == EntityType.TypeDefinition) if (entity.SymbolKind == SymbolKind.TypeDefinition)
return c; return c;
else if (entity.EntityType == EntityType.Method) else if (entity.SymbolKind == SymbolKind.Method)
return c.FindTestMethod(entity.Name); return c.FindTestMethod(entity.Name);
else else
return null; return null;

3
src/AddIns/BackendBindings/CSharpBinding/Project/CSharpBinding.addin

@ -167,6 +167,7 @@
<Class class = "ICSharpCode.NRefactory.CSharp.Refactoring.CompareFloatWithEqualityOperatorIssue" /> <Class class = "ICSharpCode.NRefactory.CSharp.Refactoring.CompareFloatWithEqualityOperatorIssue" />
<Class class = "ICSharpCode.NRefactory.CSharp.Refactoring.ConditionalToNullCoalescingIssue" /> <Class class = "ICSharpCode.NRefactory.CSharp.Refactoring.ConditionalToNullCoalescingIssue" />
<Class class = "ICSharpCode.NRefactory.CSharp.Refactoring.ConstantConditionIssue" /> <Class class = "ICSharpCode.NRefactory.CSharp.Refactoring.ConstantConditionIssue" />
<Class class = "ICSharpCode.NRefactory.CSharp.Refactoring.CS0029InvalidConversionIssue" />
<Class class = "ICSharpCode.NRefactory.CSharp.Refactoring.CS0127ReturnMustNotBeFollowedByAnyExpression" /> <Class class = "ICSharpCode.NRefactory.CSharp.Refactoring.CS0127ReturnMustNotBeFollowedByAnyExpression" />
<Class class = "ICSharpCode.NRefactory.CSharp.Refactoring.DoubleNegationIssue" /> <Class class = "ICSharpCode.NRefactory.CSharp.Refactoring.DoubleNegationIssue" />
<Class class = "ICSharpCode.NRefactory.CSharp.Refactoring.DuplicateExpressionsInConditionsIssue" /> <Class class = "ICSharpCode.NRefactory.CSharp.Refactoring.DuplicateExpressionsInConditionsIssue" />
@ -175,7 +176,6 @@
<Class class = "ICSharpCode.NRefactory.CSharp.Refactoring.ExplicitConversionInForEachIssue" /> <Class class = "ICSharpCode.NRefactory.CSharp.Refactoring.ExplicitConversionInForEachIssue" />
<Class class = "ICSharpCode.NRefactory.CSharp.Refactoring.ExpressionIsAlwaysOfProvidedTypeIssue" /> <Class class = "ICSharpCode.NRefactory.CSharp.Refactoring.ExpressionIsAlwaysOfProvidedTypeIssue" />
<Class class = "ICSharpCode.NRefactory.CSharp.Refactoring.ExpressionIsNeverOfProvidedTypeIssue" /> <Class class = "ICSharpCode.NRefactory.CSharp.Refactoring.ExpressionIsNeverOfProvidedTypeIssue" />
<Class class = "ICSharpCode.NRefactory.CSharp.Refactoring.ExpressionOfCompatibleTypeCastIssue" />
<Class class = "ICSharpCode.NRefactory.CSharp.Refactoring.ForControlVariableNotModifiedIssue" /> <Class class = "ICSharpCode.NRefactory.CSharp.Refactoring.ForControlVariableNotModifiedIssue" />
<Class class = "ICSharpCode.NRefactory.CSharp.Refactoring.FormatStringIssue" /> <Class class = "ICSharpCode.NRefactory.CSharp.Refactoring.FormatStringIssue" />
<Class class = "ICSharpCode.NRefactory.CSharp.Refactoring.IdenticalConditionalBranchIssue" /> <Class class = "ICSharpCode.NRefactory.CSharp.Refactoring.IdenticalConditionalBranchIssue" />
@ -228,7 +228,6 @@
<Class class = "ICSharpCode.NRefactory.CSharp.Refactoring.UseBlockInsteadColonIssue" /> <Class class = "ICSharpCode.NRefactory.CSharp.Refactoring.UseBlockInsteadColonIssue" />
<Class class = "ICSharpCode.NRefactory.CSharp.Refactoring.UseVarKeywordIssue" /> <Class class = "ICSharpCode.NRefactory.CSharp.Refactoring.UseVarKeywordIssue" />
<Class class = "ICSharpCode.NRefactory.CSharp.Refactoring.ValueParameterUnusedIssue" /> <Class class = "ICSharpCode.NRefactory.CSharp.Refactoring.ValueParameterUnusedIssue" />
<Class class = "ICSharpCode.NRefactory.CSharp.Refactoring.VariableDeclaredInWideScopeIssue" />
</Path> </Path>
<Path path = "/SharpDevelop/ViewContent/TextEditor/C#/ContextActions"> <Path path = "/SharpDevelop/ViewContent/TextEditor/C#/ContextActions">

6
src/AddIns/BackendBindings/CSharpBinding/Project/Src/Completion/OverrideCompletionData.cs

@ -53,7 +53,7 @@ namespace CSharpBinding.Completion
if (!this.Entity.IsAbstract) { if (!this.Entity.IsAbstract) {
// modify body to call the base method // modify body to call the base method
if (this.Entity.EntityType == EntityType.Method) { if (this.Entity.SymbolKind == SymbolKind.Method) {
var baseCall = new BaseReferenceExpression().Invoke(this.Entity.Name, ParametersToExpressions(this.Entity)); var baseCall = new BaseReferenceExpression().Invoke(this.Entity.Name, ParametersToExpressions(this.Entity));
var body = entityDeclaration.GetChildByRole(Roles.Body); var body = entityDeclaration.GetChildByRole(Roles.Body);
body.Statements.Clear(); body.Statements.Clear();
@ -61,9 +61,9 @@ namespace CSharpBinding.Completion
body.Statements.Add(new ExpressionStatement(baseCall)); body.Statements.Add(new ExpressionStatement(baseCall));
else else
body.Statements.Add(new ReturnStatement(baseCall)); body.Statements.Add(new ReturnStatement(baseCall));
} else if (this.Entity.EntityType == EntityType.Indexer || this.Entity.EntityType == EntityType.Property) { } else if (this.Entity.SymbolKind == SymbolKind.Indexer || this.Entity.SymbolKind == SymbolKind.Property) {
Expression baseCall; Expression baseCall;
if (this.Entity.EntityType == EntityType.Indexer) if (this.Entity.SymbolKind == SymbolKind.Indexer)
baseCall = new BaseReferenceExpression().Indexer(ParametersToExpressions(this.Entity)); baseCall = new BaseReferenceExpression().Indexer(ParametersToExpressions(this.Entity));
else else
baseCall = new BaseReferenceExpression().Member(this.Entity.Name); baseCall = new BaseReferenceExpression().Member(this.Entity.Name);

2
src/AddIns/BackendBindings/CSharpBinding/Project/Src/ExtensionMethods.cs

@ -48,7 +48,7 @@ namespace CSharpBinding
if (parseInfo != null) if (parseInfo != null)
return parseInfo.GetResolver(compilation); return parseInfo.GetResolver(compilation);
else else
return new CSharpAstResolver(compilation, new SyntaxTree(), new CSharpUnresolvedFile(ec.FileName)); return new CSharpAstResolver(compilation, new SyntaxTree(), new CSharpUnresolvedFile { FileName = ec.FileName });
}); });
} }
} }

1
src/AddIns/BackendBindings/CSharpBinding/Project/Src/Refactoring/CSharpSyntaxIssue.cs

@ -8,6 +8,7 @@ using ICSharpCode.NRefactory;
using ICSharpCode.NRefactory.CSharp; using ICSharpCode.NRefactory.CSharp;
using ICSharpCode.NRefactory.CSharp.Refactoring; using ICSharpCode.NRefactory.CSharp.Refactoring;
using ICSharpCode.NRefactory.Editor; using ICSharpCode.NRefactory.Editor;
using ICSharpCode.NRefactory.Refactoring;
using ICSharpCode.NRefactory.TypeSystem; using ICSharpCode.NRefactory.TypeSystem;
namespace CSharpBinding.Refactoring namespace CSharpBinding.Refactoring

1
src/AddIns/BackendBindings/CSharpBinding/Project/Src/Refactoring/IssueManager.cs

@ -8,6 +8,7 @@ using System.Threading;
using System.Threading.Tasks; using System.Threading.Tasks;
using System.Windows; using System.Windows;
using System.Windows.Media; using System.Windows.Media;
using ICSharpCode.NRefactory.Refactoring;
using CSharpBinding.Parser; using CSharpBinding.Parser;
using ICSharpCode.Core; using ICSharpCode.Core;
using ICSharpCode.NRefactory; using ICSharpCode.NRefactory;

2
src/AddIns/BackendBindings/CSharpBinding/Project/Src/Refactoring/IssueOptions.xaml

@ -2,7 +2,7 @@
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:sd="http://icsharpcode.net/sharpdevelop/core" xmlns:sd="http://icsharpcode.net/sharpdevelop/core"
xmlns:nr="clr-namespace:ICSharpCode.NRefactory.CSharp;assembly=ICSharpCode.NRefactory.CSharp" xmlns:nr="clr-namespace:ICSharpCode.NRefactory.Refactoring;assembly=ICSharpCode.NRefactory"
xmlns:gui="clr-namespace:ICSharpCode.SharpDevelop.Gui;assembly=ICSharpCode.SharpDevelop"> xmlns:gui="clr-namespace:ICSharpCode.SharpDevelop.Gui;assembly=ICSharpCode.SharpDevelop">
<DockPanel> <DockPanel>
<!-- TODO: Translate --> <!-- TODO: Translate -->

1
src/AddIns/BackendBindings/CSharpBinding/Project/Src/Refactoring/IssueOptionsViewModel.cs

@ -4,6 +4,7 @@
using System; using System;
using System.ComponentModel; using System.ComponentModel;
using ICSharpCode.NRefactory.CSharp; using ICSharpCode.NRefactory.CSharp;
using ICSharpCode.NRefactory.Refactoring;
using ICSharpCode.SharpDevelop.Widgets; using ICSharpCode.SharpDevelop.Widgets;
namespace CSharpBinding.Refactoring namespace CSharpBinding.Refactoring

4
src/AddIns/BackendBindings/CSharpBinding/Tests/RegistrationTests.cs

@ -64,7 +64,9 @@ namespace CSharpBinding.Tests
[Test] [Test]
public void AllAreRegisteredIssueProvidersHaveAttribute() public void AllAreRegisteredIssueProvidersHaveAttribute()
{ {
Assert.IsTrue(registeredIssueProviders.All(t => t.GetCustomAttribute<IssueDescriptionAttribute>() != null)); foreach (var t in registeredIssueProviders) {
Assert.IsNotNull(t.GetCustomAttribute<IssueDescriptionAttribute>(), t.FullName);
}
} }
[Test] [Test]

2
src/AddIns/DisplayBindings/AvalonEdit.AddIn/Src/QuickClassBrowser.cs

@ -85,7 +85,7 @@ namespace ICSharpCode.AvalonEdit.AddIn
public int CompareTo(EntityItem other) public int CompareTo(EntityItem other)
{ {
int r = this.Entity.EntityType.CompareTo(other.Entity.EntityType); int r = this.Entity.SymbolKind.CompareTo(other.Entity.SymbolKind);
if (r != 0) if (r != 0)
return r; return r;
r = string.Compare(text, other.text, StringComparison.OrdinalIgnoreCase); r = string.Compare(text, other.text, StringComparison.OrdinalIgnoreCase);

40
src/Libraries/AvalonEdit/ICSharpCode.AvalonEdit/CodeCompletion/Images/CompletionImage.cs

@ -121,10 +121,10 @@ namespace ICSharpCode.AvalonEdit.CodeCompletion
{ {
if (entity == null) if (entity == null)
throw new ArgumentNullException("entity"); throw new ArgumentNullException("entity");
switch (entity.EntityType) { switch (entity.SymbolKind) {
case EntityType.TypeDefinition: case SymbolKind.TypeDefinition:
return GetCompletionImageForType(((ITypeDefinition)entity).Kind, entity.IsStatic); return GetCompletionImageForType(((ITypeDefinition)entity).Kind, entity.IsStatic);
case EntityType.Field: case SymbolKind.Field:
IField field = (IField)entity; IField field = (IField)entity;
if (field.IsConst) { if (field.IsConst) {
if (field.DeclaringTypeDefinition != null && field.DeclaringTypeDefinition.Kind == TypeKind.Enum) if (field.DeclaringTypeDefinition != null && field.DeclaringTypeDefinition.Kind == TypeKind.Enum)
@ -133,19 +133,19 @@ namespace ICSharpCode.AvalonEdit.CodeCompletion
return imageLiteral; return imageLiteral;
} }
return field.IsReadOnly ? imageFieldReadOnly : imageField; return field.IsReadOnly ? imageFieldReadOnly : imageField;
case EntityType.Method: case SymbolKind.Method:
IMethod method = (IMethod)entity; IMethod method = (IMethod)entity;
return method.IsOverridable ? imageVirtualMethod : imageMethod; return method.IsOverridable ? imageVirtualMethod : imageMethod;
case EntityType.Property: case SymbolKind.Property:
return imageProperty; return imageProperty;
case EntityType.Indexer: case SymbolKind.Indexer:
return imageIndexer; return imageIndexer;
case EntityType.Event: case SymbolKind.Event:
return imageEvent; return imageEvent;
case EntityType.Operator: case SymbolKind.Operator:
case EntityType.Destructor: case SymbolKind.Destructor:
return imageOperator; return imageOperator;
case EntityType.Constructor: case SymbolKind.Constructor:
return imageConstructor; return imageConstructor;
default: default:
return null; return null;
@ -160,10 +160,10 @@ namespace ICSharpCode.AvalonEdit.CodeCompletion
{ {
if (entity == null) if (entity == null)
throw new ArgumentNullException("entity"); throw new ArgumentNullException("entity");
switch (entity.EntityType) { switch (entity.SymbolKind) {
case EntityType.TypeDefinition: case SymbolKind.TypeDefinition:
return GetCompletionImageForType(((IUnresolvedTypeDefinition)entity).Kind, entity.IsStatic); return GetCompletionImageForType(((IUnresolvedTypeDefinition)entity).Kind, entity.IsStatic);
case EntityType.Field: case SymbolKind.Field:
IUnresolvedField field = (IUnresolvedField)entity; IUnresolvedField field = (IUnresolvedField)entity;
if (field.IsConst) { if (field.IsConst) {
if (field.DeclaringTypeDefinition != null && field.DeclaringTypeDefinition.Kind == TypeKind.Enum) if (field.DeclaringTypeDefinition != null && field.DeclaringTypeDefinition.Kind == TypeKind.Enum)
@ -172,19 +172,19 @@ namespace ICSharpCode.AvalonEdit.CodeCompletion
return imageLiteral; return imageLiteral;
} }
return field.IsReadOnly ? imageFieldReadOnly : imageField; return field.IsReadOnly ? imageFieldReadOnly : imageField;
case EntityType.Method: case SymbolKind.Method:
IUnresolvedMethod method = (IUnresolvedMethod)entity; IUnresolvedMethod method = (IUnresolvedMethod)entity;
return method.IsOverridable ? imageVirtualMethod : imageMethod; return method.IsOverridable ? imageVirtualMethod : imageMethod;
case EntityType.Property: case SymbolKind.Property:
return imageProperty; return imageProperty;
case EntityType.Indexer: case SymbolKind.Indexer:
return imageIndexer; return imageIndexer;
case EntityType.Event: case SymbolKind.Event:
return imageEvent; return imageEvent;
case EntityType.Operator: case SymbolKind.Operator:
case EntityType.Destructor: case SymbolKind.Destructor:
return imageOperator; return imageOperator;
case EntityType.Constructor: case SymbolKind.Constructor:
return imageConstructor; return imageConstructor;
default: default:
return null; return null;

2
src/Main/Base/Project/Src/Gui/Dialogs/GotoDialog.cs

@ -253,7 +253,7 @@ namespace ICSharpCode.SharpDevelop.Gui
AddAllMembersMatchingText(innerClass, text, inCurrentFile); AddAllMembersMatchingText(innerClass, text, inCurrentFile);
} }
foreach (IUnresolvedMember m in c.Members) { foreach (IUnresolvedMember m in c.Members) {
if (m.EntityType != EntityType.Constructor) { if (m.SymbolKind != SymbolKind.Constructor) {
AddItemIfMatchText(text, m, ClassBrowserIconService.GetIcon(m), inCurrentFile); AddItemIfMatchText(text, m, ClassBrowserIconService.GetIcon(m), inCurrentFile);
} }
} }

4
src/Main/SharpDevelop/Dom/MemberModel.cs

@ -54,8 +54,8 @@ namespace ICSharpCode.SharpDevelop.Dom
get { return member; } get { return member; }
} }
public EntityType EntityType { public SymbolKind SymbolKind {
get { return member.EntityType; } get { return member.SymbolKind; }
} }
public DomRegion Region { public DomRegion Region {

2
src/Main/SharpDevelop/Dom/TypeDefinitionModel.cs

@ -151,7 +151,7 @@ namespace ICSharpCode.SharpDevelop.Dom
static bool IsMatch(MemberModel memberModel, IUnresolvedMember newMember) static bool IsMatch(MemberModel memberModel, IUnresolvedMember newMember)
{ {
return memberModel.EntityType == newMember.EntityType && memberModel.Name == newMember.Name; return memberModel.SymbolKind == newMember.SymbolKind && memberModel.Name == newMember.Name;
} }
ModelCollectionChangedEventHandler<MemberModel> collectionChanged; ModelCollectionChangedEventHandler<MemberModel> collectionChanged;

Loading…
Cancel
Save