[svn] r6606: vs-plugin/trunk: Nemerle.Compiler.Utils/Nemerle.Completion2/CodeModel/Project.MakeCompletionL...

VladD2 svnadmin at nemerle.org
Sun Sep 3 04:35:07 CEST 2006


Log:
1. Fix filter of completion list.

Author: VladD2
Date: Sun Sep  3 04:35:01 2006
New Revision: 6606

Modified:
   vs-plugin/trunk/Nemerle.Compiler.Utils/Nemerle.Completion2/CodeModel/Project.MakeCompletionList.n
   vs-plugin/trunk/Nemerle.VsIntegration/NemerleLanguage.cs

Modified: vs-plugin/trunk/Nemerle.Compiler.Utils/Nemerle.Completion2/CodeModel/Project.MakeCompletionList.n
==============================================================================
--- vs-plugin/trunk/Nemerle.Compiler.Utils/Nemerle.Completion2/CodeModel/Project.MakeCompletionList.n	(original)
+++ vs-plugin/trunk/Nemerle.Compiler.Utils/Nemerle.Completion2/CodeModel/Project.MakeCompletionList.n	Sun Sep  3 04:35:01 2006
@@ -20,15 +20,19 @@
 
       def add(name, value)
       {
+        unless (IsSpecialName(name))
+        {
         def overloads = overloadsMap.GetValue(name, () => SCG.List());
         overloads.Add(value);
       }
+      }
 
       def addMember(member : IMember)
       {
-        when (IsValid(member))
-          //Fixme: member.GetName() don't compile.
-          add (member.GetName(), Elem.Member(member))
+        def name = member.GetName();
+        def res = IsValid(name);
+        when (res)
+          add (name, Elem.Member(member))
       }
 
       foreach (elem in result.Elems)
@@ -85,11 +89,10 @@
       completionList.ToArray()
     }
 
-    static IsValid(member : IMember) : bool
+    static IsValid(name : string) : bool
     {
-      def name = member.Name.ToString();
       !IsPropertyAccessor(name) && !IsEventAccessor(name)
-        && !IsOperator(name) && !IsSpecialName(name)
+        && !IsOperator(name)
     }
 
     static IsPropertyAccessor(name : string) : bool
@@ -104,12 +107,12 @@
 
     static IsOperator(name : string) : bool
     {
-      name.StartsWith("op_") : bool
+      name.StartsWith("op_")
     }
 
     static IsSpecialName(name : string) : bool
     {
-      name.StartsWith("value__")
+      name.StartsWith("value__") || name.StartsWith("_N_")
     }
   } // end class Project
 } // end namespace

Modified: vs-plugin/trunk/Nemerle.VsIntegration/NemerleLanguage.cs
==============================================================================
--- vs-plugin/trunk/Nemerle.VsIntegration/NemerleLanguage.cs	(original)
+++ vs-plugin/trunk/Nemerle.VsIntegration/NemerleLanguage.cs	Sun Sep  3 04:35:01 2006
@@ -260,11 +260,12 @@
 
 			if (overloads.Length > 0)
 			{
-				foreach (object overload in overloads)
-					Trace.WriteLine("#    " + overload);
+				//foreach (object overload in overloads)
+				//	Trace.WriteLine("#    " + overload);
 
-				ProjectInfo projectInfo = ProjectInfo.FindProject(request.FileName);
-				return new NemerleAuthoringScope(projectInfo, (NemerleAuthoringSink)request.Sink, overloads);
+				return new NemerleAuthoringScope(
+					ProjectInfo.FindProject(request.FileName),
+					(NemerleAuthoringSink)request.Sink, overloads);
 			}
 
 			Trace.WriteLine("### RunCompletionEngine() return empty list!");



More information about the svn mailing list