Search in sources :

Example 11 with JVMLocalDeclaration

use of st.gravel.support.compiler.jvm.JVMLocalDeclaration in project gravel by gravel-st.

the class ASMMethodWriter method produceLocalVariableInfo.

private void produceLocalVariableInfo(Label startLabel, JVMLocalDeclaration[] jvmLocalDeclarations) {
    Label varLabel = new Label();
    mv.visitLabel(varLabel);
    for (JVMLocalDeclaration local : jvmLocalDeclarations) {
        mv.visitLocalVariable(local.varName(), local.type().descriptorString(), null, startLabel, varLabel, local.index());
    }
}
Also used : Label(org.objectweb.asm.Label) JVMLocalDeclaration(st.gravel.support.compiler.jvm.JVMLocalDeclaration)

Aggregations

JVMLocalDeclaration (st.gravel.support.compiler.jvm.JVMLocalDeclaration)11 ArrayList (java.util.ArrayList)5 JVMInstruction (st.gravel.support.compiler.jvm.JVMInstruction)4 List (java.util.List)3 PushString (st.gravel.support.compiler.jvm.PushString)3 Frame (st.gravel.support.compiler.jvm.Frame)2 JVMStack (st.gravel.support.compiler.jvm.JVMStack)2 JVMType (st.gravel.support.compiler.jvm.JVMType)2 BigInteger (java.math.BigInteger)1 Label (org.objectweb.asm.Label)1 BlockSendArgument (st.gravel.support.compiler.jvm.BlockSendArgument)1 JVMField (st.gravel.support.compiler.jvm.JVMField)1 JVMMethodConstant (st.gravel.support.compiler.jvm.JVMMethodConstant)1 JVMVariable (st.gravel.support.compiler.jvm.JVMVariable)1 Load (st.gravel.support.compiler.jvm.Load)1