aboutsummaryrefslogtreecommitdiff
path: root/files/.vim/autoload/Reflection.java
diff options
context:
space:
mode:
Diffstat (limited to 'files/.vim/autoload/Reflection.java')
-rw-r--r--files/.vim/autoload/Reflection.java670
1 files changed, 0 insertions, 670 deletions
diff --git a/files/.vim/autoload/Reflection.java b/files/.vim/autoload/Reflection.java
deleted file mode 100644
index 5452b0f..0000000
--- a/files/.vim/autoload/Reflection.java
+++ /dev/null
@@ -1,670 +0,0 @@
-/**
- * Reflection.java
- *
- * A utility class for javacomplete mainly for reading class or package information.
- * Version: 0.77
- * Maintainer: cheng fang <fangread@yahoo.com.cn>
- * Last Change: 2007-09-16
- * Copyright: Copyright (C) 2007 cheng fang. All rights reserved.
- * License: Vim License (see vim's :help license)
- *
- */
-
-import java.lang.reflect.*;
-import java.io.*;
-import java.util.*;
-import java.util.zip.*;
-
-class Reflection {
- static final String VERSION = "0.77";
-
- static final int OPTION_FIELD = 1;
- static final int OPTION_METHOD = 2;
- static final int OPTION_STATIC_FIELD = 4;
- static final int OPTION_STATIC_METHOD = 8;
- static final int OPTION_CONSTRUCTOR = 16;
- static final int OPTION_STATIC = 12; // compound static
- static final int OPTION_INSTANCE = 15; // compound instance
- static final int OPTION_ALL = 31; // compound all
- static final int OPTION_SUPER = 32;
- static final int OPTION_SAME_PACKAGE = 64;
-
- static final int STRATEGY_ALPHABETIC = 128;
- static final int STRATEGY_HIERARCHY = 256;
- static final int STRATEGY_DEFAULT = 512;
-
- static final int RETURN_ALL_PACKAGE_INFO = 0x1000;
-
- static final String KEY_NAME = "'n':"; // "'name':";
- static final String KEY_TYPE = "'t':"; // "'type':";
- static final String KEY_MODIFIER = "'m':"; // "'modifier':";
- static final String KEY_PARAMETERTYPES = "'p':"; // "'parameterTypes':";
- static final String KEY_RETURNTYPE = "'r':"; // "'returnType':";
- static final String KEY_DESCRIPTION = "'d':"; // "'description':";
- static final String KEY_DECLARING_CLASS = "'c':"; // "'declaringclass':";
-
- static final String NEWLINE = ""; // "\r\n"
-
- static boolean debug_mode = false;
-
- static Hashtable htClasspath = new Hashtable();
-
- public static boolean existed(String fqn) {
- boolean result = false;
- try {
- Class.forName(fqn);
- result = true;
- }
- catch (Exception ex) {
- }
- return result;
- }
-
- public static String existedAndRead(String fqns) {
- Hashtable mapPackages = new Hashtable(); // qualified name --> StringBuffer
- Hashtable mapClasses = new Hashtable(); // qualified name --> StringBuffer
-
- for (StringTokenizer st = new StringTokenizer(fqns, ","); st.hasMoreTokens(); ) {
- String fqn = st.nextToken();
- try {
- Class clazz = Class.forName(fqn);
- putClassInfo(mapClasses, clazz);
- }
- catch (Exception ex) {
- String binaryName = fqn;
- boolean found = false;
- while (true) {
- try {
- int lastDotPos = binaryName.lastIndexOf('.');
- if (lastDotPos == -1)
- break;
- binaryName = binaryName.substring(0, lastDotPos) + '$' + binaryName.substring(lastDotPos+1, binaryName.length());
- Class clazz = Class.forName(binaryName);
- putClassInfo(mapClasses, clazz);
- found = true;
- break;
- }
- catch (Exception e) {
- }
- }
- if (!found)
- putPackageInfo(mapPackages, fqn);
- }
- }
-
- if (mapPackages.size() > 0 || mapClasses.size() > 0) {
- StringBuffer sb = new StringBuffer(4096);
- sb.append("{");
- for (Enumeration e = mapPackages.keys(); e.hasMoreElements(); ) {
- String s = (String)e.nextElement();
- sb.append("'").append( s.replace('$', '.') ).append("':").append(mapPackages.get(s)).append(",");
- }
- for (Enumeration e = mapClasses.keys(); e.hasMoreElements(); ) {
- String s = (String)e.nextElement();
- sb.append("'").append( s.replace('$', '.') ).append("':").append(mapClasses.get(s)).append(",");
- }
- sb.append("}");
- return sb.toString();
- }
- else
- return "";
- }
-
- private static String getPackageList(String fqn) {
- Hashtable mapPackages = new Hashtable();
- putPackageInfo(mapPackages, fqn);
- return mapPackages.size() > 0 ? mapPackages.get(fqn).toString() : "";
- }
-
- private static Hashtable collectClassPath() {
- if (!htClasspath.isEmpty())
- return htClasspath;
-
- // runtime classes
- if ("Kaffe".equals(System.getProperty("java.vm.name"))) {
- addClasspathesFromDir(System.getProperty("java.home") + File.separator + "share" + File.separator + "kaffe" + File.separator);
- }
- else if ("GNU libgcj".equals(System.getProperty("java.vm.name"))) {
- if (new File(System.getProperty("sun.boot.class.path")).exists())
- htClasspath.put(System.getProperty("sun.boot.class.path"), "");
- }
-
- if (System.getProperty("java.vendor").toLowerCase(Locale.US).indexOf("microsoft") >= 0) {
- // `*.ZIP` files in `Packages` directory
- addClasspathesFromDir(System.getProperty("java.home") + File.separator + "Packages" + File.separator);
- }
- else {
- // the following code works for several kinds of JDK
- // - JDK1.1: classes.zip
- // - JDK1.2+: rt.jar
- // - JDK1.4+ of Sun and Apple: rt.jar + jce.jar + jsse.jar
- // - JDK1.4 of IBM split rt.jar into core.jar, graphics.jar, server.jar
- // combined jce.jar and jsse.jar into security.jar
- // - JDK for MacOS X split rt.jar into classes.jar, ui.jar in Classes directory
- addClasspathesFromDir(System.getProperty("java.home") + File.separator + "lib" + File.separator);
- addClasspathesFromDir(System.getProperty("java.home") + File.separator + "jre" + File.separator + "lib" + File.separator);
- addClasspathesFromDir(System.getProperty("java.home") + File.separator + ".." + File.separator + "Classes" + File.separator);
- }
-
- // ext
- String extdirs = System.getProperty("java.ext.dirs");
- for (StringTokenizer st = new StringTokenizer(extdirs, File.pathSeparator); st.hasMoreTokens(); ) {
- addClasspathesFromDir(st.nextToken() + File.separator);
- }
-
- // user classpath
- String classPath = System.getProperty("java.class.path");
- StringTokenizer st = new StringTokenizer(classPath, File.pathSeparator);
- while (st.hasMoreTokens()) {
- String path = st.nextToken();
- File f = new File(path);
- if (!f.exists())
- continue;
-
- if (path.endsWith(".jar") || path.endsWith(".zip"))
- htClasspath.put(f.toString(), "");
- else {
- if (f.isDirectory())
- htClasspath.put(f.toString(), "");
- }
- }
-
- return htClasspath;
- }
-
- private static void addClasspathesFromDir(String dirpath) {
- File dir = new File(dirpath);
- if (dir.isDirectory()) {
- String[] items = dir.list(); // use list() instead of listFiles() since the latter are introduced in 1.2
- for (int i = 0; i < items.length; i++) {
- File f = new File(dirpath + items[i]);
- if (!f.exists())
- continue;
-
- if (items[i].endsWith(".jar") || items[i].endsWith(".zip") || items[i].endsWith(".ZIP")) {
- htClasspath.put(f.toString(), "");
- }
- else if (items.equals("classes")) {
- if (f.isDirectory())
- htClasspath.put(f.toString(), "");
- }
- }
- }
- }
-
-
- /**
- * If name is empty, put all loadable package info into map once.
- */
- private static void putPackageInfo(Hashtable map, String name) {
- String prefix = name.replace('.', '/') + "/";
- Hashtable subpackages = new Hashtable();
- Hashtable classes = new Hashtable();
- for (Enumeration e = collectClassPath().keys(); e.hasMoreElements(); ) {
- String path = (String)e.nextElement();
- if (path.endsWith(".jar") || path.endsWith(".zip"))
- appendListFromJar(subpackages, classes, path, prefix);
- else
- appendListFromFolder(subpackages, classes, path, prefix);
- }
-
- if (subpackages.size() > 0 || classes.size() > 0) {
- StringBuffer sb = new StringBuffer(1024);
- sb.append("{'tag':'PACKAGE','subpackages':[");
- for (Enumeration e = subpackages.keys(); e.hasMoreElements(); ) {
- sb.append("'").append(e.nextElement()).append("',");
- }
- sb.append("],'classes':[");
- for (Enumeration e = classes.keys(); e.hasMoreElements(); ) {
- sb.append("'").append(e.nextElement()).append("',");
- }
- sb.append("]}");
- map.put(name, sb.toString());
- }
- }
-
- public static void appendListFromJar(Hashtable subpackages, Hashtable classes, String path, String prefix) {
- try {
- for (Enumeration entries = new ZipFile(path).entries(); entries.hasMoreElements(); ) {
- String entry = entries.nextElement().toString();
- int len = entry.length();
- if (entry.endsWith(".class") && entry.indexOf('$') == -1
- && entry.startsWith(prefix)) {
- int splitPos = entry.indexOf('/', prefix.length());
- String shortname = entry.substring(prefix.length(), splitPos == -1 ? entry.length()-6 : splitPos);
- if (splitPos == -1) {
- if (!classes.containsKey(shortname))
- classes.put(shortname, ""); //classes.put(shortname, "{'tag':'CLASSDEF','name':'"+shortname+"'}");
- }
- else {
- if (!subpackages.containsKey(shortname))
- subpackages.put(shortname, ""); //subpackages.put(shortname, "{'tag':'PACKAGE','name':'" +shortname+"'}");
- }
- }
- }
- }
- catch (Throwable e) {
- //e.printStackTrace();
- }
- }
-
- public static void appendListFromFolder(Hashtable subpackages, Hashtable classes, String path, String prefix) {
- try {
- String fullPath = path + "/" + prefix;
- File file = new File(fullPath);
- if (file.isDirectory()) {
- String[] descents = file.list();
- for (int i = 0; i < descents.length; i++) {
- if (descents[i].indexOf('$') == -1) {
- if (descents[i].endsWith(".class")) {
- String shortname = descents[i].substring(0, descents[i].length()-6);
- if (!classes.containsKey(shortname))
- classes.put(shortname, "");
- }
- else if ((new File(fullPath + "/" + descents[i])).isDirectory()) {
- if (!subpackages.containsKey(descents[i]))
- subpackages.put(descents[i], "");
- }
- }
- }
- }
- }
- catch (Throwable e) {
- }
- }
-
- private static int INDEX_PACKAGE = 0;
- private static int INDEX_CLASS = 1;
-
- // generate information of all packages in jar files.
- public static String getPackageList() {
- Hashtable map = new Hashtable();
-
- for (Enumeration e = collectClassPath().keys(); e.hasMoreElements(); ) {
- String path = (String)e.nextElement();
- if (path.endsWith(".jar") || path.endsWith(".zip"))
- appendListFromJar(path, map);
- }
-
- StringBuffer sb = new StringBuffer(4096);
- sb.append("{");
- //sb.append("'*':'").append( map.remove("") ).append("',"); // default package
- for (Enumeration e = map.keys(); e.hasMoreElements(); ) {
- String s = (String)e.nextElement();
- StringBuffer[] sbs = (StringBuffer[])map.get(s);
- sb.append("'").append( s.replace('/', '.') ).append("':")
- .append("{'tag':'PACKAGE'");
- if (sbs[INDEX_PACKAGE].length() > 0)
- sb.append(",'subpackages':[").append(sbs[INDEX_PACKAGE]).append("]");
- if (sbs[INDEX_CLASS].length() > 0)
- sb.append(",'classes':[").append(sbs[INDEX_CLASS]).append("]");
- sb.append("},");
- }
- sb.append("}");
- return sb.toString();
-
- }
-
- public static void appendListFromJar(String path, Hashtable map) {
- try {
- for (Enumeration entries = new ZipFile(path).entries(); entries.hasMoreElements(); ) {
- String entry = entries.nextElement().toString();
- int len = entry.length();
- if (entry.endsWith(".class") && entry.indexOf('$') == -1) {
- int slashpos = entry.lastIndexOf('/');
- String parent = entry.substring(0, slashpos);
- String child = entry.substring(slashpos+1, len-6);
- putItem(map, parent, child, INDEX_CLASS);
-
- slashpos = parent.lastIndexOf('/');
- if (slashpos != -1) {
- AddToParent(map, parent.substring(0, slashpos), parent.substring(slashpos+1));
- }
- }
- }
- }
- catch (Throwable e) {
- //e.printStackTrace();
- }
- }
-
- public static void putItem(Hashtable map, String parent, String child, int index) {
- StringBuffer[] sbs = (StringBuffer[])map.get(parent);
- if (sbs == null) {
- sbs = new StringBuffer[] { new StringBuffer(256), // packages
- new StringBuffer(256) // classes
- };
- }
- if (sbs[index].toString().indexOf("'" + child + "',") == -1)
- sbs[index].append("'").append(child).append("',");
- map.put(parent, sbs);
- }
-
- public static void AddToParent(Hashtable map, String parent, String child) {
- putItem(map, parent, child, INDEX_PACKAGE);
-
- int slashpos = parent.lastIndexOf('/');
- if (slashpos != -1) {
- AddToParent(map, parent.substring(0, slashpos), parent.substring(slashpos+1));
- }
- }
-
-
- public static String getClassInfo(String className) {
- Hashtable mapClasses = new Hashtable();
- try {
- Class clazz = Class.forName(className);
- putClassInfo(mapClasses, clazz);
- }
- catch (Exception ex) {
- }
-
- if (mapClasses.size() == 1) {
- return mapClasses.get(className).toString(); // return {...}
- }
- else if (mapClasses.size() > 1) {
- StringBuffer sb = new StringBuffer(4096);
- sb.append("[");
- for (Enumeration e = mapClasses.keys(); e.hasMoreElements(); ) {
- String s = (String)e.nextElement();
- sb.append(mapClasses.get(s)).append(",");
- }
- sb.append("]");
- return sb.toString(); // return [...]
- }
- else
- return "";
- }
-
- private static void putClassInfo(Hashtable map, Class clazz) {
- if (map.containsKey(clazz.getName()))
- return ;
-
- try {
- StringBuffer sb = new StringBuffer(1024);
- sb.append("{")
- .append("'tag':'CLASSDEF',").append(NEWLINE)
- .append("'flags':'").append(Integer.toString(clazz.getModifiers(), 2)).append("',").append(NEWLINE)
- .append("'name':'").append(clazz.getName().replace('$', '.')).append("',").append(NEWLINE)
- //.append("'package':'").append(clazz.getPackage().getName()).append("',").append(NEWLINE) // no getPackage() in JDK1.1
- .append("'classpath':'1',").append(NEWLINE)
- .append("'fqn':'").append(clazz.getName().replace('$', '.')).append("',").append(NEWLINE);
-
- Class[] interfaces = clazz.getInterfaces();
- if (clazz.isInterface()) {
- sb.append("'extends':[");
- } else {
- Class superclass = clazz.getSuperclass();
- if (superclass != null && !"java.lang.Object".equals(superclass.getName())) {
- sb.append("'extends':['").append(superclass.getName().replace('$', '.')).append("'],").append(NEWLINE);
- putClassInfo(map, superclass); // !!
- }
- sb.append("'implements':[");
- }
- for (int i = 0, n = interfaces.length; i < n; i++) {
- sb.append("'").append(interfaces[i].getName().replace('$', '.')).append("',");
- putClassInfo(map, interfaces[i]); // !!
- }
- sb.append("],").append(NEWLINE);;
-
- Constructor[] ctors = clazz.getConstructors();
- sb.append("'ctors':[");
- for (int i = 0, n = ctors.length; i < n; i++) {
- Constructor ctor = ctors[i];
- sb.append("{");
- appendModifier(sb, ctor.getModifiers());
- appendParameterTypes(sb, ctor.getParameterTypes());
- sb.append(KEY_DESCRIPTION).append("'").append(ctors[i].toString()).append("'");
- sb.append("},").append(NEWLINE);
- }
- sb.append("], ").append(NEWLINE);
-
- Field[] fields = clazz.getFields();
- //java.util.Arrays.sort(fields, comparator);
- sb.append("'fields':[");
- for (int i = 0, n = fields.length; i < n; i++) {
- Field f = fields[i];
- int modifier = f.getModifiers();
- sb.append("{");
- sb.append(KEY_NAME).append("'").append(f.getName()).append("',");
- if (!f.getDeclaringClass().getName().equals(clazz.getName()))
- sb.append(KEY_DECLARING_CLASS).append("'").append(f.getDeclaringClass().getName()).append("',");
- appendModifier(sb, modifier);
- sb.append(KEY_TYPE).append("'").append(f.getType().getName()).append("'");
- sb.append("},").append(NEWLINE);
- }
- sb.append("], ").append(NEWLINE);
-
- Method[] methods = clazz.getMethods();
- //java.util.Arrays.sort(methods, comparator);
- sb.append("'methods':[");
- for (int i = 0, n = methods.length; i < n; i++) {
- Method m = methods[i];
- int modifier = m.getModifiers();
- sb.append("{");
- sb.append(KEY_NAME).append("'").append(m.getName()).append("',");
- if (!m.getDeclaringClass().getName().equals(clazz.getName()))
- sb.append(KEY_DECLARING_CLASS).append("'").append(m.getDeclaringClass().getName()).append("',");
- appendModifier(sb, modifier);
- sb.append(KEY_RETURNTYPE).append("'").append(m.getReturnType().getName()).append("',");
- appendParameterTypes(sb, m.getParameterTypes());
- sb.append(KEY_DESCRIPTION).append("'").append(m.toString()).append("'");
- sb.append("},").append(NEWLINE);
- }
- sb.append("], ").append(NEWLINE);
-
- Class[] classes = clazz.getClasses();
- sb.append("'classes': [");
- for (int i = 0, n = classes.length; i < n; i++) {
- Class c = classes[i];
- sb.append("'").append(c.getName().replace('$', '.')).append("',");
- putClassInfo(map, c); // !!
- }
- sb.append("], ").append(NEWLINE);
-
- appendDeclaredMembers(map, clazz, sb);
-
- sb.append("}");
- map.put(clazz.getName(), sb);
- }
- catch (Exception ex) {
- //ex.printStackTrace();
- }
- }
-
- private static void appendDeclaredMembers(Hashtable map, Class clazz, StringBuffer sb) {
- Constructor[] ctors = clazz.getDeclaredConstructors();
- sb.append("'declared_ctors':[");
- for (int i = 0, n = ctors.length; i < n; i++) {
- Constructor ctor = ctors[i];
- if (!Modifier.isPublic(ctor.getModifiers())) {
- sb.append("{");
- appendModifier(sb, ctor.getModifiers());
- appendParameterTypes(sb, ctor.getParameterTypes());
- sb.append(KEY_DESCRIPTION).append("'").append(ctors[i].toString()).append("'");
- sb.append("},").append(NEWLINE);
- }
- }
- sb.append("], ").append(NEWLINE);
-
- Field[] fields = clazz.getDeclaredFields();
- sb.append("'declared_fields':[");
- for (int i = 0, n = fields.length; i < n; i++) {
- Field f = fields[i];
- int modifier = f.getModifiers();
- if (!Modifier.isPublic(modifier)) {
- sb.append("{");
- sb.append(KEY_NAME).append("'").append(f.getName()).append("',");
- if (!f.getDeclaringClass().getName().equals(clazz.getName()))
- sb.append(KEY_DECLARING_CLASS).append("'").append(f.getDeclaringClass().getName()).append("',");
- appendModifier(sb, modifier);
- sb.append(KEY_TYPE).append("'").append(f.getType().getName()).append("'");
- sb.append("},").append(NEWLINE);
- }
- }
- sb.append("], ").append(NEWLINE);
-
- Method[] methods = clazz.getDeclaredMethods();
- sb.append("'declared_methods':[");
- for (int i = 0, n = methods.length; i < n; i++) {
- Method m = methods[i];
- int modifier = m.getModifiers();
- if (!Modifier.isPublic(modifier)) {
- sb.append("{");
- sb.append(KEY_NAME).append("'").append(m.getName()).append("',");
- if (!m.getDeclaringClass().getName().equals(clazz.getName()))
- sb.append(KEY_DECLARING_CLASS).append("'").append(m.getDeclaringClass().getName()).append("',");
- appendModifier(sb, modifier);
- sb.append(KEY_RETURNTYPE).append("'").append(m.getReturnType().getName()).append("',");
- appendParameterTypes(sb, m.getParameterTypes());
- sb.append(KEY_DESCRIPTION).append("'").append(m.toString()).append("'");
- sb.append("},").append(NEWLINE);
- }
- }
- sb.append("], ").append(NEWLINE);
-
- Class[] classes = clazz.getDeclaredClasses();
- sb.append("'declared_classes': [");
- for (int i = 0, n = classes.length; i < n; i++) {
- Class c = classes[i];
- if (!Modifier.isPublic(c.getModifiers())) {
- sb.append("'").append(c.getName().replace('$', '.')).append("',");
- putClassInfo(map, c); // !!
- }
- }
- sb.append("], ").append(NEWLINE);
- }
-
- private static void appendModifier(StringBuffer sb, int modifier) {
- sb.append(KEY_MODIFIER).append("'").append(Integer.toString(modifier, 2)).append("', ");
- }
-
- private static void appendParameterTypes(StringBuffer sb, Class[] paramTypes) {
- if (paramTypes.length == 0) return ;
-
- sb.append(KEY_PARAMETERTYPES).append("[");
- for (int j = 0; j < paramTypes.length; j++) {
- sb.append("'").append(paramTypes[j].getName()).append("',");
- }
- sb.append("],");
- }
-
- private static boolean isBlank(String str) {
- int len;
- if (str == null || (len = str.length()) == 0)
- return true;
- for (int i = 0; i < len; i++)
- if ((Character.isWhitespace(str.charAt(i)) == false))
- return false;
- return true;
- }
-
- // test methods
-
- static void debug(String s) {
- if (debug_mode)
- System.out.println(s);
- }
- static void output(String s) {
- if (!debug_mode)
- System.out.print(s);
- }
-
-
- private static void usage() {
- System.out.println("Reflection for javacomplete (" + VERSION + ")");
- System.out.println(" java [-classpath] Reflection [-c] [-d] [-e] [-h] [-v] [-p] [-s] name[,comma_separated_name_list]");
- System.out.println("Options:");
- System.out.println(" -a list all members in alphabetic order");
- System.out.println(" -c list constructors");
- System.out.println(" -C return class info");
- System.out.println(" -d default strategy, i.e. instance fields, instance methods, static fields, static methods");
- System.out.println(" -e check class existed");
- System.out.println(" -E check class existed and read class information");
- System.out.println(" -D debug mode");
- System.out.println(" -p list package content");
- System.out.println(" -P print all package info in the Vim dictionary format");
- System.out.println(" -s list static fields and methods");
- System.out.println(" -h help");
- System.out.println(" -v version");
- }
-
- public static void main(String[] args) {
- String className = null;
- int option = 0x0;
- boolean wholeClassInfo = false;
- boolean onlyStatic = false;
- boolean onlyConstructor = false;
- boolean listPackageContent = false;
- boolean checkExisted = false;
- boolean checkExistedAndRead = false;
- boolean allPackageInfo = false;
-
- for (int i = 0, n = args.length; i < n && !isBlank(args[i]); i++) {
- //debug(args[i]);
- if (args[i].charAt(0) == '-') {
- if (args[i].length() > 1) {
- switch (args[i].charAt(1)) {
- case 'a':
- break;
- case 'c': // request constructors
- option = option | OPTION_CONSTRUCTOR;
- onlyConstructor = true;
- break;
- case 'C': // class info
- wholeClassInfo = true;
- break;
- case 'd': // default strategy
- option = option | STRATEGY_DEFAULT;
- break;
- case 'D': // debug mode
- debug_mode = true;
- break;
- case 'e': // class existed
- checkExisted = true;
- break;
- case 'E': // check existed and read class information
- checkExistedAndRead = true;
- break;
- case 'h': // help
- usage();
- return ;
- case 'v': // version
- System.out.println("Reflection for javacomplete (" + VERSION + ")");
- break;
- case 'p':
- listPackageContent = true;
- break;
- case 'P':
- option = RETURN_ALL_PACKAGE_INFO;
- break;
- case 's': // request static members
- option = option | OPTION_STATIC_METHOD | OPTION_STATIC_FIELD;
- onlyStatic = true;
- break;
- default:
- }
- }
- }
- else {
- className = args[i];
- }
- }
- if (className == null && (option & RETURN_ALL_PACKAGE_INFO) != RETURN_ALL_PACKAGE_INFO) {
- return;
- }
- if (option == 0x0)
- option = OPTION_INSTANCE;
-
- if (wholeClassInfo)
- output( getClassInfo(className) );
- else if ((option & RETURN_ALL_PACKAGE_INFO) == RETURN_ALL_PACKAGE_INFO)
- output( getPackageList() );
- else if (checkExistedAndRead)
- output( existedAndRead(className) );
- else if (checkExisted)
- output( String.valueOf(existed(className)) );
- else if (listPackageContent)
- output( getPackageList(className) );
- }
-}