components/python/astroid/astroid.3
author Mike Sullivan <Mike.Sullivan@Oracle.COM>
Sat, 30 Jul 2016 09:46:03 -0700
changeset 6533 de74a7d8f718
parent 4814 c673d998018a
permissions -rw-r--r--
Added tag s12-105.1 for changeset 611180e7af31
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
4814
c673d998018a PSARC 2015/302 astroid 1.3.6
Yiteng Zhang <yiteng.zhang@oracle.com>
parents:
diff changeset
     1
'\" te
c673d998018a PSARC 2015/302 astroid 1.3.6
Yiteng Zhang <yiteng.zhang@oracle.com>
parents:
diff changeset
     2
.\"
c673d998018a PSARC 2015/302 astroid 1.3.6
Yiteng Zhang <yiteng.zhang@oracle.com>
parents:
diff changeset
     3
.\" Copyright (c) 2009, 2015, Oracle and/or its affiliates. All rights reserved.
c673d998018a PSARC 2015/302 astroid 1.3.6
Yiteng Zhang <yiteng.zhang@oracle.com>
parents:
diff changeset
     4
.\"
c673d998018a PSARC 2015/302 astroid 1.3.6
Yiteng Zhang <yiteng.zhang@oracle.com>
parents:
diff changeset
     5
.\" astroid.3
c673d998018a PSARC 2015/302 astroid 1.3.6
Yiteng Zhang <yiteng.zhang@oracle.com>
parents:
diff changeset
     6
.\"
c673d998018a PSARC 2015/302 astroid 1.3.6
Yiteng Zhang <yiteng.zhang@oracle.com>
parents:
diff changeset
     7
.TH astroid 3 "28 Apr 2015" "astroid 1.3.6"
c673d998018a PSARC 2015/302 astroid 1.3.6
Yiteng Zhang <yiteng.zhang@oracle.com>
parents:
diff changeset
     8
.SH NAME
c673d998018a PSARC 2015/302 astroid 1.3.6
Yiteng Zhang <yiteng.zhang@oracle.com>
parents:
diff changeset
     9
astroid \- Python Abstract Syntax Tree New Generation
c673d998018a PSARC 2015/302 astroid 1.3.6
Yiteng Zhang <yiteng.zhang@oracle.com>
parents:
diff changeset
    10
.SH DESCRIPTION
c673d998018a PSARC 2015/302 astroid 1.3.6
Yiteng Zhang <yiteng.zhang@oracle.com>
parents:
diff changeset
    11
c673d998018a PSARC 2015/302 astroid 1.3.6
Yiteng Zhang <yiteng.zhang@oracle.com>
parents:
diff changeset
    12
The aim of this module is to provide a common base representation of 
c673d998018a PSARC 2015/302 astroid 1.3.6
Yiteng Zhang <yiteng.zhang@oracle.com>
parents:
diff changeset
    13
python source code for projects such as pychecker, pyreverse, pylint.
c673d998018a PSARC 2015/302 astroid 1.3.6
Yiteng Zhang <yiteng.zhang@oracle.com>
parents:
diff changeset
    14
It used to be called logilab-astng.
c673d998018a PSARC 2015/302 astroid 1.3.6
Yiteng Zhang <yiteng.zhang@oracle.com>
parents:
diff changeset
    15
c673d998018a PSARC 2015/302 astroid 1.3.6
Yiteng Zhang <yiteng.zhang@oracle.com>
parents:
diff changeset
    16
.LP
c673d998018a PSARC 2015/302 astroid 1.3.6
Yiteng Zhang <yiteng.zhang@oracle.com>
parents:
diff changeset
    17
It provides a compatible representation which comes from the `_ast` module.
c673d998018a PSARC 2015/302 astroid 1.3.6
Yiteng Zhang <yiteng.zhang@oracle.com>
parents:
diff changeset
    18
It rebuilds the tree generated by the builtin _ast module by recursively
c673d998018a PSARC 2015/302 astroid 1.3.6
Yiteng Zhang <yiteng.zhang@oracle.com>
parents:
diff changeset
    19
walking down the AST and building an extended ast. The new node classes
c673d998018a PSARC 2015/302 astroid 1.3.6
Yiteng Zhang <yiteng.zhang@oracle.com>
parents:
diff changeset
    20
have additional methods and attributes for different usages.
c673d998018a PSARC 2015/302 astroid 1.3.6
Yiteng Zhang <yiteng.zhang@oracle.com>
parents:
diff changeset
    21
They include some support for static inference and local name scopes.
c673d998018a PSARC 2015/302 astroid 1.3.6
Yiteng Zhang <yiteng.zhang@oracle.com>
parents:
diff changeset
    22
Furthermore, astroid builds partial trees by inspecting living objects.
c673d998018a PSARC 2015/302 astroid 1.3.6
Yiteng Zhang <yiteng.zhang@oracle.com>
parents:
diff changeset
    23
c673d998018a PSARC 2015/302 astroid 1.3.6
Yiteng Zhang <yiteng.zhang@oracle.com>
parents:
diff changeset
    24
.LP
c673d998018a PSARC 2015/302 astroid 1.3.6
Yiteng Zhang <yiteng.zhang@oracle.com>
parents:
diff changeset
    25
