protected ChildAlignmentStrategyProvider getStrategyProvider() {
    if (myNode.getElementType() == JavaElementType.CLASS || myNode.getElementType() == JavaElementType.ANONYMOUS_CLASS) {
      return new SubsequentClassMemberAlignment(mySettings);
    }

    ASTNode parent = myNode.getTreeParent();
    IElementType parentType = parent != null ? parent.getElementType() : null;
    if (parentType == JavaElementType.METHOD || myNode instanceof PsiCodeBlock) {
      if (mySettings.ALIGN_CONSECUTIVE_VARIABLE_DECLARATIONS || mySettings.ALIGN_CONSECUTIVE_ASSIGNMENTS) {
        List<CompositeAligner.AlignerConfiguration> configuration = new SmartList<>();
        if (mySettings.ALIGN_CONSECUTIVE_VARIABLE_DECLARATIONS) {
          configuration.add(SubsequentVariablesAlignerConfigurations.subsequentVariableAligner);
        }
        if (mySettings.ALIGN_CONSECUTIVE_ASSIGNMENTS) {
          configuration.add(SubsequentVariablesAlignerConfigurations.subsequentAssignmentAligner);
        }
        return new CompositeAligner(configuration);
      }
    }

    return ChildAlignmentStrategyProvider.NULL_STRATEGY_PROVIDER;
  }
protected ChildAlignmentStrategyProvider getStrategyProvider()