Class UType

java.lang.Object
com.google.errorprone.refaster.UType
All Implemented Interfaces:
Unifiable<com.sun.tools.javac.code.Type>, Serializable
Direct Known Subclasses:
UClassType, UForAll, UIntersectionClassType, UMethodType, UTypeVar

public abstract class UType extends Object implements Unifiable<com.sun.tools.javac.code.Type>
A serializable representation of a type template, used for enforcing type constraints on target ASTs.
Author:
Louis Wasserman
See Also:
  • Constructor Details

    • UType

      public UType()
  • Method Details

    • visitType

      public @Nullable Choice<Unifier> visitType(com.sun.tools.javac.code.Type t, @Nullable Unifier unifier)
    • unify

      public final Choice<Unifier> unify(com.sun.tools.javac.code.Type target, Unifier unifier)
      Description copied from interface: Unifiable
      Returns all valid unification paths (if any) from this Unifier that unify this with target.
      Specified by:
      unify in interface Unifiable<com.sun.tools.javac.code.Type>
    • inline

      com.sun.tools.javac.code.Type inline(Inliner inliner) throws CouldNotResolveImportException
      Throws:
      CouldNotResolveImportException
    • visitCapturedType

      public Choice<Unifier> visitCapturedType(com.sun.tools.javac.code.Type.CapturedType arg0, Unifier arg1)
    • visitForAll

      public Choice<Unifier> visitForAll(com.sun.tools.javac.code.Type.ForAll arg0, Unifier arg1)
    • visitUndetVar

      public Choice<Unifier> visitUndetVar(com.sun.tools.javac.code.Type.UndetVar arg0, Unifier arg1)
    • visit

      public final Choice<Unifier> visit(com.sun.tools.javac.code.Type arg0, Unifier arg1)
    • visitClassType

      public Choice<Unifier> visitClassType(com.sun.tools.javac.code.Type.ClassType arg0, Unifier arg1)
    • visitWildcardType

      public Choice<Unifier> visitWildcardType(com.sun.tools.javac.code.Type.WildcardType arg0, Unifier arg1)
    • visitArrayType

      public Choice<Unifier> visitArrayType(com.sun.tools.javac.code.Type.ArrayType arg0, Unifier arg1)
    • visitMethodType

      public Choice<Unifier> visitMethodType(com.sun.tools.javac.code.Type.MethodType arg0, Unifier arg1)
    • visitPackageType

      public Choice<Unifier> visitPackageType(com.sun.tools.javac.code.Type.PackageType arg0, Unifier arg1)
    • visitModuleType

      public Choice<Unifier> visitModuleType(com.sun.tools.javac.code.Type.ModuleType arg0, Unifier arg1)
    • visitTypeVar

      public Choice<Unifier> visitTypeVar(com.sun.tools.javac.code.Type.TypeVar arg0, Unifier arg1)
    • visitErrorType

      public Choice<Unifier> visitErrorType(com.sun.tools.javac.code.Type.ErrorType arg0, Unifier arg1)