Announcements‎ > ‎

2.1.1.0 release notes

posted Mar 16, 2020, 8:26 AM by Scott Wells

2.1.1.0

  • Apex Change Method Signature Refactoring - Added a Change Method Signature refactoring for Apex constructors, methods, and interface methods (collectively called "methods" in this description for simplicity):
    • Allows the user to change most of a method's characteristics including visibility (except interface methods), return type (except constructors), name, and parameters.
    • Method parameters can be added, removed, and reordered, and their types and names can be changed.
    • Default values/expressions can be specified for added method parameters.
    • The user can optionally choose to generate a backward-compatible version of the original signature that delegates to the changed signature to minimize the ripple effect of the change across the code base.
    • When an interface method implementation or method override is selected for this refactoring, the user is prompted whether to refactor the defining base declaration or the selected declaration.
    • When the signature of an implemented interface method or overridden base method is changed, the change is propagated to all implementations/overrides for consistency.
    • Existing ApexDoc comments are updated to reflect method signature changes including addition/removal/reordering of @param tags as appropriate, addition/removal of the @return tag, etc.
    • The requested changes are validated against the affected code to help ensure that conflicts, unresolvable references, etc., are not introduced as a result.
    • Qualifications are added to references of local class members if necessary to avoid ambiguity with renamed or added parameters.
  • Apex Rename Refactoring Improvements
    • When an interface method implementation or method override is selected for this refactoring, the user is prompted whether to refactor the defining base declaration or the selected declaration.
    • Qualifications are added to references of local class members if necessary to avoid ambiguity with renamed parameters or local variables.
  • Other related fixes and improvements.
Comments