Interface ManTypes


public interface ManTypes
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    static final ThreadLocal<Map<com.sun.tools.javac.util.Pair<String,String>, Boolean>>
     
  • Method Summary

    Modifier and Type
    Method
    Description
    default boolean
    _isAssignableToStructuralType(com.sun.tools.javac.code.Type t, com.sun.tools.javac.code.Type s)
     
    default com.sun.tools.javac.code.Type
    eraseTypeVars(com.sun.tools.javac.code.Type type)
     
    static void
    getAllFields(com.sun.tools.javac.code.Type t, Predicate<com.sun.tools.javac.code.Symbol.VarSymbol> filter, Set<com.sun.tools.javac.code.Symbol.VarSymbol> tFields)
     
    static void
    getAllMethods(com.sun.tools.javac.code.Type t, Predicate<com.sun.tools.javac.code.Symbol.MethodSymbol> filter, Set<com.sun.tools.javac.code.Symbol.MethodSymbol> tMethods)
     
    default boolean
    hasStructurallyEquivalentArgs(com.sun.tools.javac.code.Symbol.MethodSymbol t, com.sun.tools.javac.code.Symbol.MethodSymbol s)
     
    default boolean
    isAssignableToStructuralType(com.sun.tools.javac.code.Type t, com.sun.tools.javac.code.Type s)
    Is t structurally assignable to structural interface s?
    default boolean
    isGetterMatch(com.sun.tools.javac.code.Symbol.MethodSymbol sm, String tName, com.sun.tools.javac.code.Type tType)
     
    default boolean
    isGetterRecordAccessorMatch(com.sun.tools.javac.code.Symbol.MethodSymbol sm, com.sun.tools.javac.code.Symbol.MethodSymbol t)
     
    default boolean
    isSetterFieldMatch(com.sun.tools.javac.code.Symbol.MethodSymbol sm, com.sun.tools.javac.code.Symbol.VarSymbol tf)
     
    default boolean
    isStructuralMatch(com.sun.tools.javac.code.Symbol.MethodSymbol sm, com.sun.tools.javac.code.Symbol.MethodSymbol tm)
     
    com.sun.tools.javac.code.Types
     
    default boolean
    verifyTuple(com.sun.tools.javac.code.Type t, com.sun.tools.javac.code.Type s, Set<com.sun.tools.javac.code.Symbol.VarSymbol> tFields)
     
  • Field Details

  • Method Details

    • types

      com.sun.tools.javac.code.Types types()
    • isAssignableToStructuralType

      default boolean isAssignableToStructuralType(com.sun.tools.javac.code.Type t, com.sun.tools.javac.code.Type s)
      Is t structurally assignable to structural interface s?

      Note, this tests the _erased_ types of t and s. Handling generics here is a bridge too for, for now.

    • _isAssignableToStructuralType

      default boolean _isAssignableToStructuralType(com.sun.tools.javac.code.Type t, com.sun.tools.javac.code.Type s)
    • verifyTuple

      default boolean verifyTuple(com.sun.tools.javac.code.Type t, com.sun.tools.javac.code.Type s, Set<com.sun.tools.javac.code.Symbol.VarSymbol> tFields)
    • eraseTypeVars

      default com.sun.tools.javac.code.Type eraseTypeVars(com.sun.tools.javac.code.Type type)
    • isStructuralMatch

      default boolean isStructuralMatch(com.sun.tools.javac.code.Symbol.MethodSymbol sm, com.sun.tools.javac.code.Symbol.MethodSymbol tm)
    • isGetterMatch

      default boolean isGetterMatch(com.sun.tools.javac.code.Symbol.MethodSymbol sm, String tName, com.sun.tools.javac.code.Type tType)
    • isSetterFieldMatch

      default boolean isSetterFieldMatch(com.sun.tools.javac.code.Symbol.MethodSymbol sm, com.sun.tools.javac.code.Symbol.VarSymbol tf)
    • getAllMethods

      static void getAllMethods(com.sun.tools.javac.code.Type t, Predicate<com.sun.tools.javac.code.Symbol.MethodSymbol> filter, Set<com.sun.tools.javac.code.Symbol.MethodSymbol> tMethods)
    • isGetterRecordAccessorMatch

      default boolean isGetterRecordAccessorMatch(com.sun.tools.javac.code.Symbol.MethodSymbol sm, com.sun.tools.javac.code.Symbol.MethodSymbol t)
    • getAllFields

      static void getAllFields(com.sun.tools.javac.code.Type t, Predicate<com.sun.tools.javac.code.Symbol.VarSymbol> filter, Set<com.sun.tools.javac.code.Symbol.VarSymbol> tFields)
    • hasStructurallyEquivalentArgs

      default boolean hasStructurallyEquivalentArgs(com.sun.tools.javac.code.Symbol.MethodSymbol t, com.sun.tools.javac.code.Symbol.MethodSymbol s)