From: Samuele P. <pe...@in...> - 2000-11-18 05:21:49
|
Hi. First I should apologize if my patch is a little bit confusing. I tried the last commited version of the patch that should allow to load = compiled python modules and get them as working modules in the interp (based on invocation of = moduleDictInit). Given my patch, the point where moduleInitDict is called is somehow = wrong. The point is that I have left createFromClass(String,InputStream) in the = code but this is no longer called and so createFromClass(String,Class) for = classes coming from sys.path. This make indeed sense: java classes are treated more symmetrically = indipendently from where they come as we wanted but so moduleInitDict is not called when supposed. Clearly = here we want to able to break the symmetry when this make sense and we are loading a compiled = module. The problem is that given the patch there is no clear, coherent point = where to put=20 moduleDictInit invocation. My (not deeply tested) suggestion to get the desired functionality is = not to use=20 moduleDictInit but simply to repeat the behaviour used when executing = compiled code outside of the interp: the interp when looking for x should try not only x.py and x$py.class = but also x$_PyInner.class and then in this last case create an instance , = getMain and execute the obtained code in the dict of a new module. Let me know...=20 I can experiment with this. regards, Samuele |