anchor.diff:  
   
   %% Get the binding structure of variables.
  -%%-spec(var_binding_structure/1::([syntaxTree()]) -> [{integer(), integer()}]).      
  -
  +-spec(var_binding_structure/1::([syntaxTree()]) -> [{integer(), integer()}]).      
   var_binding_structure(ASTList) ->
       VarLocs = lists:keysort(2, collect_vars(ASTList)),
       case VarLocs of
  
positive.code: 				  case var_binding_structure([T]) of
  				      BdStructExp ->
  					  StartEndLoc = refac_util:get_range(T),
  					  [StartEndLoc| Acc];
  				      _ -> Acc
  				  end;
  			      _ -> Acc
  
negative.code:     refac_syntax_lib:fold(Fun, [], AST).
  
  
  compose_search_result_info(Ranges) ->
      compose_search_result_info(Ranges, "").
  compose_search_result_info([], Str) ->
      Str;
  compose_search_result_info([{FileName, {{StartLine, StartCol}, {EndLine, EndCol}}}|Ranges], Str) ->
      Str1 =Str ++ "\n"++FileName++io_lib:format(":~p.~p-~p.~p: ", [StartLine, StartCol, EndLine, EndCol]),
      compose_search_result_info(Ranges, Str1).
  					       
      
  display_search_result(Res) ->
      case Res of
  	[_] ->
  	    ?wrangler_io("No identical expression has been found. \n", []),
  	    {ok, []};
  	_ -> ?wrangler_io("\n~p identical expressions(including the "
  			  "expression selected) have been found.\n", [length(Res)]),
  	     ?wrangler_io(compose_search_result_info(Res), []),
  	     ?wrangler_io("\n\nNOTE: Use 'M-x compilation-minor-mode' to make the result "
  			  "mouse clickable if this mode is not already enabled.\n",[]),
  	     ?wrangler_io("      Use 'C-c C-e' to remove highlights!\n", []),
  	     {ok, Res}
      end.
          
      
  