001 package railo.transformer.bytecode.visitor; 002 003 import org.objectweb.asm.Opcodes; 004 import org.objectweb.asm.Type; 005 import org.objectweb.asm.commons.GeneratorAdapter; 006 007 public final class ArrayVisitor { 008 009 public void visitBegin(GeneratorAdapter adapter,Type type,int length) { 010 adapter.push(length); 011 adapter.newArray(type); 012 } 013 public void visitBeginItem(GeneratorAdapter adapter,int index) { 014 adapter.dup(); 015 adapter.push(index); 016 } 017 /*public void visitEndItem(BytecodeContext bc) { 018 bc.getAdapter().visitInsn(Opcodes.AASTORE); 019 }*/ 020 021 public void visitEndItem(GeneratorAdapter adapter) { 022 adapter.visitInsn(Opcodes.AASTORE); 023 } 024 025 public void visitEnd() { 026 } 027 028 }