[Monodevelop-patches-list] r1909 - in trunk/MonoDevelop/Core/src/AddIns/BackendBindings/CSharpBinding: . Parser
commit-watcher at mono-cvs.ximian.com
commit-watcher at mono-cvs.ximian.com
Tue Jul 6 17:31:10 EDT 2004
Author: lluis
Date: 2004-07-06 17:31:10 -0400 (Tue, 06 Jul 2004)
New Revision: 1909
Modified:
trunk/MonoDevelop/Core/src/AddIns/BackendBindings/CSharpBinding/ChangeLog
trunk/MonoDevelop/Core/src/AddIns/BackendBindings/CSharpBinding/Parser/Resolver.cs
Log:
* Parser/Resolver.cs: When locating the inner or outer classes, get the
class from the parser service, since it has all type names resolved
(the one got from the compilation unit does not).
Modified: trunk/MonoDevelop/Core/src/AddIns/BackendBindings/CSharpBinding/ChangeLog
===================================================================
--- trunk/MonoDevelop/Core/src/AddIns/BackendBindings/CSharpBinding/ChangeLog 2004-07-06 03:08:51 UTC (rev 1908)
+++ trunk/MonoDevelop/Core/src/AddIns/BackendBindings/CSharpBinding/ChangeLog 2004-07-06 21:31:10 UTC (rev 1909)
@@ -1,3 +1,9 @@
+2004-07-07 Lluis Sanchez Gual <lluis at novell.com>
+
+ * Parser/Resolver.cs: When locating the inner or outer classes, get the
+ class from the parser service, since it has all type names resolved
+ (the one got from the compilation unit does not).
+
2004-07-05 Todd Berman <tberman at off.net>
* CSharpBindingExecutionManager.cs: removed.
Modified: trunk/MonoDevelop/Core/src/AddIns/BackendBindings/CSharpBinding/Parser/Resolver.cs
===================================================================
--- trunk/MonoDevelop/Core/src/AddIns/BackendBindings/CSharpBinding/Parser/Resolver.cs 2004-07-06 03:08:51 UTC (rev 1908)
+++ trunk/MonoDevelop/Core/src/AddIns/BackendBindings/CSharpBinding/Parser/Resolver.cs 2004-07-06 21:31:10 UTC (rev 1909)
@@ -795,14 +795,14 @@
return null;
}
if (curClass.InnerClasses == null) {
- return curClass;
+ return GetResolvedClass (curClass);
}
foreach (IClass c in curClass.InnerClasses) {
if (c != null && c.Region != null && c.Region.IsInside(caretLine, caretColumn)) {
return GetInnermostClass(c);
}
}
- return curClass;
+ return GetResolvedClass (curClass);
}
/// <remarks>
@@ -819,7 +819,7 @@
if (c != null && c.Region != null && c.Region.IsInside(caretLine, caretColumn)) {
if (c != GetInnermostClass()) {
GetOuterClasses(classes, c);
- classes.Add(c);
+ classes.Add(GetResolvedClass (c));
}
break;
}
@@ -836,13 +836,19 @@
if (c != null && c.Region != null && c.Region.IsInside(caretLine, caretColumn)) {
if (c != GetInnermostClass()) {
GetOuterClasses(classes, c);
- classes.Add(c);
+ classes.Add(GetResolvedClass (c));
}
break;
}
}
}
}
+
+ public IClass GetResolvedClass (IClass cls)
+ {
+ // Returns an IClass in which all type names have been properly resolved
+ return parserService.GetClass (project, cls.FullyQualifiedName);
+ }
public ArrayList IsAsResolve (IParserService parserService, string expression, int caretLine, int caretColumn, string fileName, string fileContent)
{
More information about the Monodevelop-patches-list
mailing list