| /******************************************************************************* |
| * Copyright (c) 2000, 2006 IBM Corporation and others. |
| * All rights reserved. This program and the accompanying materials |
| * are made available under the terms of the Eclipse Public License v1.0 |
| * which accompanies this distribution, and is available at |
| * http://www.eclipse.org/legal/epl-v10.html |
| * |
| * Contributors: |
| * IBM Corporation - initial API and implementation |
| *******************************************************************************/ |
| package org.eclipse.jdt.internal.compiler.env; |
| |
| public interface ISourceType extends IGenericType { |
| |
| /** |
| * Answer the source end position of the type's declaration. |
| */ |
| int getDeclarationSourceEnd(); |
| |
| /** |
| * Answer the source start position of the type's declaration. |
| */ |
| int getDeclarationSourceStart(); |
| |
| /** |
| * Answer the enclosing type |
| * or null if the receiver is a top level type. |
| */ |
| ISourceType getEnclosingType(); |
| |
| /** |
| * Answer the receiver's fields. |
| * |
| * NOTE: Multiple fields with the same name can exist in the result. |
| */ |
| ISourceField[] getFields(); |
| |
| /** |
| * Answer the unresolved names of the receiver's interfaces |
| * or null if the array is empty. |
| * |
| * A name is a simple name or a qualified, dot separated name. |
| * For example, Hashtable or java.util.Hashtable. |
| */ |
| char[][] getInterfaceNames(); |
| |
| /** |
| * Answer the receiver's member types. |
| */ |
| ISourceType[] getMemberTypes(); |
| |
| /** |
| * Answer the receiver's methods. |
| * |
| * NOTE: Multiple methods with the same name & parameter types can exist in the result. |
| */ |
| ISourceMethod[] getMethods(); |
| |
| /** |
| * Answer the simple source name of the receiver. |
| */ |
| char[] getName(); |
| |
| /** |
| * Answer the source end position of the type's name. |
| */ |
| int getNameSourceEnd(); |
| |
| /** |
| * Answer the source start position of the type's name. |
| */ |
| int getNameSourceStart(); |
| |
| /** |
| * Answer the unresolved name of the receiver's superclass |
| * or null if it does not have one. |
| * |
| * The name is a simple name or a qualified, dot separated name. |
| * For example, Hashtable or java.util.Hashtable. |
| */ |
| char[] getSuperclassName(); |
| /** |
| * Answer the array of bound names of the receiver's type parameters. |
| */ |
| char[][][] getTypeParameterBounds(); |
| /** |
| * Answer the names of the receiver's type parameters. |
| */ |
| char[][] getTypeParameterNames(); |
| |
| /** |
| * Answer whether the receiver type is anonymous |
| */ |
| boolean isAnonymous(); |
| } |