[IronPython] autocompletion (intellisense) for clr.AddReference

Dino Viehland dinov at microsoft.com
Fri Jan 7 23:02:30 CET 2011


Piotr wrote:
> import System.<TAB> - works
> 
> import System
> System.<TAB> works too. There's no ASCIIEncoding) but there's AppDomain
> for example and the list starts with AccessViolationException and ends with
> {} Web System.<TAB>Text.<TAB>ASCIIEncoding does work
> 
> but again
> import System.Text
> System.<TAB> does not work
> System.Text.<TAB> does not work either
> 
> (Can one debug it somehow?)

Yep, it can be debugged :)  You need to download the tools sources and install
the VS SDK though.  Then you can build,set the IronPythonTools project as the
startup project and tell it to launch devenv.exe using:

/rootsuffix Exp

As the command line option.  Then  set a breakpoint in DDG.cs in the

public override bool Walk(ImportStatement node)

method and launch.  We'll call that when we're analyzing the import.  In Walk 
we'll do:

var builtinRefs = ProjectState.GetReflectedNamespaces(impNode.Names, impNode.Names.Count > 1 && !String.IsNullOrEmpty(newName));

And this is around where something's going wrong, but I can't quite tell what 
and I'm not setup for debugging this at work anymore.

Basically we should be trying to get the namespace object associated with 
System and dotting through it to get each addition member.  But in the end
we should just return the System namespace back.



More information about the Ironpython-users mailing list