/*
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* under the terms of the GNU General Public License version 2 only, as
* published by the Free Software Foundation. Oracle designates this
* particular file as subject to the "Classpath" exception as provided
* by Oracle in the LICENSE file that accompanied this code.
*
* This code is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
* version 2 for more details (a copy is included in the LICENSE file that
* accompanied this code).
*
* You should have received a copy of the GNU General Public License version
* 2 along with this work; if not, write to the Free Software Foundation,
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
*
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
implements Method {
throws AbsentInformationException;
int lineNumber)
throws AbsentInformationException;
long ref,
}
long ref,
int modifiers) {
if ((modifiers &
} else {
}
}
} else {
return false;
}
}
public int hashCode() {
return (int)ref();
}
throws AbsentInformationException {
}
throws AbsentInformationException {
}
throws AbsentInformationException {
null, lineNumber);
}
int lineNumber)
throws AbsentInformationException {
}
long codeIndex) {
} else {
}
}
/**
* @return a text representation of the declared return type
* of this method.
*/
return signatureParser.typeName();
}
return signatureParser.signature();
}
return findType(returnSignature());
}
}
return signatureParser.argumentTypeNames();
}
return signatureParser.argumentSignatures();
}
}
for (int i = 0; i < size; i++) {
}
return types;
}
if (rc == 0) {
}
return rc;
}
public boolean isAbstract() {
}
public boolean isSynchronized() {
}
public boolean isNative() {
}
public boolean isVarArgs() {
}
public boolean isBridge() {
}
public boolean isConstructor() {
}
public boolean isStaticInitializer() {
}
public boolean isObsolete() {
try {
} catch (JDWPException exc) {
throw exc.toJDIException();
}
}
/*
* A container class for the return value to allow
* proper type-checking.
*/
ReturnContainer() {
}
return returnType();
}
return returnTypeName();
}
return returnSignature(); //type().signature();
}
}
}
if (retValContainer == null) {
retValContainer = new ReturnContainer();
}
return retValContainer;
}
/*
* A container class for the argument to allow
* proper type-checking.
*/
int index;
}
return argumentType(index);
}
}
}
}
}
/*
* This is a var args method. Thus, its last param is an
* array. If the method has n params, then:
* 1. If there are n args and the last is the same type as the type of
* the last param, do nothing. IE, a String[]
* can be passed to a String...
* 2. If there are >= n arguments and for each arg whose number is >= n,
* the arg type is 'compatible' with the component type of
* the last param, then do
* - create an array of the type of the last param
* - put the n, ... args into this array.
* We might have to do conversions here.
* - put this array into arguments(n)
* - delete arguments(n+1), ...
* NOTE that this might modify the input list.
*/
throws ClassNotLoadedException, InvalidTypeException {
// Error; will be caught later.
return;
}
// It is ok to pass 0 args to the var arg.
// We have to gen a 0 length array.
return;
}
if (nthArgValue == null) {
return;
}
if (nthArgType instanceof ArrayTypeImpl) {
if (argCount == paramCount &&
/*
* This is case 1. A compatible array is being passed to the
* var args array param. We don't have to do anything.
*/
return;
}
}
/*
* Case 2. We have to verify that the n, n+1, ... args are compatible
* with componentType, and do conversions if necessary and create
* an array of componentType to hold these possibly converted values.
*/
/*
* This will copy arguments(paramCount - 1) ... to argArray(0) ...
* doing whatever conversions are needed! It will throw an
* exception if an incompatible arg is encountered
*/
/*
* Remove the excess args
*/
}
return;
}
/*
* The output list will be different than the input list.
*/
throws ClassNotLoadedException, InvalidTypeException {
if (isVarArgs()) {
}
throw new IllegalArgumentException("Invalid argument count: expected " +
}
for (int i = 0; i < argSize; i++) {
new ArgumentContainer(i));
}
return arguments;
}
boolean first = true;
if (!first) {
}
first = false;
}
}
}