[svn] r6547: nemerle/trunk/ncc: external/LibrariesLoader.n hierarchy/NamespaceTree.n typing/Typer.n

VladD2 svnadmin at nemerle.org
Thu Aug 17 14:53:57 CEST 2006


Log:
Ignore case in comparison of string prefix (for completion).

Author: VladD2
Date: Thu Aug 17 14:53:50 2006
New Revision: 6547

Modified:
   nemerle/trunk/ncc/external/LibrariesLoader.n
   nemerle/trunk/ncc/hierarchy/NamespaceTree.n
   nemerle/trunk/ncc/typing/Typer.n

Modified: nemerle/trunk/ncc/external/LibrariesLoader.n
==============================================================================
--- nemerle/trunk/ncc/external/LibrariesLoader.n	(original)
+++ nemerle/trunk/ncc/external/LibrariesLoader.n	Thu Aug 17 14:53:50 2006
@@ -149,7 +149,7 @@
       if (for_completion) {
         mutable acc = [];
         foreach (ex in _extension_methods.Keys)
-          when (ex.StartsWith (name))
+          when (ex.StartsWith (name, System.StringComparison.InvariantCultureIgnoreCase))
             acc += GetExtensionMethods (ex, env, false);
         acc
       }

Modified: nemerle/trunk/ncc/hierarchy/NamespaceTree.n
==============================================================================
--- nemerle/trunk/ncc/hierarchy/NamespaceTree.n	(original)
+++ nemerle/trunk/ncc/hierarchy/NamespaceTree.n	Thu Aug 17 14:53:50 2006
@@ -315,7 +315,7 @@
           def node = Path (pref);
           if (node.children != null)
             node.children.Fold ([], fun (name, node, acc) {
-              if (name.StartsWith (mem_name))
+              if (name.StartsWith (mem_name, System.StringComparison.InvariantCultureIgnoreCase))
                 make_list (node.Value, node) + acc
               else acc
             })
@@ -391,7 +391,7 @@
       #pragma warning disable 10003
 
       [System.Runtime.InteropServices.ComVisible(false)]
-      [DebuggerDisplay("NamespaceTree.Node: '{Name}'")]
+      [DebuggerDisplay("NamespaceTree.Node: '{FullName}'")]
       private class NodeDebugDisplayHelper
       {
         public this (node : NamespaceTree.Node) { _node = node; }
@@ -399,7 +399,7 @@
         [DebuggerBrowsable(DebuggerBrowsableState.Never)]
         _node : NamespaceTree.Node;
 
-        public Name : string { get { _node.GetDisplayName () } }
+        public FullName : string { get { _node.GetDisplayName () } }
 
         public Children : array [NamespaceTree.Node]
         {

Modified: nemerle/trunk/ncc/typing/Typer.n
==============================================================================
--- nemerle/trunk/ncc/typing/Typer.n	(original)
+++ nemerle/trunk/ncc/typing/Typer.n	Thu Aug 17 14:53:50 2006
@@ -1442,7 +1442,8 @@
           elems.Add(Elem.Overloads (overloads));
           
           // find locals
-          foreach ((name, local) when name.Id.StartsWith (prefix) in local_context.GetLocals ())
+          def optins = System.StringComparison.InvariantCultureIgnoreCase;
+          foreach ((name, local) when name.Id.StartsWith (prefix, optins) in local_context.GetLocals ())
             elems.Add(Elem.Local (local));
 
           // find namespaces and types
@@ -1450,7 +1451,7 @@
           def find_namespaces (ns)
           {
             foreach ((name, node) in ns.Children.KeyValuePairs)
-              when (!(node.Value is NamespaceTree.TypeInfoCache.No) && name.StartsWith (prefix))
+              when (!(node.Value is NamespaceTree.TypeInfoCache.No) && name.StartsWith (prefix, optins))
                 elems.Add(Elem.Node (name, node));
           }
 



More information about the svn mailing list