package com.coderising.jvm.constant; import java.util.ArrayList; import java.util.List; import com.coderising.jvm.clz.ClassFile; public class ConstantPool { private List<ConstantInfo> constantInfos = new ArrayList<ConstantInfo>(); private ClassFile clzFile; public ConstantPool(ClassFile clzFile){ this.clzFile = clzFile; } public void addConstantInfo(ConstantInfo info){ this.constantInfos.add(info); } public ConstantInfo getConstantInfo(int index){ return this.constantInfos.get(index); } public String getUTF8String(int index){ return ((UTF8Info)this.constantInfos.get(index)).getValue(); } public int getSize() { return this.constantInfos.size() -1; } public List<ConstantInfo> getConstantInfos() { return constantInfos; } public void setConstantInfos(List<ConstantInfo> constantInfos) { this.constantInfos = constantInfos; } public ClassFile getClzFile() { return clzFile; } }