@Override public void visitBlockStatement(final BlockStatement block) { Set<VariableExpression> old = declaredFinalVariables; declaredFinalVariables = new HashSet<VariableExpression>(); super.visitBlockStatement(block); if (callback != null) { Map<Variable, VariableState> state = getState(); for (VariableExpression declaredFinalVariable : declaredFinalVariables) { VariableState variableState = state.get(declaredFinalVariable.getAccessedVariable()); if (variableState == null || variableState != VariableState.is_final) { callback.variableNotAlwaysInitialized(declaredFinalVariable); } } } declaredFinalVariables = old; }
@Override public void visitBlockStatement(final BlockStatement block) { pushContext(block); super.visitBlockStatement(block); popContext(); }
public void visitBlockStatement(BlockStatement block) { pushState(); block.setVariableScope(currentScope); super.visitBlockStatement(block); popState(); }
@Override public final void visitBlockStatement(BlockStatement block) { super.visitBlockStatement(block); }