| Astroid |
| ======= |
| |
| .. image:: https://travis-ci.org/PyCQA/astroid.svg?branch=master |
| :target: https://travis-ci.org/PyCQA/astroid |
| |
| .. image:: https://ci.appveyor.com/api/projects/status/co3u42kunguhbh6l/branch/master?svg=true |
| :alt: AppVeyor Build Status |
| :target: https://ci.appveyor.com/project/PCManticore/astroid |
| |
| .. image:: https://coveralls.io/repos/github/PyCQA/astroid/badge.svg?branch=master |
| :target: https://coveralls.io/github/PyCQA/astroid?branch=master |
| |
| .. image:: https://readthedocs.org/projects/astroid/badge/?version=latest |
| :target: http://astroid.readthedocs.io/en/latest/?badge=latest |
| :alt: Documentation Status |
| |
| |
| |
| What's this? |
| ------------ |
| |
| 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 essentially |
| governed by pylint's needs. It used to be called logilab-astng. |
| |
| It provides a compatible representation which comes from the `_ast` |
| module. It rebuilds the tree generated by the builtin _ast module by |
| recursively walking down the AST and building an extended ast. The new |
| node classes have additional methods and attributes for different |
| usages. They include some support for static inference and local name |
| scopes. Furthermore, astroid builds partial trees by inspecting living |
| objects. |
| |
| Main modules are: |
| |
| * `bases`, `node_classses` and `scoped_nodes` contain the classes for the |
| different type of nodes of the tree. |
| |
| * the `manager` contains a high level object to get astroid trees from |
| source files and living objects. It maintains a cache of previously |
| constructed tree for quick access. |
| |
| |
| Installation |
| ------------ |
| |
| Extract the tarball, jump into the created directory and run:: |
| |
| python setup.py install |
| |
| For installation options, see:: |
| |
| python setup.py install --help |
| |
| |
| If you have any questions, please mail the code-quality@python.org |
| mailing list for support. See |
| http://mail.python.org/mailman/listinfo/code-quality for subscription |
| information and archives. You may find older archives at |
| http://lists.logilab.org/mailman/listinfo/python-projects . |
| |
| Python Versions |
| --------------- |
| |
| astroid is compatible with Python 2.7 as well as 3.3 and later. astroid uses |
| the same code base for both Python versions, using six. |
| |
| Test |
| ---- |
| |
| Tests are in the 'test' subdirectory. To launch the whole tests suite |
| at once, you can use unittest discover:: |
| |
| python -m unittest discover -p "unittest*.py" |