1. /*
  2. * @(#)TypeVariable.java 1.2 03/12/19
  3. *
  4. * Copyright 2004 Sun Microsystems, Inc. All rights reserved.
  5. * SUN PROPRIETARY/CONFIDENTIAL. Use is subject to license terms.
  6. *
  7. */
  8. package com.sun.javadoc;
  9. /**
  10. * Represents a type variable.
  11. * For example, the generic interface {@code List<E>} has a single
  12. * type variable {@code E}.
  13. * A type variable may have explicit bounds, as in
  14. * {@code C<R extends Remote>}.
  15. *
  16. * @author Scott Seligman
  17. * @version 1.2 03/12/19
  18. * @since 1.5
  19. */
  20. public interface TypeVariable extends Type {
  21. /**
  22. * Return the bounds of this type variable.
  23. * These are the types given by the <i>extends</i> clause.
  24. * Return an empty array if there are no explicit bounds.
  25. *
  26. * @return the bounds of this type variable.
  27. */
  28. Type[] bounds();
  29. /**
  30. * Return the class, interface, method, or constructor within
  31. * which this type variable is declared.
  32. *
  33. * @return the class, interface, method, or constructor within
  34. * which this type variable is declared.
  35. */
  36. ProgramElementDoc owner();
  37. }