Patch: showval program

Tom Tromey tromey@cygnus.com
Thu Jul 20 12:36:00 GMT 2000


I'm checking in my "showval" reverse-engineering program.

2000-07-20  Tom Tromey  <tromey@cygnus.com>

	* scripts/showval.java: New file.

Tom

Index: scripts/showval.java
===================================================================
RCS file: showval.java
diff -N showval.java
--- /dev/null	Tue May  5 13:32:27 1998
+++ showval.java	Thu Jul 20 12:34:45 2000
@@ -0,0 +1,41 @@
+// Show a value given class name and constant name.
+
+/* Copyright (C) 2000  Free Software Foundation
+
+   This file is part of libgcj.
+
+This software is copyrighted work licensed under the terms of the
+Libgcj License.  Please consult the file "LIBGCJ_LICENSE" for
+details.  */
+
+/* Written by Tom Tromey <tromey@redhat.com>.  */
+
+// Use like this to print a `static final' value (integers only, not
+// strings yet):
+//   java showval java.awt.geom.AffineTransform.TYPE_IDENTITY
+// Prints result like:
+//   TYPE_IDENTITY = 0
+// In conjunction with a keyboard macro you can do a number of
+// constants very easily.
+
+import java.lang.reflect.*;
+
+public class showval
+{
+  public static void main (String[] args)
+  {
+    int ch = args[0].lastIndexOf ('.');
+    String className = args[0].substring (0, ch);
+    String constName = args[0].substring (ch + 1);
+    try
+      {
+	Class klass = Class.forName (className);
+	Field field = klass.getField (constName);
+	System.out.println (constName + " = " + field.getInt (null));
+      }
+    catch (Throwable _)
+      {
+	System.out.println (_);
+      }
+  }
+}


More information about the Java-patches mailing list