Skip to content

fix: properly traverse nested blocks within class bodies#222

Merged
alangpierce merged 1 commit intodecaffeinate:masterfrom
alangpierce:handle-conditional-proto-assignments
Jun 10, 2017
Merged

fix: properly traverse nested blocks within class bodies#222
alangpierce merged 1 commit intodecaffeinate:masterfrom
alangpierce:handle-conditional-proto-assignments

Conversation

@alangpierce
Copy link
Member

Rather than just looking at top-level class statements, we need to traverse all
nested code within classes to distinguish object literals from class proto
assign ops, and we also need to collect all bound methods that we see and the
constructor. Since this happens at different levels of the AST, I needed to make
traversal stateful by adding some state to the context.

Rather than just looking at top-level class statements, we need to traverse all
nested code within classes to distinguish object literals from class proto
assign ops, and we also need to collect all bound methods that we see and the
constructor. Since this happens at different levels of the AST, I needed to make
traversal stateful by adding some state to the context.
@alangpierce alangpierce merged commit 7b22308 into decaffeinate:master Jun 10, 2017
alangpierce added a commit to alangpierce/decaffeinate that referenced this pull request Jun 10, 2017
One change from decaffeinate/decaffeinate-parser#222 is
that inline class blocks are now properly marked as inline. This caused
decaffeinate to go through a different code path that didn't change comma to
semicolon as necessary. Fixed by normalizing in that case as well.
alangpierce added a commit to decaffeinate/decaffeinate that referenced this pull request Jun 11, 2017
One change from decaffeinate/decaffeinate-parser#222 is
that inline class blocks are now properly marked as inline. This caused
decaffeinate to go through a different code path that didn't change comma to
semicolon as necessary. Fixed by normalizing in that case as well.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant

Comments