Class JNullType

All Implemented Interfaces:
JGenerable, Comparable<JType>

public final class JNullType extends JClass
Special class object that represents the type of "null".

Use this class with care.

  • Constructor Details

  • Method Details

    • name

      public String name()
      Description copied from class: JClass
      Gets the name of this class.
      Specified by:
      name in class JClass
      Returns:
      name of this class, without any qualification. For example, this method returns "String" for java.lang.String.
    • fullName

      public String fullName()
      Description copied from class: JType
      Gets the full name of the type. See http://java.sun.com/docs/books/jls/second_edition/html/names.doc.html#25430 for the details.
      Specified by:
      fullName in class JType
      Returns:
      Strings like "int", "java.lang.String", "java.io.File[]". Never null.
    • _package

      public JPackage _package()
      Description copied from class: JClass
      Gets the package to which this class belongs. TODO: shall we move move this down?
      Specified by:
      _package in class JClass
    • _extends

      public JClass _extends()
      Description copied from class: JClass
      Gets the super class of this class.
      Specified by:
      _extends in class JClass
      Returns:
      Returns the JClass representing the superclass of the entity (class or interface) represented by this JClass. Even if no super class is given explicitly or this JClass is not a class, this method still returns JClass for Object. If this JClass represents Object, return null.
    • _implements

      public Iterator<JClass> _implements()
      Description copied from class: JClass
      Iterates all super interfaces directly implemented by this class/interface.
      Specified by:
      _implements in class JClass
      Returns:
      A non-null valid iterator that iterates all JClass objects that represents those interfaces implemented by this object.
    • isInterface

      public boolean isInterface()
      Description copied from class: JClass
      Checks if this object represents an interface.
      Specified by:
      isInterface in class JClass
    • isAbstract

      public boolean isAbstract()
      Description copied from class: JClass
      Checks if this class is an abstract class.
      Specified by:
      isAbstract in class JClass
    • substituteParams

      protected JClass substituteParams(JTypeVar[] variables, List<JClass> bindings)
      Description copied from class: JClass
      Substitutes the type variables with their actual arguments.

      For example, when this class is Map<String,Map<V>>, (where V then doing substituteParams( V, Integer ) returns a JClass for Map<String,Map<Integer>>.

      This method needs to work recursively.

      Specified by:
      substituteParams in class JClass