there is a possible case that given base node does n't have alignmentincolumnsconfig #gettargetdeclarationtypes target type but its first child node or first child node of the first child node etc does . this method tries to derive node of the target type from the given node . concode_field_sep AlignmentInColumnsHelper INSTANCE concode_field_sep ASTNode getPreviousAdjacentNodeOfTargetType concode_elem_sep ASTNode getSubNodeThatStartsNewLine concode_elem_sep List<IElementType> findSubNodeTypes concode_elem_sep boolean whitespaceFound concode_elem_sep boolean useDifferentVarDeclarationAlignment concode_elem_sep boolean targetTypeFound concode_elem_sep boolean findPreviousNode concode_elem_sep boolean findPreviousNode
ASTNode function ( ASTNode arg0 , TokenSet arg1 ) { if ( arg1 . contains ( arg0 . getElementType ( ) ) ) { return arg0 ; } for ( ASTNode loc0 = arg0 ; loc0 != null ; loc0 = loc0 . getFirstChildNode ( ) ) { IElementType loc1 = loc0 . getElementType ( ) ; if ( arg1 . contains ( loc1 ) ) { return loc0 ; } } return null ; }