Online Manual



Tips and Tricks

Tips and Tricks


Use Ctrl+` to compute Quick Analysis

In most cases you don't need to analyze all the classes in the project. Most of essential dataflow information (e.g. Impact, Points-to) is located at the same Compilation Unit, where you invoke the query. To perform the fast local Quick Analysis simply position the caret at some method/type/field name in the Java Editor or select some method/type/field in Package Explorer or Outline views (more on selecting Java Elements is described in Selection of Java Elements). Then press Ctrl+`.

Use Ctrl+` to analyze the non-analyzed source code

When you select some Java Element outside of the currently analyzed Working Set, you get the following message:

Press Ctrl+` to perform the Quick Analysis on this external Compilation Unit. Note that the previous analysis will be terminated and you will be asked to save it.

Use Ctrl+` to force the Analysis Report to change

If for some reasons Analysis Report does not show the dataflow information on selected Java Element (it is frozen, Java Element is not in the current analysis, or other), press Ctrl+`, and Analysis Report will be forced to show it.

Use three navigation modes in Analysis Report

You can reveal Java Elements in Analysis Report by either of three ways:

  • Click on the button to reveal the corresponding Java Element in the source
  • Follow the hyperlink of some Java Element to reveal it and make it the current Java Element (this will change the Analysis Report)
  • Click on the button to reveal all the answers for some query in the Eclipse Search View. It is very useful if the number of answers for the query is quite big and you want to see which files contain the answers.

Freeze the Analysis Report

Analysis Report changes its content each time you select the new Java Element either in the source code or in the views (Query Tree View or others). To disable it press the button.

Use tooltips on Java Elements

You may quickly inspect the declaration of each non-external Java Element if you hover the mouse over that Java Element. This works in Analysis Report, Query Tree and in Metrics Viewer.

Kill the analysis if you will no longer need it

When the phase Analyzed is active, all analysis dataflow information is being stored in the memory. If the amount of reserved memory is big, the performance of your computer may be diminished. If you will no longer need the outcome of analysis, terminating it will release these resources. Press the button in Analysis Summary View or select Source analysis > Kill Analysis.

Use Filters to customize the analysis

Filters Mechanism allows you to add some missing dataflow information to the analysis. You may force the analysis to treat some Java container classes as the plain arrays in Arrays (Containers) Filters or show SourceGlider how to search the threads in Threads Filters.

Use Array Filters to refine the analysis

Some sort of programs may cause the so-called "pointer explosion". The main symptom of the pointer explosion is when SourceGlider shows extremely big points-to sets for some variables in the program. It feels like those variables may refer to any object in the program. This reason of this phenomenon is the presence of the hub-methods. Those methods often perform some common operations on the data (sorting of arrays, searching the minimum/maximum, cloning, etc).

The hub-methods are called in many places of the program and all the data from different sources converge in those methods. The only way to divide back the data flow is to add these hub-methods to Arrays (Containers) Filters. For example, if there is a hub-method, which takes an array of elements of any type, sorts them and returns back, you may declare this method as array copy method. In this case all invocations of the method will be treated separately of each other.

Set up all the views to close after analysis kill

Set up the option Close after analysis kill in Window > Preferences... > Source Analysis > Views Activation for all the views. This is very useful if you want to quickly clean up the Eclipse workbench and get rid of annoying views. Simply close the Analysis Summary View, the analysis will be terminated in this case and all SourceGlider views will be hidden.