src/eric7/Documentation/Source/eric7.Plugins.CheckerPlugins.CodeStyleChecker.Annotations.AnnotationsFunctionVisitor.html

Tue, 23 May 2023 15:58:50 +0200

author
Detlev Offenbach <detlev@die-offenbachs.de>
date
Tue, 23 May 2023 15:58:50 +0200
branch
eric7
changeset 10058
5d965939ab85
parent 9295
d14096c04126
child 10479
856476537696
permissions
-rw-r--r--

Code Style Checker
- Updated the annotations checker to support more cases.

8372
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
1 <!DOCTYPE html>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
2 <html><head>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
3 <title>eric7.Plugins.CheckerPlugins.CodeStyleChecker.Annotations.AnnotationsFunctionVisitor</title>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
4 <meta charset="UTF-8">
8596
d64760b2da50 Documentation Generator: streamlined the code to use an external style sheet file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8372
diff changeset
5 <link rel="stylesheet" href="styles.css">
8372
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
6 </head>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
7 <body>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
8 <a NAME="top" ID="top"></a>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
9 <h1>eric7.Plugins.CheckerPlugins.CodeStyleChecker.Annotations.AnnotationsFunctionVisitor</h1>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
10
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
11 <p>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
12 Module implementing a node visitor for function type annotations.
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
13 </p>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
14 <h3>Global Attributes</h3>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
15
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
16 <table>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
17 <tr><td>AST_ARG_TYPES</td></tr>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
18 </table>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
19 <h3>Classes</h3>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
20
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
21 <table>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
22
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
23 <tr>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
24 <td><a href="#Argument">Argument</a></td>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
25 <td>Class representing a function argument.</td>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
26 </tr>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
27 <tr>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
28 <td><a href="#Function">Function</a></td>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
29 <td>Class representing a function.</td>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
30 </tr>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
31 <tr>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
32 <td><a href="#FunctionVisitor">FunctionVisitor</a></td>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
33 <td>Class implementing a node visitor to check function annotations.</td>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
34 </tr>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
35 <tr>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
36 <td><a href="#ReturnVisitor">ReturnVisitor</a></td>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
37 <td>Class implementing a node visitor to check the return statements of a function node.</td>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
38 </tr>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
39 </table>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
40 <h3>Functions</h3>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
41
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
42 <table>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
43 <tr><td>None</td></tr>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
44 </table>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
45 <hr />
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
46 <hr />
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
47 <a NAME="Argument" ID="Argument"></a>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
48 <h2>Argument</h2>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
49
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
50 <p>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
51 Class representing a function argument.
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
52 </p>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
53 <h3>Derived from</h3>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
54 None
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
55 <h3>Class Attributes</h3>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
56
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
57 <table>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
58 <tr><td>None</td></tr>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
59 </table>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
60 <h3>Class Methods</h3>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
61
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
62 <table>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
63
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
64 <tr>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
65 <td><a href="#Argument.fromNode">fromNode</a></td>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
66 <td>Class method to create an Argument object based on the given node.</td>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
67 </tr>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
68 </table>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
69 <h3>Methods</h3>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
70
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
71 <table>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
72
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
73 <tr>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
74 <td><a href="#Argument.__init__">Argument</a></td>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
75 <td>Constructor</td>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
76 </tr>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
77 </table>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
78 <h3>Static Methods</h3>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
79
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
80 <table>
9295
d14096c04126 Updated source documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9236
diff changeset
81
d14096c04126 Updated source documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9236
diff changeset
82 <tr>
d14096c04126 Updated source documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9236
diff changeset
83 <td><a href="#Argument._isAnnotatedAny">_isAnnotatedAny</a></td>
d14096c04126 Updated source documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9236
diff changeset
84 <td>Static method to check if the provided expression node is annotated with 'typing.Any'.</td>
d14096c04126 Updated source documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9236
diff changeset
85 </tr>
8372
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
86 </table>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
87
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
88 <a NAME="Argument.fromNode" ID="Argument.fromNode"></a>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
89 <h4>Argument.fromNode (class method)</h4>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
90 <b>fromNode</b>(<i>node, annotationTypeName</i>)
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
91
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
92 <p>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
93 Class method to create an Argument object based on the given node.
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
94 </p>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
95 <dl>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
96
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
97 <dt><i>node</i> (ast.arguments)</dt>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
98 <dd>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
99 reference to the node to be converted
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
100 </dd>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
101 <dt><i>annotationTypeName</i> (str)</dt>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
102 <dd>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
103 name of the annotation type
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
104 </dd>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
105 </dl>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
106 <dl>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
107 <dt>Return:</dt>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
108 <dd>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
109 Argument object
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
110 </dd>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
111 </dl>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
112 <dl>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
113 <dt>Return Type:</dt>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
114 <dd>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
115 Argument
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
116 </dd>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
117 </dl>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
118 <a NAME="Argument.__init__" ID="Argument.__init__"></a>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
119 <h4>Argument (Constructor)</h4>
10058
5d965939ab85 Code Style Checker
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9295
diff changeset
120 <b>Argument</b>(<i>argname, lineno, col_offset, annotationType, hasTypeAnnotation=False, hasTypeComment=False, isDynamicallyTyped=False, </i>)
8372
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
121
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
122 <p>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
123 Constructor
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
124 </p>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
125 <dl>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
126
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
127 <dt><i>argname</i> (str)</dt>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
128 <dd>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
129 name of the argument
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
130 </dd>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
131 <dt><i>lineno</i> (int)</dt>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
132 <dd>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
133 line number
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
134 </dd>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
135 <dt><i>col_offset</i> (int)</dt>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
136 <dd>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
137 column number
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
138 </dd>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
139 <dt><i>annotationType</i> (AnnotationType)</dt>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
140 <dd>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
141 type of annotation
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
142 </dd>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
143 <dt><i>hasTypeAnnotation</i> (bool (optional))</dt>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
144 <dd>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
145 flag indicating the presence of a type
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
146 annotation (defaults to False)
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
147 </dd>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
148 <dt><i>hasTypeComment</i> (bool (optional))</dt>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
149 <dd>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
150 flag indicating the presence of a type comment
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
151 (defaults to False)
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
152 </dd>
9295
d14096c04126 Updated source documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9236
diff changeset
153 <dt><i>isDynamicallyTyped</i> (bool (optional))</dt>
d14096c04126 Updated source documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9236
diff changeset
154 <dd>
d14096c04126 Updated source documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9236
diff changeset
155 flag indicating dynamic typing (defaults to False)
d14096c04126 Updated source documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9236
diff changeset
156 </dd>
d14096c04126 Updated source documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9236
diff changeset
157 </dl>
d14096c04126 Updated source documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9236
diff changeset
158 <a NAME="Argument._isAnnotatedAny" ID="Argument._isAnnotatedAny"></a>
d14096c04126 Updated source documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9236
diff changeset
159 <h4>Argument._isAnnotatedAny (static)</h4>
d14096c04126 Updated source documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9236
diff changeset
160 <b>_isAnnotatedAny</b>(<i></i>)
d14096c04126 Updated source documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9236
diff changeset
161
d14096c04126 Updated source documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9236
diff changeset
162 <p>
d14096c04126 Updated source documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9236
diff changeset
163 Static method to check if the provided expression node is annotated with
d14096c04126 Updated source documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9236
diff changeset
164 'typing.Any'.
d14096c04126 Updated source documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9236
diff changeset
165 </p>
d14096c04126 Updated source documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9236
diff changeset
166 <p>
d14096c04126 Updated source documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9236
diff changeset
167 Support is provided for the following patterns:
d14096c04126 Updated source documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9236
diff changeset
168 * 'from typing import Any; foo: Any'
d14096c04126 Updated source documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9236
diff changeset
169 * 'import typing; foo: typing.Any'
d14096c04126 Updated source documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9236
diff changeset
170 * 'import typing as <alias>; foo: <alias>.Any'
d14096c04126 Updated source documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9236
diff changeset
171 </p>
d14096c04126 Updated source documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9236
diff changeset
172 <dl>
d14096c04126 Updated source documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9236
diff changeset
173
d14096c04126 Updated source documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9236
diff changeset
174 <dt><i>argExpr</i> (ast.expr or str)</dt>
d14096c04126 Updated source documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9236
diff changeset
175 <dd>
d14096c04126 Updated source documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9236
diff changeset
176 DESCRIPTION
d14096c04126 Updated source documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9236
diff changeset
177 </dd>
d14096c04126 Updated source documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9236
diff changeset
178 </dl>
d14096c04126 Updated source documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9236
diff changeset
179 <dl>
d14096c04126 Updated source documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9236
diff changeset
180 <dt>Return:</dt>
d14096c04126 Updated source documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9236
diff changeset
181 <dd>
d14096c04126 Updated source documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9236
diff changeset
182 flag indicating an annotation with 'typing.Any'
d14096c04126 Updated source documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9236
diff changeset
183 </dd>
d14096c04126 Updated source documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9236
diff changeset
184 </dl>
d14096c04126 Updated source documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9236
diff changeset
185 <dl>
d14096c04126 Updated source documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9236
diff changeset
186 <dt>Return Type:</dt>
d14096c04126 Updated source documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9236
diff changeset
187 <dd>
d14096c04126 Updated source documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9236
diff changeset
188 bool
d14096c04126 Updated source documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9236
diff changeset
189 </dd>
8372
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
190 </dl>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
191 <div align="right"><a href="#top">Up</a></div>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
192 <hr />
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
193 <hr />
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
194 <a NAME="Function" ID="Function"></a>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
195 <h2>Function</h2>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
196
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
197 <p>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
198 Class representing a function.
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
199 </p>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
200 <h3>Derived from</h3>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
201 None
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
202 <h3>Class Attributes</h3>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
203
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
204 <table>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
205 <tr><td>None</td></tr>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
206 </table>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
207 <h3>Class Methods</h3>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
208
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
209 <table>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
210
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
211 <tr>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
212 <td><a href="#Function.fromNode">fromNode</a></td>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
213 <td>Class method to create a Function object from ast.FunctionDef or ast.AsyncFunctionDef nodes.</td>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
214 </tr>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
215 </table>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
216 <h3>Methods</h3>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
217
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
218 <table>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
219
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
220 <tr>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
221 <td><a href="#Function.__init__">Function</a></td>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
222 <td>Constructor</td>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
223 </tr>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
224 <tr>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
225 <td><a href="#Function.__decoratorChecker">__decoratorChecker</a></td>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
226 <td>Private method to check the provided decorator for a match against the provided set of check names.</td>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
227 </tr>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
228 <tr>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
229 <td><a href="#Function.getAnnotatedArguments">getAnnotatedArguments</a></td>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
230 <td>Public method to get list of arguments with type annotations.</td>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
231 </tr>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
232 <tr>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
233 <td><a href="#Function.getMissedAnnotations">getMissedAnnotations</a></td>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
234 <td>Public method to provide a list of arguments with missing type annotations.</td>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
235 </tr>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
236 <tr>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
237 <td><a href="#Function.hasDecorator">hasDecorator</a></td>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
238 <td>Public method to check whether the function node is decorated by any of the provided decorators.</td>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
239 </tr>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
240 <tr>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
241 <td><a href="#Function.isDynamicallyTyped">isDynamicallyTyped</a></td>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
242 <td>Public method to check, if a function definition is dynamically typed (i.e.</td>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
243 </tr>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
244 <tr>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
245 <td><a href="#Function.isFullyAnnotated">isFullyAnnotated</a></td>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
246 <td>Public method to check, if the function definition is fully type annotated.</td>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
247 </tr>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
248 </table>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
249 <h3>Static Methods</h3>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
250
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
251 <table>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
252
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
253 <tr>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
254 <td><a href="#Function._singleLineColonSeeker">_singleLineColonSeeker</a></td>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
255 <td>Static method to find the line & column indices of a single line function definition.</td>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
256 </tr>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
257 <tr>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
258 <td><a href="#Function.colonSeeker">colonSeeker</a></td>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
259 <td>Static method to find the line & column indices of the function definition's closing colon.</td>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
260 </tr>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
261 <tr>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
262 <td><a href="#Function.getClassDecoratorType">getClassDecoratorType</a></td>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
263 <td>Static method to get the class method's decorator type from its function node.</td>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
264 </tr>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
265 <tr>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
266 <td><a href="#Function.getFunctionType">getFunctionType</a></td>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
267 <td>Static method to determine the function's FunctionType from its name.</td>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
268 </tr>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
269 </table>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
270
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
271 <a NAME="Function.fromNode" ID="Function.fromNode"></a>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
272 <h4>Function.fromNode (class method)</h4>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
273 <b>fromNode</b>(<i>node, lines, **kwargs</i>)
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
274
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
275 <p>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
276 Class method to create a Function object from ast.FunctionDef or
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
277 ast.AsyncFunctionDef nodes.
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
278 </p>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
279 <p>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
280 Accept the source code, as a list of strings, in order to get the
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
281 column where the function definition ends.
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
282 </p>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
283 <p>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
284 With exceptions, input kwargs are passed straight through to Function's
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
285 __init__. The following kwargs will be overridden:
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
286 * function_type
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
287 * class_decorator_type
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
288 * args
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
289 </p>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
290 <dl>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
291
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
292 <dt><i>node</i> (ast.AsyncFunctionDef or ast.FunctionDef)</dt>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
293 <dd>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
294 reference to the function definition node
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
295 </dd>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
296 <dt><i>lines</i> (list of str)</dt>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
297 <dd>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
298 list of source code lines
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
299 </dd>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
300 <dt><i>**kwargs=</i> (dict)</dt>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
301 <dd>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
302 keyword arguments
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
303 </dd>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
304 </dl>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
305 <dl>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
306 <dt>Return:</dt>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
307 <dd>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
308 created Function object
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
309 </dd>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
310 </dl>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
311 <dl>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
312 <dt>Return Type:</dt>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
313 <dd>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
314 Function
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
315 </dd>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
316 </dl>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
317 <a NAME="Function.__init__" ID="Function.__init__"></a>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
318 <h4>Function (Constructor)</h4>
9236
db53a9efe7ef Updated source documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
319 <b>Function</b>(<i>name, lineno, col_offset, functionType=FunctionType.PUBLIC, isClassMethod=False, classDecoratorType=None, isReturnAnnotated=False, hasTypeComment=False, hasOnlyNoneReturns=True, isNested=False, decoratorList=None, args=None, </i>)
8372
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
320
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
321 <p>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
322 Constructor
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
323 </p>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
324 <dl>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
325
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
326 <dt><i>name</i> (str)</dt>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
327 <dd>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
328 name of the function
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
329 </dd>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
330 <dt><i>lineno</i> (int)</dt>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
331 <dd>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
332 line number
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
333 </dd>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
334 <dt><i>col_offset</i> (int)</dt>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
335 <dd>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
336 column number
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
337 </dd>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
338 <dt><i>functionType</i> (FunctionType (optional))</dt>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
339 <dd>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
340 type of the function (defaults to
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
341 FunctionType.PUBLIC)
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
342 </dd>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
343 <dt><i>isClassMethod</i> (bool (optional))</dt>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
344 <dd>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
345 flag indicating a class method (defaults to False)
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
346 </dd>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
347 <dt><i>classDecoratorType</i> (ClassDecoratorType or None (optional))</dt>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
348 <dd>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
349 type of a function decorator
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
350 (defaults to None)
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
351 </dd>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
352 <dt><i>isReturnAnnotated</i> (bool (optional))</dt>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
353 <dd>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
354 flag indicating the presence of a return
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
355 type annotation (defaults to False)
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
356 </dd>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
357 <dt><i>hasTypeComment</i> (bool (optional))</dt>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
358 <dd>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
359 flag indicating the presence of a type comment
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
360 (defaults to False)
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
361 </dd>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
362 <dt><i>hasOnlyNoneReturns</i> (bool (optional))</dt>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
363 <dd>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
364 flag indicating only None return values
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
365 (defaults to True)
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
366 </dd>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
367 <dt><i>isNested</i> (bool (optional))</dt>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
368 <dd>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
369 flag indicating a nested function (defaults to False)
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
370 </dd>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
371 <dt><i>decoratorList</i> (list of ast.Attribute, ast.Call or ast.Name (optional))</dt>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
372 <dd>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
373 list of decorator nodes (defaults to None)
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
374 </dd>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
375 <dt><i>args</i> (list of Argument (optional))</dt>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
376 <dd>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
377 list of arguments (defaults to None)
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
378 </dd>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
379 </dl>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
380 <a NAME="Function.__decoratorChecker" ID="Function.__decoratorChecker"></a>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
381 <h4>Function.__decoratorChecker</h4>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
382 <b>__decoratorChecker</b>(<i>decorator, checkDecorators</i>)
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
383
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
384 <p>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
385 Private method to check the provided decorator for a match against the
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
386 provided set of check names.
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
387 </p>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
388 <p>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
389 Decorators are assumed to be of the following form:
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
390 * `a.name` or `a.name()`
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
391 * `name` or `name()`
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
392 </p>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
393 <p>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
394 Note: Deeper imports (e.g. `a.b.name`) are not explicitly supported.
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
395 </p>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
396 <dl>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
397
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
398 <dt><i>decorator</i> (ast.Attribute, ast.Call or ast.Name)</dt>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
399 <dd>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
400 decorator node to check
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
401 </dd>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
402 <dt><i>checkDecorators</i> (set of str)</dt>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
403 <dd>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
404 set of decorators to check against
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
405 </dd>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
406 </dl>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
407 <dl>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
408 <dt>Return:</dt>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
409 <dd>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
410 flag indicating the presence of any decorators
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
411 </dd>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
412 </dl>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
413 <dl>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
414 <dt>Return Type:</dt>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
415 <dd>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
416 bool
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
417 </dd>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
418 </dl>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
419 <a NAME="Function.getAnnotatedArguments" ID="Function.getAnnotatedArguments"></a>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
420 <h4>Function.getAnnotatedArguments</h4>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
421 <b>getAnnotatedArguments</b>(<i></i>)
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
422
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
423 <p>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
424 Public method to get list of arguments with type annotations.
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
425 </p>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
426 <dl>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
427 <dt>Return:</dt>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
428 <dd>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
429 list of arguments with type annotations.
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
430 </dd>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
431 </dl>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
432 <dl>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
433 <dt>Return Type:</dt>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
434 <dd>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
435 list of Argument
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
436 </dd>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
437 </dl>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
438 <a NAME="Function.getMissedAnnotations" ID="Function.getMissedAnnotations"></a>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
439 <h4>Function.getMissedAnnotations</h4>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
440 <b>getMissedAnnotations</b>(<i></i>)
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
441
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
442 <p>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
443 Public method to provide a list of arguments with missing type
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
444 annotations.
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
445 </p>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
446 <dl>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
447 <dt>Return:</dt>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
448 <dd>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
449 list of arguments with missing type annotations
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
450 </dd>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
451 </dl>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
452 <dl>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
453 <dt>Return Type:</dt>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
454 <dd>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
455 list of Argument
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
456 </dd>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
457 </dl>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
458 <a NAME="Function.hasDecorator" ID="Function.hasDecorator"></a>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
459 <h4>Function.hasDecorator</h4>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
460 <b>hasDecorator</b>(<i>checkDecorators</i>)
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
461
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
462 <p>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
463 Public method to check whether the function node is decorated by any of
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
464 the provided decorators.
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
465 </p>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
466 <p>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
467 Decorator matching is done against the provided `checkDecorators` set.
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
468 Decorators are assumed to be either a module attribute (e.g.
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
469 `@typing.overload`) or name (e.g. `@overload`). For the case of a
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
470 module attribute, only the attribute is checked against
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
471 `overload_decorators`.
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
472 </p>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
473 <p>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
474 Note: Deeper decorator imports (e.g. `a.b.overload`) are not explicitly
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
475 supported.
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
476 </p>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
477 <dl>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
478
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
479 <dt><i>checkDecorators</i> (set of str)</dt>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
480 <dd>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
481 set of decorators to check against
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
482 </dd>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
483 </dl>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
484 <dl>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
485 <dt>Return:</dt>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
486 <dd>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
487 flag indicating the presence of any decorators
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
488 </dd>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
489 </dl>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
490 <dl>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
491 <dt>Return Type:</dt>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
492 <dd>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
493 bool
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
494 </dd>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
495 </dl>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
496 <a NAME="Function.isDynamicallyTyped" ID="Function.isDynamicallyTyped"></a>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
497 <h4>Function.isDynamicallyTyped</h4>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
498 <b>isDynamicallyTyped</b>(<i></i>)
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
499
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
500 <p>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
501 Public method to check, if a function definition is dynamically typed
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
502 (i.e. completely lacking hints).
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
503 </p>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
504 <dl>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
505 <dt>Return:</dt>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
506 <dd>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
507 flag indicating a dynamically typed function definition
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
508 </dd>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
509 </dl>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
510 <dl>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
511 <dt>Return Type:</dt>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
512 <dd>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
513 bool
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
514 </dd>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
515 </dl>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
516 <a NAME="Function.isFullyAnnotated" ID="Function.isFullyAnnotated"></a>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
517 <h4>Function.isFullyAnnotated</h4>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
518 <b>isFullyAnnotated</b>(<i></i>)
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
519
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
520 <p>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
521 Public method to check, if the function definition is fully type
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
522 annotated.
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
523 </p>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
524 <p>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
525 Note: self.args will always include an Argument object for return.
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
526 </p>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
527 <dl>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
528 <dt>Return:</dt>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
529 <dd>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
530 flag indicating a fully annotated function definition
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
531 </dd>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
532 </dl>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
533 <dl>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
534 <dt>Return Type:</dt>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
535 <dd>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
536 bool
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
537 </dd>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
538 </dl>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
539 <a NAME="Function._singleLineColonSeeker" ID="Function._singleLineColonSeeker"></a>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
540 <h4>Function._singleLineColonSeeker (static)</h4>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
541 <b>_singleLineColonSeeker</b>(<i>line</i>)
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
542
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
543 <p>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
544 Static method to find the line & column indices of a single line
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
545 function definition.
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
546 </p>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
547 <dl>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
548
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
549 <dt><i>node</i> (ast.AsyncFunctionDef or ast.FunctionDef)</dt>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
550 <dd>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
551 reference to the function definition node
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
552 </dd>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
553 <dt><i>line</i> (str)</dt>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
554 <dd>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
555 source code line
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
556 </dd>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
557 </dl>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
558 <dl>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
559 <dt>Return:</dt>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
560 <dd>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
561 line and column offset of the colon
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
562 </dd>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
563 </dl>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
564 <dl>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
565 <dt>Return Type:</dt>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
566 <dd>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
567 tuple of (int, int)
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
568 </dd>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
569 </dl>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
570 <a NAME="Function.colonSeeker" ID="Function.colonSeeker"></a>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
571 <h4>Function.colonSeeker (static)</h4>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
572 <b>colonSeeker</b>(<i>lines</i>)
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
573
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
574 <p>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
575 Static method to find the line & column indices of the function
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
576 definition's closing colon.
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
577 </p>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
578 <dl>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
579
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
580 <dt><i>node</i> (ast.AsyncFunctionDef or ast.FunctionDef)</dt>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
581 <dd>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
582 reference to the function definition node
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
583 </dd>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
584 <dt><i>lines</i> (list of str)</dt>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
585 <dd>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
586 list of source code lines
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
587 </dd>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
588 </dl>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
589 <dl>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
590 <dt>Return:</dt>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
591 <dd>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
592 line and column offset of the colon
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
593 </dd>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
594 </dl>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
595 <dl>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
596 <dt>Return Type:</dt>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
597 <dd>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
598 tuple of (int, int)
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
599 </dd>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
600 </dl>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
601 <a NAME="Function.getClassDecoratorType" ID="Function.getClassDecoratorType"></a>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
602 <h4>Function.getClassDecoratorType (static)</h4>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
603 <b>getClassDecoratorType</b>(<i></i>)
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
604
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
605 <p>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
606 Static method to get the class method's decorator type from its
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
607 function node.
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
608 </p>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
609 <p>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
610 Only @classmethod and @staticmethod decorators are identified; all
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
611 other decorators are ignored
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
612 </p>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
613 <p>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
614 If @classmethod or @staticmethod decorators are not present, this
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
615 function will return None.
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
616 </p>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
617 <dl>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
618
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
619 <dt><i>functionNode</i> (ast.AsyncFunctionDef or ast.FunctionDef)</dt>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
620 <dd>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
621 reference to the function definition node
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
622 </dd>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
623 </dl>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
624 <dl>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
625 <dt>Return:</dt>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
626 <dd>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
627 class decorator type
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
628 </dd>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
629 </dl>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
630 <dl>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
631 <dt>Return Type:</dt>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
632 <dd>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
633 ClassDecoratorType or None
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
634 </dd>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
635 </dl>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
636 <a NAME="Function.getFunctionType" ID="Function.getFunctionType"></a>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
637 <h4>Function.getFunctionType (static)</h4>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
638 <b>getFunctionType</b>(<i></i>)
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
639
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
640 <p>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
641 Static method to determine the function's FunctionType from its name.
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
642 </p>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
643 <p>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
644 MethodType is determined by the following priority:
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
645 1. Special: function name prefixed & suffixed by "__"
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
646 2. Private: function name prefixed by "__"
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
647 3. Protected: function name prefixed by "_"
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
648 4. Public: everything else
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
649 </p>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
650 <dl>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
651
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
652 <dt><i>functionName</i> (str)</dt>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
653 <dd>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
654 function name to be checked
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
655 </dd>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
656 </dl>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
657 <dl>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
658 <dt>Return:</dt>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
659 <dd>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
660 type of function
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
661 </dd>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
662 </dl>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
663 <dl>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
664 <dt>Return Type:</dt>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
665 <dd>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
666 FunctionType
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
667 </dd>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
668 </dl>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
669 <div align="right"><a href="#top">Up</a></div>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
670 <hr />
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
671 <hr />
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
672 <a NAME="FunctionVisitor" ID="FunctionVisitor"></a>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
673 <h2>FunctionVisitor</h2>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
674
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
675 <p>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
676 Class implementing a node visitor to check function annotations.
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
677 </p>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
678 <h3>Derived from</h3>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
679 ast.NodeVisitor
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
680 <h3>Class Attributes</h3>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
681
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
682 <table>
8773
3dd81b827455 Extended the annotations checker to check for missing 'from __future__ import annotations'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8596
diff changeset
683 <tr><td>AstFuncTypes</td></tr><tr><td>visit_AsyncFunctionDef</td></tr><tr><td>visit_ClassDef</td></tr><tr><td>visit_FunctionDef</td></tr>
8372
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
684 </table>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
685 <h3>Class Methods</h3>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
686
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
687 <table>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
688 <tr><td>None</td></tr>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
689 </table>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
690 <h3>Methods</h3>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
691
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
692 <table>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
693
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
694 <tr>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
695 <td><a href="#FunctionVisitor.__init__">FunctionVisitor</a></td>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
696 <td>Constructor</td>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
697 </tr>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
698 <tr>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
699 <td><a href="#FunctionVisitor.switchContext">switchContext</a></td>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
700 <td>Public method implementing a context switcher as a generic function visitor in order to track function context.</td>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
701 </tr>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
702 </table>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
703 <h3>Static Methods</h3>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
704
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
705 <table>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
706 <tr><td>None</td></tr>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
707 </table>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
708
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
709 <a NAME="FunctionVisitor.__init__" ID="FunctionVisitor.__init__"></a>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
710 <h4>FunctionVisitor (Constructor)</h4>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
711 <b>FunctionVisitor</b>(<i>lines</i>)
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
712
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
713 <p>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
714 Constructor
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
715 </p>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
716 <dl>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
717
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
718 <dt><i>lines</i> (list of str)</dt>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
719 <dd>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
720 source code lines of the function
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
721 </dd>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
722 </dl>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
723 <a NAME="FunctionVisitor.switchContext" ID="FunctionVisitor.switchContext"></a>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
724 <h4>FunctionVisitor.switchContext</h4>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
725 <b>switchContext</b>(<i>node</i>)
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
726
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
727 <p>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
728 Public method implementing a context switcher as a generic function
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
729 visitor in order to track function context.
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
730 </p>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
731 <p>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
732 Without keeping track of context, it's challenging to reliably
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
733 differentiate class methods from "regular" functions, especially in the
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
734 case of nested classes.
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
735 </p>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
736 <dl>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
737
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
738 <dt><i>node</i> (ast.AsyncFunctionDef or ast.FunctionDef)</dt>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
739 <dd>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
740 reference to the function definition node to be analyzed
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
741 </dd>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
742 </dl>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
743 <div align="right"><a href="#top">Up</a></div>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
744 <hr />
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
745 <hr />
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
746 <a NAME="ReturnVisitor" ID="ReturnVisitor"></a>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
747 <h2>ReturnVisitor</h2>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
748
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
749 <p>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
750 Class implementing a node visitor to check the return statements of a
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
751 function node.
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
752 </p>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
753 <p>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
754 If the function node being visited has an explicit return statement of
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
755 anything other than `None`, the `instance.hasOnlyNoneReturns` flag will
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
756 be set to `False`.
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
757 </p>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
758 <p>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
759 If the function node being visited has no return statement, or contains
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
760 only return statement(s) that explicitly return `None`, the
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
761 `instance.hasOnlyNoneReturns` flag will be set to `True`.
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
762 </p>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
763 <p>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
764 Due to the generic visiting being done, we need to keep track of the
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
765 context in which a non-`None` return node is found. These functions are
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
766 added to a set that is checked to see whether nor not the parent node is
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
767 present.
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
768 </p>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
769 <h3>Derived from</h3>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
770 ast.NodeVisitor
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
771 <h3>Class Attributes</h3>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
772
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
773 <table>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
774 <tr><td>visit_AsyncFunctionDef</td></tr><tr><td>visit_FunctionDef</td></tr>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
775 </table>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
776 <h3>Class Methods</h3>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
777
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
778 <table>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
779 <tr><td>None</td></tr>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
780 </table>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
781 <h3>Methods</h3>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
782
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
783 <table>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
784
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
785 <tr>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
786 <td><a href="#ReturnVisitor.__init__">ReturnVisitor</a></td>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
787 <td>Constructor</td>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
788 </tr>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
789 <tr>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
790 <td><a href="#ReturnVisitor.hasOnlyNoneReturns">hasOnlyNoneReturns</a></td>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
791 <td>Public method indicating, that the parent node isn't in the visited nodes that don't return `None`.</td>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
792 </tr>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
793 <tr>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
794 <td><a href="#ReturnVisitor.switchContext">switchContext</a></td>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
795 <td>Public method implementing a context switcher as a generic function visitor in order to track function context.</td>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
796 </tr>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
797 <tr>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
798 <td><a href="#ReturnVisitor.visit_Return">visit_Return</a></td>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
799 <td>Public method to check each Return node to see if it returns anything other than `None`.</td>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
800 </tr>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
801 </table>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
802 <h3>Static Methods</h3>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
803
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
804 <table>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
805 <tr><td>None</td></tr>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
806 </table>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
807
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
808 <a NAME="ReturnVisitor.__init__" ID="ReturnVisitor.__init__"></a>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
809 <h4>ReturnVisitor (Constructor)</h4>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
810 <b>ReturnVisitor</b>(<i>parentNode</i>)
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
811
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
812 <p>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
813 Constructor
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
814 </p>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
815 <dl>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
816
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
817 <dt><i>parentNode</i> (ast.AsyncFunctionDef or ast.FunctionDef)</dt>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
818 <dd>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
819 reference to the function definition node to be
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
820 analyzed
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
821 </dd>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
822 </dl>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
823 <a NAME="ReturnVisitor.hasOnlyNoneReturns" ID="ReturnVisitor.hasOnlyNoneReturns"></a>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
824 <h4>ReturnVisitor.hasOnlyNoneReturns</h4>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
825 <b>hasOnlyNoneReturns</b>(<i></i>)
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
826
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
827 <p>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
828 Public method indicating, that the parent node isn't in the visited
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
829 nodes that don't return `None`.
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
830 </p>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
831 <dl>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
832 <dt>Return:</dt>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
833 <dd>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
834 flag indicating, that the parent node isn't in the visited
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
835 nodes that don't return `None`
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
836 </dd>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
837 </dl>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
838 <dl>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
839 <dt>Return Type:</dt>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
840 <dd>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
841 bool
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
842 </dd>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
843 </dl>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
844 <a NAME="ReturnVisitor.switchContext" ID="ReturnVisitor.switchContext"></a>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
845 <h4>ReturnVisitor.switchContext</h4>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
846 <b>switchContext</b>(<i>node</i>)
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
847
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
848 <p>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
849 Public method implementing a context switcher as a generic function
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
850 visitor in order to track function context.
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
851 </p>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
852 <p>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
853 Without keeping track of context, it's challenging to reliably
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
854 differentiate class methods from "regular" functions, especially in the
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
855 case of nested classes.
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
856 </p>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
857 <dl>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
858
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
859 <dt><i>node</i> (ast.AsyncFunctionDef or ast.FunctionDef)</dt>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
860 <dd>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
861 reference to the function definition node to be analyzed
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
862 </dd>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
863 </dl>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
864 <a NAME="ReturnVisitor.visit_Return" ID="ReturnVisitor.visit_Return"></a>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
865 <h4>ReturnVisitor.visit_Return</h4>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
866 <b>visit_Return</b>(<i>node</i>)
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
867
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
868 <p>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
869 Public method to check each Return node to see if it returns anything
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
870 other than `None`.
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
871 </p>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
872 <p>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
873 If the node being visited returns anything other than `None`, its
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
874 parent context is added to the set of non-returning child nodes of
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
875 the parent node.
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
876 </p>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
877 <dl>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
878
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
879 <dt><i>node</i> (ast.Return)</dt>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
880 <dd>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
881 reference to the AST Return node
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
882 </dd>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
883 </dl>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
884 <div align="right"><a href="#top">Up</a></div>
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
885 <hr />
e0227a7c850e Generated source docu for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
886 </body></html>

eric ide

mercurial