Browse Source

Fixed some issues in the context actions.

newNRvisualizers
Mike Krüger 14 years ago
parent
commit
2c2f30d563
  1. 2
      ICSharpCode.NRefactory/CSharp/Refactoring/ContextAction/AddAnotherAccessor.cs
  2. 2
      ICSharpCode.NRefactory/CSharp/Refactoring/ContextAction/CheckIfParameterIsNull.cs
  3. 2
      ICSharpCode.NRefactory/CSharp/Refactoring/ContextAction/CreateEventInvocator.cs
  4. 4
      ICSharpCode.NRefactory/CSharp/Refactoring/ContextAction/GenerateSwitchLabels.cs
  5. 7
      ICSharpCode.NRefactory/CSharp/Refactoring/RefactoringContext.cs

2
ICSharpCode.NRefactory/CSharp/Refactoring/ContextAction/AddAnotherAccessor.cs

@ -75,7 +75,7 @@ namespace ICSharpCode.NRefactory.CSharp.Refactoring @@ -75,7 +75,7 @@ namespace ICSharpCode.NRefactory.CSharp.Refactoring
return new ReturnStatement (new IdentifierExpression (field.Name));
}
return new ThrowStatement (new ObjectCreateExpression (context.CreateShortType ("System.NotImplementedException")));
return new ThrowStatement (new ObjectCreateExpression (context.CreateShortType ("System", "NotImplementedException")));
}
static PropertyDeclaration GetPropertyDeclaration (RefactoringContext context)

2
ICSharpCode.NRefactory/CSharp/Refactoring/ContextAction/CheckIfParameterIsNull.cs

@ -60,7 +60,7 @@ namespace ICSharpCode.NRefactory.CSharp.Refactoring @@ -60,7 +60,7 @@ namespace ICSharpCode.NRefactory.CSharp.Refactoring
var statement = new IfElseStatement () {
Condition = new BinaryOperatorExpression (new IdentifierExpression (parameter.Name), BinaryOperatorType.Equality, new NullReferenceExpression ()),
TrueStatement = new ThrowStatement (new ObjectCreateExpression (context.CreateShortType ("System.ArgumentNullException"), new PrimitiveExpression (parameter.Name)))
TrueStatement = new ThrowStatement (new ObjectCreateExpression (context.CreateShortType ("System", "ArgumentNullException"), new PrimitiveExpression (parameter.Name)))
};
using (var script = context.StartScript ()) {

2
ICSharpCode.NRefactory/CSharp/Refactoring/ContextAction/CreateEventInvocator.cs

@ -72,7 +72,7 @@ namespace ICSharpCode.NRefactory.CSharp.Refactoring @@ -72,7 +72,7 @@ namespace ICSharpCode.NRefactory.CSharp.Refactoring
var methodDeclaration = new MethodDeclaration () {
Name = "On" + initializer.Name,
ReturnType = context.CreateShortType (eventDeclaration.ReturnType),
ReturnType = new PrimitiveType ("void"),
Modifiers = ICSharpCode.NRefactory.CSharp.Modifiers.Protected | ICSharpCode.NRefactory.CSharp.Modifiers.Virtual,
Body = new BlockStatement () {
new VariableDeclarationStatement (context.CreateShortType (eventDeclaration.ReturnType), handlerName, new MemberReferenceExpression (new ThisReferenceExpression (), initializer.Name)),

4
ICSharpCode.NRefactory/CSharp/Refactoring/ContextAction/GenerateSwitchLabels.cs

@ -49,7 +49,7 @@ namespace ICSharpCode.NRefactory.CSharp.Refactoring @@ -49,7 +49,7 @@ namespace ICSharpCode.NRefactory.CSharp.Refactoring
var type = result.Type;
var newSwitch = (SwitchStatement)switchStatement.Clone ();
var target = new TypeReferenceExpression (context.CreateShortType (result.Type.ConvertToAstType ()));
var target = new TypeReferenceExpression (context.CreateShortType (result.Type.Resolve (context.TypeResolveContext)));
foreach (var field in type.GetFields (context.TypeResolveContext)) {
if (field.IsSynthetic || !field.IsConst)
continue;
@ -68,7 +68,7 @@ namespace ICSharpCode.NRefactory.CSharp.Refactoring @@ -68,7 +68,7 @@ namespace ICSharpCode.NRefactory.CSharp.Refactoring
new CaseLabel ()
},
Statements = {
new ThrowStatement (new ObjectCreateExpression (context.CreateShortType ("System.ArgumentOutOfRangeException")))
new ThrowStatement (new ObjectCreateExpression (context.CreateShortType ("System", "ArgumentOutOfRangeException")))
}
});

7
ICSharpCode.NRefactory/CSharp/Refactoring/RefactoringContext.cs

@ -59,11 +59,14 @@ namespace ICSharpCode.NRefactory.CSharp.Refactoring @@ -59,11 +59,14 @@ namespace ICSharpCode.NRefactory.CSharp.Refactoring
public abstract AstType CreateShortType (IType fullType);
public abstract AstType CreateShortType (string fullTypeName);
public AstType CreateShortType (string ns, string typeName)
{
return CreateShortType (TypeResolveContext.GetTypeDefinition (ns, typeName, 0, StringComparer.Ordinal));
}
public virtual AstType CreateShortType (AstType fullType)
{
return CreateShortType (Resolve (fullType).Type);
return CreateShortType (Resolve (fullType).Type.Resolve (TypeResolveContext));
}
// public abstract IType GetDefinition (AstType resolvedType);

Loading…
Cancel
Save