FileDocCategorySizeDatePackage
ProfileMethodClass.javaAPI DocExample5290Mon Dec 28 21:46:02 GMT 1998tuning.profview

ProfileMethodClass

public class ProfileMethodClass extends Object
This class was generated by a SmartGuide.

Fields Summary
String
classname
int
arraydepth
public static final ProfileMethodClass
long_
public static final ProfileMethodClass
int_
public static final ProfileMethodClass
char_
public static final ProfileMethodClass
short_
public static final ProfileMethodClass
byte_
public static final ProfileMethodClass
double_
public static final ProfileMethodClass
float_
public static final ProfileMethodClass
boolean_
public static final ProfileMethodClass
void_
public static final ProfileMethodClass
long_x
public static final ProfileMethodClass
int_x
public static final ProfileMethodClass
char_x
public static final ProfileMethodClass
short_x
public static final ProfileMethodClass
byte_x
public static final ProfileMethodClass
double_x
public static final ProfileMethodClass
float_x
public static final ProfileMethodClass
boolean_x
public static final ProfileMethodClass
void_x
Constructors Summary
public ProfileMethodClass(boolean isArray, String classname)
This method was created by a SmartGuide.

param
classname java.lang.String


           
    

	this.arraydepth = isArray ? 1 : 0;
	this.classname = classname;
public ProfileMethodClass(int arraydepth, String classname)

	this.arraydepth = arraydepth;
	this.classname = classname;
Methods Summary
public voidappendTo(java.lang.StringBuffer s)
This method was created by a SmartGuide.

param
s java.lang.StringBuffer

	s.append(classname);
	for (int i = arraydepth ; i > 0; i--)
		s.append("[]");
public static tuning.profview.ProfileMethodClass[]getClasses(java.lang.String classname)
This method was created by a SmartGuide.

	return getClasses(classname,0);
static tuning.profview.ProfileMethodClass[]getClasses(java.lang.String classname, int position)
This method was created by a SmartGuide.

	int length = classname.length();
	java.util.Vector v = new java.util.Vector();
	boolean isArray;
	int arrdepth=0;
	while(position < length)
	{
		isArray = false;
		if (classname.charAt(position) == '[")
		{
			isArray = true;
			arrdepth++;
			position++;
			while(classname.charAt(position) == '[")
			{
    			position++;
    			arrdepth++;
    		}
		}
		switch(classname.charAt(position))
		{
			case 'J":
				position++;
				v.addElement(isArray ? 
				 (arrdepth<2 ? ProfileMethodClass.long_x : ProfileMethodClass.long_):
				 new ProfileMethodClass(isArray,"long"));
				break;
			case 'I":
				position++;
				v.addElement(isArray ? 
				 (arrdepth<2 ? ProfileMethodClass.int_x : ProfileMethodClass.int_):
				 new ProfileMethodClass(isArray,"int"));
				break;
			case 'C":
				position++;
				v.addElement(isArray ? 
				 (arrdepth<2 ? ProfileMethodClass.char_x : ProfileMethodClass.char_):
				 new ProfileMethodClass(isArray,"char"));
				break;
			case 'B":
				position++;
				v.addElement(isArray ? 
				 (arrdepth<2 ? ProfileMethodClass.byte_x : ProfileMethodClass.byte_):
				 new ProfileMethodClass(isArray,"byte"));
				break;
			case 'S":
				position++;
				v.addElement(isArray ? 
				 (arrdepth<2 ? ProfileMethodClass.short_x : ProfileMethodClass.short_):
				 new ProfileMethodClass(isArray,"short"));
				break;
			case 'V":
				position++;
				v.addElement(isArray ? 
				 (arrdepth<2 ? ProfileMethodClass.void_x : ProfileMethodClass.void_):
				 new ProfileMethodClass(isArray,"void"));
				break;
			case 'F":
				position++;
				v.addElement(isArray ? 
				 (arrdepth<2 ? ProfileMethodClass.float_x : ProfileMethodClass.float_):
				 new ProfileMethodClass(isArray,"float"));
				break;
			case 'D":
				position++;
				v.addElement(isArray ? 
				 (arrdepth<2 ? ProfileMethodClass.double_x : ProfileMethodClass.double_):
				 new ProfileMethodClass(isArray,"double"));
				break;
			case 'Z":
				position++;
				v.addElement(isArray ? 
				 (arrdepth<2 ? ProfileMethodClass.boolean_x : ProfileMethodClass.boolean_):
				 new ProfileMethodClass(isArray,"boolean"));
				break;
			case 'L":
				position++;
				v.addElement(new ProfileMethodClass(isArray,
						classname.substring(position,
							(position = classname.indexOf(';",position))).replace('/",'.")));
				position++;
				break;
			default:
				throw new IllegalArgumentException("Unkown type: " + classname);
		}
	}
	ProfileMethodClass[] ret = new ProfileMethodClass[length = v.size()];
	for (int i = 0; i < length; i++)
		ret[i] = (ProfileMethodClass) v.elementAt(i);
	return ret;