Community
Participate
Working Groups
When the signature of a method is changed via refactoring that is bound in a (callin/callout) method binding, the refactoring currently reports this error: "Cannot update found node: nodeType=84;..." This is because ChangeSignatureProcessor#createOccurrenceUpdate(..) cannot handle method spec (nodeType=84) as the parent. Adaptation should create a special form of ReferenceUpdate instead.
Created attachment 177666 [details] implementation incl tests Implemented using a new team ChangeSignatureAdaptor: - adjust any method specs that refer to a method whose signature is being changed - report if changes should propagate through the method mapping (which is not automated) - if possible absorb re-ordering of arguments by adding parameter mappings Tests are included. Also: improve handling of parameter mappings in AstRewriteAnalyzer.
Patch has been committed as r748 - r750 One more note on the changes in AstRewriteAnalyzer: without this patch adding parameter mappings using a ListRewrite produced overlapping edits. The new method is a mix of rewriteMethodBody and some bits of the old implementation.
Verified using I201009211735