Direct Known Subclasses:
NullTypeBinding, VoidTypeBinding

public class BaseTypeBinding extends TypeBinding
  • Field Details

  • Method Details

    • initializeConversions

      public static final int[] initializeConversions()
    • isNarrowing

      public static final boolean isNarrowing(int left, int right)
      Predicate telling whether "left" can store a "right" using some narrowing conversion (is left smaller than right)
      Parameters:
      left - - the target type to convert to
      right - - the actual type
      Returns:
      true if legal narrowing conversion
    • isWidening

      public static final boolean isWidening(int left, int right)
      Predicate telling whether "left" can store a "right" using some widening conversion (is left bigger than right)
      Parameters:
      left - - the target type to convert to
      right - - the actual type
      Returns:
      true if legal widening conversion
    • computeUniqueKey

      public char[] computeUniqueKey(boolean isLeaf)
      int -> I
      Overrides:
      computeUniqueKey in class Binding
    • constantPoolName

      public char[] constantPoolName()
      Description copied from class: TypeBinding
      Answer the receiver's constant pool name. NOTE: This method should only be used during/after code gen. e.g. 'java/lang/Object'
      Specified by:
      constantPoolName in class TypeBinding
    • clone

      public TypeBinding clone(TypeBinding enclosingType)
      Description copied from class: TypeBinding
      Virtual copy constructor: a copy is made of the receiver's entire instance state and then suitably parameterized by the arguments to the clone operation as seen fit by each type. Parameters may not make sense for every type in the hierarchy, in which case they are silently ignored. A type may choose to retain a copy of the prototype for reference.
      Overrides:
      clone in class TypeBinding
    • getPackage

      public PackageBinding getPackage()
      Specified by:
      getPackage in class TypeBinding
    • isCompatibleWith

      public final boolean isCompatibleWith(TypeBinding right, Scope captureScope)
      Specified by:
      isCompatibleWith in class TypeBinding
    • setTypeAnnotations

      public void setTypeAnnotations(AnnotationBinding[] annotations, boolean evalNullAnnotations)
      Overrides:
      setTypeAnnotations in class TypeBinding
    • unannotated

      public TypeBinding unannotated()
      Description copied from class: TypeBinding
      Return this type minus its type annotations
      Overrides:
      unannotated in class TypeBinding
    • isUncheckedException

      public boolean isUncheckedException(boolean includeSupertype)
      T_null is acting as an unchecked exception
      Overrides:
      isUncheckedException in class TypeBinding
      See Also:
      TypeBinding.isUncheckedException(boolean)
    • kind

      public int kind()
      Overrides:
      kind in class TypeBinding
      See Also:
      Binding.kind()
    • qualifiedSourceName

      public char[] qualifiedSourceName()
      Description copied from class: TypeBinding
      Answer the source name for the type. In the case of member types, as the qualified name from its top level type. For example, for a member type N defined inside M & A: "A.M.N".
      Specified by:
      qualifiedSourceName in class TypeBinding
    • readableName

      public char[] readableName()
      Specified by:
      readableName in class Binding
    • shortReadableName

      public char[] shortReadableName()
      Overrides:
      shortReadableName in class Binding
    • sourceName

      public char[] sourceName()
      Specified by:
      sourceName in class TypeBinding
    • toString

      public String toString()
      Overrides:
      toString in class Object