Choosing analysis options

To achieve better analysis results, you can change several options on the SimilarCode search page.

Please note that the matching process is highly empiric. The effect of changing these options varies from project to project.

Search mode

Can possibly be refactored option finds complete code fragments (with balanced braces and control structures) that have higher possibility of being refactorable. (It is in no way warrantied that the matches found would be refactorable. It's just that algorithm settings are adjusted to raise the probability of finding such matches.)

Contains possible renaming errors option adjusts algorithm settings to have a higher probability of finding matches with possible renaming errors. A filter that hides matches with no errors is automatically turned on after the search. (See Searching for renaming errors and Using filters topics.)

Just looks similar option sets the most loose options to find any similarly looking code fragments. You could use it, for example, to determine how much code the two given projects have in common.

Tip: Can possibly be refactored mode needs less free memory than the other two modes, so if you are short on memory, give it a try even when searching for renaming errors.

Additional options

Find more matches by taking much more time option makes the algorithm run much slower, but also produce better results.

— If you have a small project, you need to turn this option on, else you risk to not find anything.
— If you have a very large project, you almost certainly need to turn the option off, else the program will be running for days.
— On a medium-sized project you are advised to try both settings.



These options should be familiar to you because they are present on all search pages. They allow you to specify which files you want to analyze with SimilarCode.

Tip: Like on all other search pages, if you want to choose the Selected resources option, make sure Navigator or Project Explorer is the active view when you select Search > SimilarCode menu item.