Skip to main content

A abstract syntax tree for Python with inference support.

Project description

drone.io Build Status

Astroid

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"

Project details


Release history Release notifications | RSS feed

This version

1.4.6

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

astroid-1.4.6.tar.gz (183.7 kB view details)

Uploaded Source

Built Distribution

astroid-1.4.6-py2.py3-none-any.whl (212.9 kB view details)

Uploaded Python 2 Python 3

File details

Details for the file astroid-1.4.6.tar.gz.

File metadata

  • Download URL: astroid-1.4.6.tar.gz
  • Upload date:
  • Size: 183.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for astroid-1.4.6.tar.gz
Algorithm Hash digest
SHA256 c304b70cb792dd361f918f662e3fb9bfe4a5d7b749f2e32d3ebcba26d4e4599f
MD5 6f7636a38991a42e06b56430a3fd03a6
BLAKE2b-256 2ac89f5b1d99a85f60d249658e7ebcedecb3660b84ed3cd2adf2e91133e966a6

See more details on using hashes here.

File details

Details for the file astroid-1.4.6-py2.py3-none-any.whl.

File metadata

File hashes

Hashes for astroid-1.4.6-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 e3676f68ac5173881104f26548d0a3bad154114ed0e058cdefb675eb548165b1
MD5 8cb4cbcc6140914c91c9368d561edd1c
BLAKE2b-256 db7e9c4075dd7e86622d7be4cf5c70b6de3ae94a9fe29f978754a5fdc6c0b87d

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page