001    package railo.transformer.bytecode;
002    
003    import org.objectweb.asm.Label;
004    
005    import railo.transformer.bytecode.statement.FlowControl;
006    
007    public abstract class FlowControlBody extends BodyBase implements FlowControl {
008    
009            private Label end = new Label();
010            
011            /**
012             *
013             * @see railo.transformer.bytecode.Body#_writeOut(org.objectweb.asm.commons.GeneratorAdapter)
014             */
015            public void _writeOut(BytecodeContext bc) throws BytecodeException {
016                    
017                    super._writeOut(bc);
018                    bc.getAdapter().visitLabel(end);
019            }
020    
021            /**
022             *
023             * @see railo.transformer.bytecode.statement.FlowControl#getBreakLabel()
024             */
025            public Label getBreakLabel() {
026                    return end;
027            }
028    
029            /**
030             *
031             * @see railo.transformer.bytecode.statement.FlowControl#getContinueLabel()
032             */
033            public Label getContinueLabel() {
034                    return end;
035            }
036    }