385:a44d9073aae7
|
2010-09-13 |
Paul Boddie |
changeset
files
shortlog
graph
|
Added a special class for abandoned branch users dictionaries, preventing any
usage being recorded after a branch is abandoned.
Moved any else clauses for "for" and "while" loops into the loop branch during
inspection, thus combining loop usage with the termination clause of each loop.
Added various tests and notes. |
|
|
TO_DO.txt docs/rationale.txt micropython/data.py micropython/inspect.py tests/attribute_access_type_restriction_for_else.py tests/attribute_access_type_restriction_loop_else.py
|
|
384:5c1afd2b8d15
|
2010-09-13 |
Paul Boddie |
changeset
files
shortlog
graph
|
Fixed try...except branching.
Removed the propagation of null/empty usage to the importer.
Introduced a degree of caching when gathering usage information from branches,
in order to avoid repeated work.
Introduced filtering of usage information on users in order to avoid guard
information being generated for names other than those a user defines. |
|
|
micropython/__init__.py micropython/common.py micropython/data.py micropython/inspect.py micropython/opt.py micropython/table.py tests/attribute_access_type_restriction_for.py
|
|
383:f20528f5302a
|
2010-09-12 |
Paul Boddie |
changeset
files
shortlog
graph
|
Replaced _attrnames with _attrcombined in report generation. |
|
|
micropython/report.py
|
|
382:b174068d3e82
|
2010-09-12 |
Paul Boddie |
changeset
files
shortlog
graph
|
Changed branch abandonment and merging, replacing users with those defined for
branches when merging. Thus, the active users are effectively redefined after
each branchpoint.
Changed attribute usage processing to consider each set of attribute names for
each name separately, producing sets of object types which are then combined to
suggest types for each name.
Added a missing table method returning any object types providing members of a
set of attributes along with the static status of such attributes in those
types. |
|
|
micropython/__init__.py micropython/data.py micropython/table.py
|
|
381:774448304582
|
2010-09-12 |
Paul Boddie |
changeset
files
shortlog
graph
|
Propagated more detailed usage information to the importer in order to deduce
types for defining users, setting the _attrtypes annotation on user nodes.
Introduced the _attrdefs annotation which is used when looking up defining users
and thus accessor types for attribute access nodes.
Fixed a revised example of attribute usage optimisations.
Added RSVP return address markings in the memory display produced by the
show_memory method. |
|
|
micropython/__init__.py micropython/ast.py micropython/common.py micropython/data.py micropython/inspect.py micropython/trans.py rsvp.py tests/attribute_access_type_restriction_loop_accumulation.py
|
|
380:d5ee53c83a45
|
2010-09-11 |
Paul Boddie |
changeset
files
shortlog
graph
|
Updated the comments in attribute usage tests. |
|
|
tests/attribute_access_type_restriction_conditional.py tests/attribute_access_type_restriction_conditional_choice.py tests/attribute_access_type_restriction_conditional_choice_incompatible.py tests/attribute_access_type_restriction_new.py tests/attribute_access_type_restriction_new_conditional.py tests/attribute_access_type_restriction_single.py tests/attribute_access_type_restriction_single_instance.py
|
|
379:d5d8fa019db3
|
2010-09-10 |
Paul Boddie |
changeset
files
shortlog
graph
|
Switched the attribute usage mechanism to employ contributor nodes, established
by branches, which contribute usage information to the assignment nodes that
define actual attribute usage for names. |
|
|
TO_DO.txt micropython/data.py micropython/inspect.py tests/attribute_access_type_restriction_loop_accumulation.py
|
|
378:fd4d1b019e7d
|
2010-09-07 |
Paul Boddie |
changeset
files
shortlog
graph
|
Avoid mutation of the loop users when the attribute users are changed. |
|
|
micropython/data.py
|
|
377:b233b2a48837
|
2010-09-07 |
Paul Boddie |
changeset
files
shortlog
graph
|
Changed attribute usage tracking to consider branching and separate usage
possibilities in a slightly more rigourous way.
Attempted to add isinstance support.
Added tests of the revised attribute usage support. |
|
|
lib/builtins.py micropython/data.py micropython/inspect.py rsvplib.py tests/attribute_access_type_restriction_conditional_choice.py tests/attribute_access_type_restriction_conditional_choice_incompatible.py
|
|
376:bd11b8c03676
|
2010-09-06 |
Paul Boddie |
changeset
files
shortlog
graph
|
Added a note about frame re-use where parameters do not change. |
|
|
TO_DO.txt
|
|