X-Git-Url: http://git.phpeclipse.com diff --git a/net.sourceforge.phpeclipse/src/net/sourceforge/phpdt/core/jdom/IDOMType.java b/net.sourceforge.phpeclipse/src/net/sourceforge/phpdt/core/jdom/IDOMType.java index 5a4c62e..ef4c0ed 100644 --- a/net.sourceforge.phpeclipse/src/net/sourceforge/phpdt/core/jdom/IDOMType.java +++ b/net.sourceforge.phpeclipse/src/net/sourceforge/phpdt/core/jdom/IDOMType.java @@ -11,117 +11,142 @@ package net.sourceforge.phpdt.core.jdom; /** - * Represents a source type in a compilation unit, either as a top-level type or a member type. - * The corresponding syntactic units are ClassDeclaration (JLS2 8.1) and InterfaceDeclaration (JLS2 9.1). + * Represents a source type in a compilation unit, either as a top-level type or + * a member type. The corresponding syntactic units are ClassDeclaration (JLS2 + * 8.1) and InterfaceDeclaration (JLS2 9.1). *

- * Allowable child types for a type are IDOMType, IDOMField, - * IDOMMethod, and IDOMInitializer. - * Children are listed in the order in which they appear in the source. The parent of a type - * is a type (in the case of a member type) or a compilation unit (in the case of a top-level type). + * Allowable child types for a type are IDOMType, + * IDOMField, IDOMMethod, and + * IDOMInitializer. Children are listed in the order in which + * they appear in the source. The parent of a type is a type (in the case of a + * member type) or a compilation unit (in the case of a top-level type). *

*

* This interface is not intended to be implemented by clients. *

