On Wed, Jun 06, 2007 at 08:53:10PM +0200, Stani's Python Editor wrote: > > Nicolas Chauvat wrote: > > On Wed, Jun 06, 2007 at 07:13:10PM +0100, Ali Afshar wrote: > >>> Presumably recognition of the beginnings of > >>> - a) python keywords > >>> - b) classes and functions defined earlier in this file? > >>> - c) in scope variables? > >> does c) include: d) imported modules > > > > For code-completion, I suppose astng[1] could be useful. > > > > 1: http://www.logilab.org/project/eid/856 > > > Hi Nicolas, > > How dependent/independent is this from the standard AST compiler or > PyPy? Is it more IDE friendly? Is it based on it or a total independent > implementation?
It is independent from PyPy. The above web page says: """ Python Abstract Syntax Tree New Generation The aim of this module is to provide a common base representation of python source code for projects such as pychecker, pyreverse, pylint... Well, actually the development of this library is essentialy governed by pylint's needs. It extends class defined in the compiler.ast [1] module with some additional methods and attributes. Instance attributes are added by a builder object, which can either generate extended ast (let's call them astng ;) by visiting an existant ast tree or by inspecting living object. Methods are added by monkey patching ast classes.Python Abstract Syntax Tree New Generation The aim of this module is to provide a common base representation of python source code for projects such as pychecker, pyreverse, pylint... Well, actually the development of this library is essentialy governed by pylint's needs. It extends class defined in the compiler.ast [1] module with some additional methods and attributes. Instance attributes are added by a builder object, which can either generate extended ast (let's call them astng ;) by visiting an existant ast tree or by inspecting living object. Methods are added by monkey patching ast classes. """ -- Nicolas Chauvat logilab.fr - services en informatique avancée et gestion de connaissances
