Browse Source

fixed build

git-svn-id: svn://svn.sharpdevelop.net/sharpdevelop/branches/vbnet@5804 1ccf3a8d-04fe-1044-b7c0-cef0b8235c61
pull/1/head
Siegfried Pammer 16 years ago
parent
commit
d9f98af73d
  1. 8
      src/AddIns/BackendBindings/Python/PythonBinding/Project/Src/NRefactoryToPythonConverter.cs
  2. 16
      src/Main/ICSharpCode.SharpDevelop.Dom/Project/Src/NRefactoryResolver/NRefactoryResolver.cs

8
src/AddIns/BackendBindings/Python/PythonBinding/Project/Src/NRefactoryToPythonConverter.cs

@ -800,6 +800,14 @@ namespace ICSharpCode.PythonBinding
return null; return null;
} }
public override object TrackedVisitMemberInitializerExpression(MemberInitializerExpression memberInitializerExpression, object data)
{
Append(memberInitializerExpression.Name);
Append(" = ");
memberInitializerExpression.Expression.AcceptVisitor(this, data);
return null;
}
/// <summary> /// <summary>
/// Adds a CodeMemberMethod to the current class being visited. /// Adds a CodeMemberMethod to the current class being visited.
/// </summary> /// </summary>

16
src/Main/ICSharpCode.SharpDevelop.Dom/Project/Src/NRefactoryResolver/NRefactoryResolver.cs

@ -815,13 +815,13 @@ namespace ICSharpCode.SharpDevelop.Dom.NRefactoryResolver
List<IMember> results = new List<IMember>(); List<IMember> results = new List<IMember>();
if (collectionInitializer != null) { if (collectionInitializer != null) {
ObjectCreateExpression oce = collectionInitializer.Parent as ObjectCreateExpression; ObjectCreateExpression oce = collectionInitializer.Parent as ObjectCreateExpression;
NamedArgumentExpression nae = collectionInitializer.Parent as NamedArgumentExpression; MemberInitializerExpression mie = collectionInitializer.Parent as MemberInitializerExpression;
if (oce != null && !oce.IsAnonymousType) { if (oce != null && !oce.IsAnonymousType) {
IReturnType resolvedType = TypeVisitor.CreateReturnType(oce.CreateType, this); IReturnType resolvedType = TypeVisitor.CreateReturnType(oce.CreateType, this);
ObjectInitializerCtrlSpaceInternal(results, resolvedType, out isCollectionInitializer); ObjectInitializerCtrlSpaceInternal(results, resolvedType, out isCollectionInitializer);
} }
else if (nae != null) { else if (mie != null) {
IMember member = ResolveNamedArgumentExpressionInObjectInitializer(nae); IMember member = ResolveMemberInitializerExpressionInObjectInitializer(mie);
if (member != null) { if (member != null) {
ObjectInitializerCtrlSpaceInternal(results, member.ReturnType, out isCollectionInitializer); ObjectInitializerCtrlSpaceInternal(results, member.ReturnType, out isCollectionInitializer);
} }
@ -830,11 +830,11 @@ namespace ICSharpCode.SharpDevelop.Dom.NRefactoryResolver
return results; return results;
} }
IMember ResolveNamedArgumentExpressionInObjectInitializer(NamedArgumentExpression nae) IMember ResolveMemberInitializerExpressionInObjectInitializer(MemberInitializerExpression mie)
{ {
CollectionInitializerExpression parentCI = nae.Parent as CollectionInitializerExpression; CollectionInitializerExpression parentCI = mie.Parent as CollectionInitializerExpression;
bool tmp; bool tmp;
return ObjectInitializerCtrlSpace(parentCI, out tmp).Find(m => IsSameName(m.Name, nae.Name)); return ObjectInitializerCtrlSpace(parentCI, out tmp).Find(m => IsSameName(m.Name, mie.Name));
} }
void ObjectInitializerCtrlSpaceInternal(List<IMember> results, IReturnType resolvedType, out bool isCollectionInitializer) void ObjectInitializerCtrlSpaceInternal(List<IMember> results, IReturnType resolvedType, out bool isCollectionInitializer)
@ -1402,8 +1402,8 @@ namespace ICSharpCode.SharpDevelop.Dom.NRefactoryResolver
ResolveResult rr = ResolveInternal((expr.Parent as AssignmentExpression).Left, ExpressionContext.Default); ResolveResult rr = ResolveInternal((expr.Parent as AssignmentExpression).Left, ExpressionContext.Default);
if (rr != null) if (rr != null)
return rr.ResolvedType; return rr.ResolvedType;
} else if (expr.Parent is NamedArgumentExpression) { } else if (expr.Parent is MemberInitializerExpression) {
IMember m = ResolveNamedArgumentExpressionInObjectInitializer((NamedArgumentExpression)expr.Parent); IMember m = ResolveMemberInitializerExpressionInObjectInitializer((MemberInitializerExpression)expr.Parent);
if (m != null) if (m != null)
return m.ReturnType; return m.ReturnType;
} else if (expr.Parent is CollectionInitializerExpression) { } else if (expr.Parent is CollectionInitializerExpression) {

Loading…
Cancel
Save