static boolean constructorCallHasSideEffects ( Node callNode ) { checkArgument ( callNode . isNew ( ) , "Expected NEW node, got %s" , callNode . getToken ( ) ) ; if ( callNode . isNoSideEffectsCall ( ) ) { return false ; } if ( callNode . isOnlyModifiesArgumentsCall ( ) && allArgsUnescapedLocal ( callNode ) ) { return false ; } Node nameNode = callNode . getFirstChild ( ) ; return ! nameNode . isName ( ) || ! CONSTRUCTORS_WITHOUT_SIDE_EFFECTS . contains ( nameNode . getString ( ) ) ; }
Do calls to this constructor have side effects?