Skip to content

Analysis

To enable features, such as the integrated pseudocode disassembler and the class view, slicer creates in-memory models of classes.

By default, a partial version of the model is created for all classes in the background - this is called background analysis. When a class is to be disassembled or the like, a full version of the model is created and cached.

Search allows you to search for identifying aspects of class files, such as constant pool values and class members.

The search tab can be opened like any unscoped tab, using Analysis -> Search or by pressing Ctrl+Shift+F.

There are three search modes, selectable in the dropdown menu:

  • Partial match (case-sensitive)
  • Exact match (case-sensitive)
  • Regular expression (RegEx pattern occurrences)

Search example

Constant pool

Searching in the constant pool is done by checking for matches against disassembled representations of the underlying entries.

Commonly searched aspects and queries may look like this:

Searching?ModeQuery
All strings in the class fileRegular expression^STRING
Reference to a specific classExact match/anyCLASS package/SearchedClass
Reference to a specific fieldExact match/anyNAME_AND_TYPE theField Lthe/Type;
Reference to a specific methodExact match/anyNAME_AND_TYPE theMethod ()V

Members

Members are searched by their name and descriptor, delimited by a space: theField Lthe/Type; or theMethod ()V.

Commonly searched aspects and queries may look like this:

Searching?ModeQuery
Any field/method with a specific nameRegular expression^theField
Any method returning a specific typeRegular expression)Lthe/Type;$
Specific fieldExact match/anytheField Lthe/Type;
Specific methodExact match/anytheMethod ()V