|
Added branch suspension where "break" statements cause usage information for a |
|
|
Changed loop inspection, introducing a null branch parallel to the body branch, |
|
|
Added a special class for abandoned branch users dictionaries, preventing any |
|
|
Fixed try...except branching. |
|
|
Replaced _attrnames with _attrcombined in report generation. |
|
|
Changed branch abandonment and merging, replacing users with those defined for |
|
|
Propagated more detailed usage information to the importer in order to deduce |
|
|
Updated the comments in attribute usage tests. |
|
|
Switched the attribute usage mechanism to employ contributor nodes, established |
|
|
Avoid mutation of the loop users when the attribute users are changed. |
|
|
Changed attribute usage tracking to consider branching and separate usage |
|
|
Added a note about frame re-use where parameters do not change. |
|
|
Added missing exception handling around the __main__ module. |
|
|
Introduced an "in assignment" flag to distinguish between slice and subscript |
|
|
Fixed slice construction in the generated code. |
|
|
Made attribute access inspection generic, fixing an issue with unpredictable |
|
|
Added operator pop-up information. |
|
|
Fixed report generation for non-generated classes and functions. |
|
|
Removed the target parameter of the _endCallFunc method. |
|
|
Added support for tuple parameters. Optimised tuple/list assignment. |
|
|
Ensure attribute collection for all modules, thus making sure that any |
|
|
Added loop nodes for "for" and list comprehension flow branches. |
|
|
Fixed pop-up elements where no type suggestions exist. |
|
|
Added specific attribute usage for imported objects. |
|
|
Fixed importing to return cached package roots instead of leaves when requested. |
|
|
Fixed try...except...else statement scope/usage branching. |
|
|
Added class attributes to the summary, tidying up the presentation and adding |
|
|
Added space above the code in each report in order to permit pop-up elements to |
|
|
Added the type pop-up element to AssAttr nodes. |
|
|
Fixed operator module acquisition where the module is acquired in both a normal |
|
|
Moved accessor type detection using the attribute usage annotations to the |
|
|
Remove highlighting from attribute names. |
|
|
Made more use of convenience methods. |
|
|
Removed ExtendFrame instructions for empty units. |
|
|
Added some support for HTML reports of program modules, separating the program |
|
|
Fixed the module search path to find standard library modules. |
|
|
Changed lambda definitions to have automatically generated names, and added |
|
|
Added the lib directory to the start of the module search path. |
|
|
Moved base class references to within class namespaces. |
|
|
Moved methods, added comments and docstrings. |
|
|
Fixed usage of built-in types, also fixing declarations of specific attribute |
|
|
Removed object usage in the builtins and permitted the absence of generated |
|
|
Attempted to introduce a more conservative approach to visiting program units |
|
|
Changed the importer's attributes_used register to hold the full paths of all |
|
|
Moved the namespace lookup logic into NamespaceDict; this permits scope usage |
|
|
Fixed exception attribute initialisation for translation errors. |
|
|
Fixed inspection of global usage after declarations in locals. |
|
|
Fixed overwriting of exception source details. |
|
|
Simplified exception raising so that the current node and unit name are added to |
|
|
Fixed the listiterator.next method to raise an exception instance. |
|
|
Fixed the fragment occupied size upon extending a list. |
|
|
Fixed memory allocation for list fragments. |
|
|
Merged branches, added a separate test of xrange and lists. |
|
|
Fixed scope handling where names are imported into namespaces. |
|
|
Merged dynamic/nested function and general development branches. |
|
|
Replaced the native mechanism for list initialisation with a Python-based |
|
|
Introduced the notion of dynamic definitions, to be used in conjunction with the |
|
|
Changed the function/lambda support to generate special function instances for |
|
|
Changed parameter initialisation to explicitly use Instance() instead of None. |
|
|
Fixed function name to avoid conflict with keyword. |
|