<s> package org . eclipse . jdt . core . dom ; import java . util . ArrayList ; import java . util . List ; public class ContinueStatement extends Statement { public static final ChildPropertyDescriptor LABEL_PROPERTY = new ChildPropertyDescriptor ( ContinueStatement . class , "label" , SimpleName . class , OPTIONAL , NO_CYCLE_RISK ) ; private static final List PROPERTY_DESCRIPTORS ; static { List properyList = new ArrayList ( 2 ) ; createPropertyList ( ContinueStatement . class , properyList ) ; addProperty ( LABEL_PROPERTY , properyList ) ; PROPERTY_DESCRIPTORS = reapPropertyList ( properyList ) ; } public static List propertyDescriptors ( int apiLevel ) { return PROPERTY_DESCRIPTORS ; } private SimpleName optionalLabel = null ; ContinueStatement ( AST ast ) { super ( ast ) ; } final List internalStructuralPropertiesForType ( int apiLevel ) { return propertyDescriptors ( apiLevel ) ; } final ASTNode internalGetSetChildProperty ( ChildPropertyDescriptor property , boolean get , ASTNode child ) { if ( property == LABEL_PROPERTY ) { if ( get ) { return getLabel ( ) ; } else { setLabel ( ( SimpleName ) child ) ; return null ; } } return super . internalGetSetChildProperty ( property , get , child ) ; } final int getNodeType0 ( ) { return CONTINUE_STATEMENT ; } ASTNode clone0 ( AST target ) { ContinueStatement result = new ContinueStatement ( target ) ; result . setSourceRange ( getStartPosition ( ) , getLength ( ) ) ; result . copyLeadingComment ( this ) ; result . setLabel ( ( SimpleName ) ASTNode . copySubtree ( target , getLabel ( ) ) ) ; return result ; } final boolean subtreeMatch0 ( ASTMatcher matcher , Object other ) { return matcher . match ( this , other ) ; } void accept0 ( ASTVisitor visitor ) { boolean visitChildren = visitor . visit ( this ) ; if ( visitChildren ) { acceptChild ( visitor , getLabel ( ) ) ; } visitor . endVisit ( this ) ; } public SimpleName getLabel ( ) { return this . optionalLabel ; } public void setLabel ( SimpleName label ) { ASTNode oldChild = this . optionalLabel ; preReplaceChild ( oldChild , label , LABEL_PROPERTY ) ; this . optionalLabel = label ; postReplaceChild ( oldChild , label , LABEL_PROPERTY ) ; } int memSize ( ) { return super . memSize ( ) + 1 * 4 ; } int treeSize ( ) { return memSize ( ) + ( this . optionalLabel == null ? 0 : getLabel ( ) . treeSize ( ) ) ; } } </s>