void (@NotNull JavaCodeFragment codeFragment) { myVisitedFragments.add(codeFragment); ArrayList<Evaluator> evaluators = new ArrayList<>(); CodeFragmentEvaluator oldFragmentEvaluator = setNewCodeFragmentEvaluator(); try { for (PsiElement child = codeFragment.getFirstChild(); child != null; child = child.getNextSibling()) { child.accept(this); if (myResult != null) { evaluators.add(myResult); } myResult = null; } myCurrentFragmentEvaluator.setStatements(evaluators.toArray(new Evaluator[0])); myResult = myCurrentFragmentEvaluator; } finally { myCurrentFragmentEvaluator = oldFragmentEvaluator; } }