Class F2AReducer
java.lang.Object
org.checkerframework.framework.util.typeinference.constraint.F2AReducer
- All Implemented Interfaces:
AFReducer
F2AReducer takes an F2A constraint that is not irreducible (@see AFConstraint.isIrreducible) and
reduces it by one step. The resulting constraint may still be reducible.
Generally reductions should map to corresponding rules in https://docs.oracle.com/javase/specs/jls/se17/html/jls-15.html#jls-15.12.2.7
-
Field Summary
Modifier and TypeFieldDescriptionprotected final org.checkerframework.framework.util.typeinference.constraint.F2AReducer.F2AReducingVisitor
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionboolean
reduce
(AFConstraint constraint, Set<AFConstraint> newConstraints) Determines if the input constraint should be handled by this reducer.
-
Field Details
-
visitor
protected final org.checkerframework.framework.util.typeinference.constraint.F2AReducer.F2AReducingVisitor visitor
-
-
Constructor Details
-
F2AReducer
-
-
Method Details
-
reduce
Description copied from interface:AFReducer
Determines if the input constraint should be handled by this reducer. If so: Reduces the constraint into one or more new constraints. Any new constraint that can still be reduced is placed in newConstraints. New irreducible constraints are placed in finish. Return true Return false (indicating that some other reducer needs to handle this constraint) If false is returned, the reducer should NOT place any constraints in newConstraints or finished
-