*/ public interface IDOMType extends IDOMMember { -/** - * Adds the given interface name to the names of interfaces that this type implements or extends - * (the name will be added after the existing interface names). This is a convenience method. - * - * For classes, this represents the interfaces that this class implements. - * For interfaces, this represents the interfaces that this interface extends. - * The name may or may not be fully qualified. - * - * @param interfaceName the syntax for an interface name is defined by - * Interfaces in ClassDeclaration (JLS2 8.1). Type names must be specified as they would - * appear in source code. For example: "Cloneable", "java.io.Serializable". - * - * @exception IllegalArgumentException if null is specified - */ -public void addSuperInterface(String interfaceName) throws IllegalArgumentException; -/** - * The IDOMType refinement of this IDOMNode - * method returns the name of this type. The name of a class is defined by - * ClassDeclaration (JLS2 8.1); the name of an interface is defined by - * InterfaceDeclaration (JLS2 9.1). - */ -public String getName(); -/** - * Returns the name of this type's superclass. The syntax for a superclass name - * is specified by Super in ClassDeclaration (JLS2 8.1). Type names must be - * specified as they would appear in source code. For example: - * "Object", or "java.io.File". - * - * @return the superclass name, or null if this type represents - * an interface or if no superclass has been assigned to this class - */ -public String getSuperclass(); -/** - * Returns the names of interfaces that this type implements or extends, - * in the order in which they are listed in the source, or an empty array - * if no superinterfaces are present. The syntax for interface names is - * defined by Interfaces in ClassDeclaration (JLS2 8.1). Type names appear - * as they would in source code. For example: "Cloneable", - * or "java.io.Serializable". - *

- * For classes, this method returns the interfaces that this class implements. - * For interfaces, this method returns the interfaces that this interface extends. - *

- * - * @return the list of interface names - */ -public String[] getSuperInterfaces(); -/** - * Returns whether this type is a class. - * - * @return true for classes, and false for interfaces - */ -public boolean isClass(); -/** - * Sets whether this type is a class or an interface. If this type is - * a class, and is changed to an interface, this type's superclass - * becomes null. When a class becomes an interface or an - * interface becomes a class, superinterfaces remain (as part of an - * implements clause for classes, or an extends - * clause for interfaces). - * - * @param b true for classes, and false for interfaces - */ -public void setClass(boolean b); -/** - * The IDOMType refinement of this IDOMNode - * method sets the name of this type. The name of a class is defined by - * ClassDeclaration (JLS2 8.1); the name of an interface is defined by - * InterfaceDeclaration (JLS2 9.1). - * - * @exception IllegalArgumentException if null is specified - */ -public void setName(String name) throws IllegalArgumentException; -/** - * Sets the name of this type's superclass. Has no effect if this type - * represents an interface. A null name indicates that no - * superclass name (extends clause) should appear in the source code. - * The syntax for a superclass name is specified by Super in ClassDeclaration - * (JLS2 8.1). Type names must be specified as they would appear in source code. - * For example: "Object", or "java.io.File". - * - * @param superclassName the superclass name, or null if this type - * should have to no explicitly specified superclass - */ -public void setSuperclass(String superclassName); -/** - * Sets the names of interfaces that this type implements or extends, - * in the order in which they are to be listed in the source. An empty array - * parameter indicates that no superinterfaces are present. The syntax for - * interface names is defined by Interfaces in ClassDeclaration (JLS2 8.1). - * Type names appear as they would in source code. For example: - * "Cloneable", or "java.io.Serializable". - *

- * For classes, this method sets the interfaces that this class implements. - * For interfaces, this method sets the interfaces that this interface extends. - *

- * - * @param interfaceNames the list of interface names - */ -public void setSuperInterfaces(String[] interfaceNames); + /** + * Adds the given interface name to the names of interfaces that this type + * implements or extends (the name will be added after the existing + * interface names). This is a convenience method. + * + * For classes, this represents the interfaces that this class implements. + * For interfaces, this represents the interfaces that this interface + * extends. The name may or may not be fully qualified. + * + * @param interfaceName + * the syntax for an interface name is defined by Interfaces in + * ClassDeclaration (JLS2 8.1). Type names must be specified as + * they would appear in source code. For example: "Cloneable", + * "java.io.Serializable". + * + * @exception IllegalArgumentException + * if null is specified + */ + public void addSuperInterface(String interfaceName) + throws IllegalArgumentException; + + /** + * The IDOMType refinement of this IDOMNode + * method returns the name of this type. The name of a class is defined by + * ClassDeclaration (JLS2 8.1); the name of an interface is defined by + * InterfaceDeclaration (JLS2 9.1). + */ + public String getName(); + + /** + * Returns the name of this type's superclass. The syntax for a superclass + * name is specified by Super in ClassDeclaration (JLS2 8.1). Type names + * must be specified as they would appear in source code. For example: + * "Object", or "java.io.File". + * + * @return the superclass name, or null if this type + * represents an interface or if no superclass has been assigned to + * this class + */ + public String getSuperclass(); + + /** + * Returns the names of interfaces that this type implements or extends, in + * the order in which they are listed in the source, or an empty array if no + * superinterfaces are present. The syntax for interface names is defined by + * Interfaces in ClassDeclaration (JLS2 8.1). Type names appear as they + * would in source code. For example: "Cloneable", or + * "java.io.Serializable". + *

+ * For classes, this method returns the interfaces that this class + * implements. For interfaces, this method returns the interfaces that this + * interface extends. + *

+ * + * @return the list of interface names + */ + public String[] getSuperInterfaces(); + + /** + * Returns whether this type is a class. + * + * @return true for classes, and false for + * interfaces + */ + public boolean isClass(); + + /** + * Sets whether this type is a class or an interface. If this type is a + * class, and is changed to an interface, this type's superclass becomes + * null. When a class becomes an interface or an interface + * becomes a class, superinterfaces remain (as part of an + * implements clause for classes, or an extends + * clause for interfaces). + * + * @param b + * true for classes, and false for + * interfaces + */ + public void setClass(boolean b); + + /** + * The IDOMType refinement of this IDOMNode + * method sets the name of this type. The name of a class is defined by + * ClassDeclaration (JLS2 8.1); the name of an interface is defined by + * InterfaceDeclaration (JLS2 9.1). + * + * @exception IllegalArgumentException + * if null is specified + */ + public void setName(String name) throws IllegalArgumentException; + + /** + * Sets the name of this type's superclass. Has no effect if this type + * represents an interface. A null name indicates that no + * superclass name (extends clause) should appear in the source code. The + * syntax for a superclass name is specified by Super in ClassDeclaration + * (JLS2 8.1). Type names must be specified as they would appear in source + * code. For example: "Object", or + * "java.io.File". + * + * @param superclassName + * the superclass name, or null if this type + * should have to no explicitly specified superclass + */ + public void setSuperclass(String superclassName); + + /** + * Sets the names of interfaces that this type implements or extends, in the + * order in which they are to be listed in the source. An empty array + * parameter indicates that no superinterfaces are present. The syntax for + * interface names is defined by Interfaces in ClassDeclaration (JLS2 8.1). + * Type names appear as they would in source code. For example: + * "Cloneable", or "java.io.Serializable". + *

+ * For classes, this method sets the interfaces that this class implements. + * For interfaces, this method sets the interfaces that this interface + * extends. + *

+ * + * @param interfaceNames + * the list of interface names + */ + public void setSuperInterfaces(String[] interfaceNames); }