void (@NotNull LighterASTNode element) { IElementType type = element.getTokenType(); if (type == CLASS || type == LAMBDA_EXPRESSION) return; if (returnValue.equals(returnAny())) { return; } if (type == ASSIGNMENT_EXPRESSION || type == POSTFIX_EXPRESSION || (type == PREFIX_EXPRESSION && firstChildOfType(myTree, element, UNARY_INCREMENT_DECREMENT) != null)) { LighterASTNode expression = skipParenthesesCastsDown(myTree, findExpressionChild(myTree, element)); int paramIndex = resolveParameter(expression); if (paramIndex >= 0) { if (assignedParameters == null) { assignedParameters = new BitSet(); } assignedParameters.set(paramIndex); if (returnValue.equals(returnParameter(paramIndex))) { returnValue = returnAny(); } } } if (type == RETURN_STATEMENT) { LighterASTNode expression = findExpressionChild(myTree, element); ContractReturnValue newReturnValue = expressionToReturnValue(expression); if (returnValue.isFail()) { returnValue = newReturnValue; } else if (!returnValue.equals(newReturnValue)) { returnValue = returnAny(); } } super.visitNode(element); }