//Copyright 2006-2007 Acelet Corporation. All rights reserved.
package limpidlog.asm1;
import java.util.*;
import limpidlog.org.objectweb.asm.ClassWriter;
import limpidlog.org.objectweb.asm.MethodVisitor;
/**
* @author Wei Jiang
*/
public class ClassPreVisitor extends ClassWriter {
Hashtable labelVectorHashtable = new Hashtable();
Hashtable localVariableVectorHashtable = new Hashtable();
public ClassPreVisitor() {
super(0);
}
public MethodVisitor visitMethod(int access, String methodName, String desc, String signature,
String[] exceptions) {
MethodVisitor aMethodVisitor =
super.visitMethod(access, methodName, desc, signature, exceptions);
Hashtable lableVariableHashtable = new Hashtable();
String key = methodName + desc;
localVariableVectorHashtable.put(key, lableVariableHashtable);
Vector labelVector = new Vector();
labelVectorHashtable.put(key, labelVector);
MethodPreVisitor preVisitor = new MethodPreVisitor(aMethodVisitor, access, methodName,
desc, labelVector, lableVariableHashtable);
return preVisitor;
}
}