Package cdc.applic.factorization
Interface Cutter
-
public interface CutterCutter is used to cut objects that have an applicability.Given a target applicability, each object can be:
- included when its applicability is a non empty subset of target applicability
- excluded when its applicability is a non empty subset of complement of target applicability
- cut when its applicability intersects both target applicability and its complement.
- degenerated when its applicability intersects neither target applicability nor its complement.
- Author:
- Damien Carbonne
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description <T> List<CutEvent<T>>cut(List<? extends T> objects, Expression targetApplicability, ApplicabilityExtractor<? super T> applicabilityExtractor, FactorizationFeatures features)<T> voidcut(List<? extends T> objects, Expression targetApplicability, ApplicabilityExtractor<? super T> applicabilityExtractor, FactorizationFeatures features, CutHandler<T> handler)Cut the applicability of a list of objects in 2 parts.
-
-
-
Method Detail
-
cut
<T> void cut(List<? extends T> objects, Expression targetApplicability, ApplicabilityExtractor<? super T> applicabilityExtractor, FactorizationFeatures features, CutHandler<T> handler)
Cut the applicability of a list of objects in 2 parts.For each object in
objects, when applicability of object:- is a non-empty subset of
targetApplicability, invokesCutHandler.processIncludeObjectApplicability(Object). - is a non-empty subset of complement of
targetApplicability, invokesCutHandler.processExcludeObjectApplicability(Object). - straddles
targetApplicabilityand its complement, invokesCutHandler.processCutObjectApplicability(Object, Expression, Expression). - intersects neither
targetApplicabilitynor its complement, invokesCutHandler.processDegenerateObjectApplicability(Object).
- Type Parameters:
T- The object type.- Parameters:
objects- The objects.targetApplicability- The target applicability.applicabilityExtractor- The applicability extractor.features- The features to apply.handler- The event handler.
- is a non-empty subset of
-
cut
<T> List<CutEvent<T>> cut(List<? extends T> objects, Expression targetApplicability, ApplicabilityExtractor<? super T> applicabilityExtractor, FactorizationFeatures features)
-
-