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