This package contains the classes that implement the Java program slicer. The slicer is implemented in two parts. The first part is the detection of the slice. The second part is the construction of the slice. The first part depends on dependence analyses that are implemented in StaticAnalyses subproject. The second part tags the parts of the AST that form the slice. The rest of the logic pertaining to these two parts are realized by classes in this package.

SlicingEngine is the analysis part of the slicer. The slicing criteria are created via SliceCriteriaFactory and the engine will only accept criteria created via this factory.

ISliceResidualizer and TaggingBasedSliceResidualizer form the construction part of the slicer.