summaryrefslogtreecommitdiff
path: root/vm
diff options
context:
space:
mode:
authorKeith Seitz <keiths@redhat.com>2006-03-10 00:14:05 +0000
committerKeith Seitz <keiths@redhat.com>2006-03-10 00:14:05 +0000
commit6597b109ed3c316cf6f5374d369ee9e3419acd7f (patch)
treeddc733d87b333dbc2072105bf04efa727f7d377d /vm
parentf814c4db6a39e8b2dce710ed5c7352eaff036d2c (diff)
downloadclasspath-6597b109ed3c316cf6f5374d369ee9e3419acd7f.tar.gz
* gnu/classpath/jdwp/processor/MethodCommandSet.java
(executeVariableTable): Use VMMethod instead of reflection. (executeLineTable): Likewise. * gnu/classpath/jdwp/processor/ReferenceTypeCommandSet.java (executeMethods): Rewrite to use new VMVirtualMachine.getAllClassMethods. * vm/reference/gnu/classpath/jdwp/VMVirtualMachine.java (getLineTable): Removed. Now resides in VMMethod. (getVarTable): Likewise. (getAllClassMethods): New method.
Diffstat (limited to 'vm')
-rw-r--r--vm/reference/gnu/classpath/jdwp/VMVirtualMachine.java40
1 files changed, 10 insertions, 30 deletions
diff --git a/vm/reference/gnu/classpath/jdwp/VMVirtualMachine.java b/vm/reference/gnu/classpath/jdwp/VMVirtualMachine.java
index 2bb716724..31f68cb6e 100644
--- a/vm/reference/gnu/classpath/jdwp/VMVirtualMachine.java
+++ b/vm/reference/gnu/classpath/jdwp/VMVirtualMachine.java
@@ -44,10 +44,7 @@ package gnu.classpath.jdwp;
import gnu.classpath.jdwp.event.EventRequest;
import gnu.classpath.jdwp.exception.InvalidMethodException;
import gnu.classpath.jdwp.exception.JdwpException;
-import gnu.classpath.jdwp.util.LineTable;
import gnu.classpath.jdwp.util.MethodResult;
-import gnu.classpath.jdwp.util.VariableTable;
-
import java.lang.reflect.Method;
import java.nio.ByteBuffer;
import java.util.ArrayList;
@@ -194,6 +191,16 @@ public class VMVirtualMachine
throws JdwpException;
/**
+ * Returns all of the methods defined in the given class. This
+ * includes all methods, constructors, and class initializers.
+ *
+ * @param klass the class whose methods are desired
+ * @return an array of virtual machine methods
+ */
+ public static native VMMethod[] getAllClassMethods (Class klass)
+ throws JdwpException;
+
+ /**
* A factory method for getting valid virtual machine methods
* which may be passed to/from the debugger.
*
@@ -281,33 +288,6 @@ public class VMVirtualMachine
throws JdwpException;
/**
- * "Returns variable information for the method. The variable table
- * includes arguments and locals declared within the method. For instance
- * methods, the "this" reference is included in the table. Also, synthetic
- * variables may be present."
- *
- * @param clazz the class in which the method is defined
- * @param method the method for which variable information is desired
- * @return a result object containing the information
- */
- public static native VariableTable getVarTable (Class clazz, Method method)
- throws JdwpException;
-
- /**
- * "Returns line number information for the method, if present. The line
- * table maps source line numbers to the initial code index of the line.
- * The line table is ordered by code index (from lowest to highest). The
- * line number information is constant unless a new class definition is
- * installed using RedefineClasses."
- *
- * @param clazz the class in which the method is defined
- * @param method the method whose line table is desired
- * @return a result object containing the line table
- */
- public static native LineTable getLineTable (Class clazz, Method method)
- throws JdwpException;
-
- /**
* "Returns the name of source file in which a reference type was declared"
*
* @param clazz the class for which to return a source file