@Override public void visitCodeBlock(@NotNull PsiCodeBlock block) {
    startElement(block);

    PsiStatement[] blockStatements = block.getStatements();
    for (PsiStatement statement : blockStatements) {
      statement.accept(this);
    }

    flushCodeBlockVariables(blockStatements, block.getParent());

    finishElement(block);
  }
@Override public void visitCodeBlock(@NotNull PsiCodeBlock block)