Main modules are:
c673d998018a PSARC 2015/302 astroid 1.3.6
Yiteng Zhang <yiteng.zhang@oracle.com>
parents:
diff changeset
    26
.LP
c673d998018a PSARC 2015/302 astroid 1.3.6
Yiteng Zhang <yiteng.zhang@oracle.com>
parents:
diff changeset
    27
c673d998018a PSARC 2015/302 astroid 1.3.6
Yiteng Zhang <yiteng.zhang@oracle.com>
parents:
diff changeset
    28
* `bases`, `node_classses` and `scoped_nodes` contain the classes for the different type of nodes of the tree.
c673d998018a PSARC 2015/302 astroid 1.3.6
Yiteng Zhang <yiteng.zhang@oracle.com>
parents:
diff changeset
    29
c673d998018a PSARC 2015/302 astroid 1.3.6
Yiteng Zhang <yiteng.zhang@oracle.com>
parents:
diff changeset
    30
.LP
c673d998018a PSARC 2015/302 astroid 1.3.6
Yiteng Zhang <yiteng.zhang@oracle.com>
parents:
diff changeset
    31
* 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
c673d998018a PSARC 2015/302 astroid 1.3.6
Yiteng Zhang <yiteng.zhang@oracle.com>
parents:
diff changeset
    32
c673d998018a PSARC 2015/302 astroid 1.3.6
Yiteng Zhang <yiteng.zhang@oracle.com>
parents:
diff changeset
    33
.LP
c673d998018a PSARC 2015/302 astroid 1.3.6
Yiteng Zhang <yiteng.zhang@oracle.com>
parents:
diff changeset
    34
c673d998018a PSARC 2015/302 astroid 1.3.6
Yiteng Zhang <yiteng.zhang@oracle.com>
parents:
diff changeset
    35
.SH FILES
c673d998018a PSARC 2015/302 astroid 1.3.6
Yiteng Zhang <yiteng.zhang@oracle.com>
parents:
diff changeset
    36
.TP 2.2i
c673d998018a PSARC 2015/302 astroid 1.3.6
Yiteng Zhang <yiteng.zhang@oracle.com>
parents:
diff changeset
    37
.B /usr/lib/python2.7/vendor-packages/astroid
c673d998018a PSARC 2015/302 astroid 1.3.6
Yiteng Zhang <yiteng.zhang@oracle.com>
parents:
diff changeset
    38
astroid python modules
c673d998018a PSARC 2015/302 astroid 1.3.6
Yiteng Zhang <yiteng.zhang@oracle.com>
parents:
diff changeset
    39
c673d998018a PSARC 2015/302 astroid 1.3.6
Yiteng Zhang <yiteng.zhang@oracle.com>
parents:
diff changeset
    40
.SH AUTHORS
c673d998018a PSARC 2015/302 astroid 1.3.6
Yiteng Zhang <yiteng.zhang@oracle.com>
parents:
diff changeset
    41
Sylvain Thenault ([email protected])
c673d998018a PSARC 2015/302 astroid 1.3.6
Yiteng Zhang <yiteng.zhang@oracle.com>
parents:
diff changeset
    42
c673d998018a PSARC 2015/302 astroid 1.3.6
Yiteng Zhang <yiteng.zhang@oracle.com>
parents:
diff changeset
    43
.SH SUPPORT
c673d998018a PSARC 2015/302 astroid 1.3.6
Yiteng Zhang <yiteng.zhang@oracle.com>
parents:
diff changeset
    44
If you have any questions, please mail the
c673d998018a PSARC 2015/302 astroid 1.3.6
Yiteng Zhang <yiteng.zhang@oracle.com>
parents:
diff changeset
    45
[email protected] mailing list for support. See
c673d998018a PSARC 2015/302 astroid 1.3.6
Yiteng Zhang <yiteng.zhang@oracle.com>
parents:
diff changeset
    46
http://mail.python.org/mailman/listinfo/code-quality for
c673d998018a PSARC 2015/302 astroid 1.3.6
Yiteng Zhang <yiteng.zhang@oracle.com>
parents:
diff changeset
    47
subscription information and archives. You may find older archives at
c673d998018a PSARC 2015/302 astroid 1.3.6
Yiteng Zhang <yiteng.zhang@oracle.com>
parents:
diff changeset
    48
http://lists.logilab.org/mailman/listinfo/python-projects .
c673d998018a PSARC 2015/302 astroid 1.3.6
Yiteng Zhang <yiteng.zhang@oracle.com>
parents:
diff changeset
    49
c673d998018a PSARC 2015/302 astroid 1.3.6
Yiteng Zhang <yiteng.zhang@oracle.com>
parents:
diff changeset
    50
c673d998018a PSARC 2015/302 astroid 1.3.6
Yiteng Zhang <yiteng.zhang@oracle.com>
parents:
diff changeset
    51
.SH SEE ALSO
c673d998018a PSARC 2015/302 astroid 1.3.6
Yiteng Zhang <yiteng.zhang@oracle.com>
parents:
diff changeset
    52
.IR logilab-common (3),
c673d998018a PSARC 2015/302 astroid 1.3.6
Yiteng Zhang <yiteng.zhang@oracle.com>
parents:
diff changeset
    53
.IR pylint (1)