Package org.apache.tapestry5.internal.plastic.asm

Examples of org.apache.tapestry5.internal.plastic.asm.Label


    private void doCatch(String exceptionInternalName, InstructionBuilderCallback callback)
    {
        check();

        Label handler = state.newLabel();

        callback.doBuild(builder);

        state.visitor.visitTryCatchBlock(startLabel, endLabel, handler, exceptionInternalName);
    }
View Full Code Here


        check();

        assert condition != null;
        assert callback != null;

        Label ifFalseLabel = new Label();
        Label endIfLabel = new Label();

        v.visitJumpInsn(conditionToOpcode.get(condition), ifFalseLabel);

        new InstructionBuilderCallback()
        {
View Full Code Here

        check();

        assert condition != null;
        assert callback != null;

        Label doCheck = state.newLabel();

        Label exitLoop = new Label();

        new InstructionBuilderCallback()
        {
            @Override
            public void doBuild(InstructionBuilder builder)
View Full Code Here

        this.builder = builder;
        this.state = state;
        this.min = min;
        this.max = max;

        defaultLabel = new Label();
        endSwitchLabel = new Label();

        caseLabels = new Label[max - min + 1];

        for (int i = min; i <= max; i++)
        {
            caseLabels[i - min] = new Label();
        }

        state.visitor.visitTableSwitchInsn(min, max, defaultLabel, caseLabels);
    }
View Full Code Here

        check();

        assert condition != null;
        assert callback != null;

        Label ifFalseLabel = new Label();
        Label endIfLabel = new Label();

        v.visitJumpInsn(conditionToOpcode.get(condition), ifFalseLabel);

        new InstructionBuilderCallback()
        {
View Full Code Here

        check();

        assert condition != null;
        assert callback != null;

        Label doCheck = state.newLabel();

        Label exitLoop = new Label();

        new InstructionBuilderCallback()
        {
            public void doBuild(InstructionBuilder builder)
            {
View Full Code Here

        return LABEL;
    }

    public Label getLabel() {
        if (label == null) {
            label = new Label();
        }
        return label;
    }
View Full Code Here

            }
            return sb.toString();
        }

        protected final Label getLabel(final Object label) {
            Label lbl = (Label) labels.get(label);
            if (lbl == null) {
                lbl = new Label();
                labels.put(label, lbl);
            }
            return lbl;
        }
View Full Code Here

     * TryCatchRule
     */
    final class TryCatchRule extends Rule {

        public final void begin(final String name, final Attributes attrs) {
            Label start = getLabel(attrs.getValue("start"));
            Label end = getLabel(attrs.getValue("end"));
            Label handler = getLabel(attrs.getValue("handler"));
            String type = attrs.getValue("type");
            getCodeVisitor().visitTryCatchBlock(start, end, handler, type);
        }
View Full Code Here

     */
    final class LineNumberRule extends Rule {

        public final void begin(final String name, final Attributes attrs) {
            int line = Integer.parseInt(attrs.getValue("line"));
            Label start = getLabel(attrs.getValue("start"));
            getCodeVisitor().visitLineNumber(line, start);
        }
View Full Code Here

TOP

Related Classes of org.apache.tapestry5.internal.plastic.asm.Label

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.