anchor.diff:  %% =============================================================================================
   -module(refac_fold_expression).
   
  --export([fold_expr_by_loc/5, fold_expr_by_loc_eclipse/5, 
  +-export([fold_expr_by_loc/5, 
  +         fold_expr_by_loc_eclipse/5, 
   	 fold_expr_1_eclipse/5,
   	 do_fold_expression/5,
  -	 fold_expr_by_name/7, fold_expr_by_name_eclipse/7]).
  +	 fold_expr_by_name/7, 
  +         fold_expr_by_name/8,
  +         fold_expr_by_name_eclipse/7]).
   
   -export([fold_expression_1/5]).  %% used by tests.
   
  
positive.code:     fold_by_name_par_checking(ModName, FunName, Arity, ClauseIndex),
      fold_expr_by_name(FileName, list_to_atom(ModName), list_to_atom(FunName),
  		      list_to_integer(Arity), list_to_integer(ClauseIndex),
  		      SearchPaths, TabWidth, emacs).
  
  %%-spec(fold_expr_by_name_eclipse/7::(filename(), string(), string(), integer(), integer(), [dir()], integer())
  %%				   -> {ok, {syntaxTree(), [{{{integer(), integer()}, {integer(), integer()}}, syntaxTree(),syntaxTree()}]}}).
  fold_expr_by_name_eclipse(FileName, ModName, FunName, Arity, ClauseIndex, SearchPaths, TabWidth) ->
      fold_expr_by_name(FileName, list_to_atom(ModName), list_to_atom(FunName), Arity, 
  		      ClauseIndex, SearchPaths, TabWidth, eclipse).
  
  fold_expr_by_name(FileName, ModName, FunName, Arity, ClauseIndex, SearchPaths, TabWidth, Editor) ->
      ?wrangler_io("\nCMD: ~p:fold_expression(~p,~p,~p,~p,~p,~p).\n",
  		 [?MODULE, FileName, ModName, FunName, Arity, ClauseIndex, TabWidth]),
      Cmd = "CMD: " ++ atom_to_list(?MODULE) ++ ":fold_expression(" ++ "\"" ++ 
  	    FileName ++ "\", " ++ atom_to_list(ModName) ++ ", " ++ atom_to_list(FunName) ++ 
  	      ", " ++ integer_to_list(Arity) ++ ", " ++ integer_to_list(ClauseIndex) ++ ", ["
  											  ++ refac_misc:format_search_paths(SearchPaths) ++ "]," ++ integer_to_list(TabWidth) ++ ").",
      {ok, {AnnAST, Info}} = wrangler_ast_server:parse_annotate_file(FileName, true, SearchPaths, TabWidth),
      {value, {module, CurrentModName}} = lists:keysearch(module, 1, Info),
  
negative.code: 	{ok, {Mod, _FunName, _Arity, FunClauseDef}} ->
  	    side_condition_analysis(FunClauseDef),
  	    Candidates = search_candidate_exprs(AnnAST, {Mod, CurrentModName}, FunName, FunClauseDef),
              fold_expression_0(FileName, Candidates, FunClauseDef, Cmd, Editor, SearchPaths, TabWidth);
          {error, _Reason} ->
  	    throw({error, "The specified funcion clause does not exist!"})
      end.
  
  