/******************************************************************************* | |
* Copyright (c) 2000, 2004 IBM Corporation and others. | |
* All rights reserved. This program and the accompanying materials | |
* are made available under the terms of the Common Public License v1.0 | |
* which accompanies this distribution, and is available at | |
* http://www.eclipse.org/legal/cpl-v10.html | |
* | |
* Contributors: | |
* IBM Corporation - initial API and implementation | |
*******************************************************************************/ | |
package org.eclipse.wst.jsdt.internal.compiler.env; | |
// clinit methods (synthetics too?) can be returned from IBinaryType>>getMethods() | |
// BUT do not have to be... the compiler will ignore them when building the binding. | |
// The synthetic argument of a member type's constructor (ie. the first arg of a non-static | |
// member type) is also ignored by the compiler, BUT in this case it must be included | |
// in the constructor's signature. | |
public interface IBinaryMethod extends IGenericMethod { | |
/** | |
* Answer the resolved names of the exception types in the | |
* class file format as specified in section 4.2 of the Java 2 VM spec | |
* or null if the array is empty. | |
* | |
* For example, java.lang.String is java/lang/String. | |
*/ | |
char[][] getExceptionTypeNames(); | |
/** | |
* Answer the receiver's method descriptor which describes the parameter & | |
* return types as specified in section 4.4.3 of the Java 2 VM spec. | |
* | |
* For example: | |
* - int foo(String) is (Ljava/lang/String;)I | |
* - Object[] foo(int) is (I)[Ljava/lang/Object; | |
*/ | |
char[] getMethodDescriptor(); | |
/** | |
* Answer the receiver's signature which describes the parameter & | |
* return types as specified in section 4.4.4 of the Java 2 VM spec. | |
*/ | |
char[] getGenericSignature(); | |
/** | |
* Answer whether the receiver represents a class initializer method. | |
*/ | |
boolean isClinit(); | |
} |