Class PropagationTreeAnnotator

All Implemented Interfaces:
TreeVisitor<Void,AnnotatedTypeMirror>
Direct Known Subclasses:
NullnessAnnotatedTypeFactory.NullnessPropagationTreeAnnotator

public class PropagationTreeAnnotator extends TreeAnnotator
PropagationTreeAnnotator adds qualifiers to types where the resulting type is a function of an input type.

By default, it applies LUBs, e.g., the result of a binary operation is a LUB of the type of expressions in the binary operation, and likewise for compound operations. It also handles unary expressions, array creation, and casts.

PropagationTreeAnnotator is generally run first by ListTreeAnnotator since the trees it handles are not usually targets of @DefaultFor.

PropagationTreeAnnotator does not traverse trees deeply by default.

See Also: