class ContinueStmt extends Statement implements NodeWithOptionalLabel<ContinueStmt> {

    @OptionalProperty
    private SimpleName label;

    public ContinueStmt() {
        this(null, null);
    }

    public ContinueStmt(final String label) {
        this(null, new SimpleName(label));
    }

    @AllFieldsConstructor
    public ContinueStmt(final SimpleName label) {
        this(null, label);
    }

    /**
     * This constructor is used by the parser and is considered private.
     */
    @Generated("com.github.javaparser.generator.core.node.MainConstructorGenerator")
    public ContinueStmt(TokenRange tokenRange, SimpleName label) {
        super(tokenRange);
        setLabel(label);
        customInitialization();
    }

    @Override
    @Generated("com.github.javaparser.generator.core.node.AcceptGenerator")
    public <R, A> R accept(final GenericVisitor<R, A> v, final A arg) {
        return v.visit(this, arg);
    }

    @Override
    @Generated("com.github.javaparser.generator.core.node.AcceptGenerator")
    public <A> void accept(final VoidVisitor<A> v, final A arg) {
        v.visit(this, arg);
    }

    @Generated("com.github.javaparser.generator.core.node.PropertyGenerator")
    public Optional<SimpleName> getLabel() {
        return Optional.ofNullable(label);
    }

    /**
     * Sets the label
     *
     * @param label the label, can be null
     * @return this, the ContinueStmt
     */
    @Generated("com.github.javaparser.generator.core.node.PropertyGenerator")
    public ContinueStmt setLabel(final SimpleName label) {<FILL_FUNCTION_BODY>}

    @Override
    @Generated("com.github.javaparser.generator.core.node.RemoveMethodGenerator")
    public boolean remove(Node node) {
        if (node == null) {
            return false;
        }
        if (label != null) {
            if (node == label) {
                removeLabel();
                return true;
            }
        }
        return super.remove(node);
    }

    @Generated("com.github.javaparser.generator.core.node.RemoveMethodGenerator")
    public ContinueStmt removeLabel() {
        return setLabel((SimpleName) null);
    }

    @Override
    @Generated("com.github.javaparser.generator.core.node.CloneGenerator")
    public ContinueStmt clone() {
        return (ContinueStmt) accept(new CloneVisitor(), null);
    }

    @Override
    @Generated("com.github.javaparser.generator.core.node.GetMetaModelGenerator")
    public ContinueStmtMetaModel getMetaModel() {
        return JavaParserMetaModel.continueStmtMetaModel;
    }

    @Override
    @Generated("com.github.javaparser.generator.core.node.ReplaceMethodGenerator")
    public boolean replace(Node node, Node replacementNode) {
        if (node == null) {
            return false;
        }
        if (label != null) {
            if (node == label) {
                setLabel((SimpleName) replacementNode);
                return true;
            }
        }
        return super.replace(node, replacementNode);
    }

    @Override
    @Generated("com.github.javaparser.generator.core.node.TypeCastingGenerator")
    public boolean isContinueStmt() {
        return true;
    }

    @Override
    @Generated("com.github.javaparser.generator.core.node.TypeCastingGenerator")
    public ContinueStmt asContinueStmt() {
        return this;
    }

    @Override
    @Generated("com.github.javaparser.generator.core.node.TypeCastingGenerator")
    public void ifContinueStmt(Consumer<ContinueStmt> action) {
        action.accept(this);
    }

    @Override
    @Generated("com.github.javaparser.generator.core.node.TypeCastingGenerator")
    public Optional<ContinueStmt> toContinueStmt() {
        return Optional.of(this);
    }
}

        if (label == this.label) {
            return this;
        }
        notifyPropertyChange(ObservableProperty.LABEL, this.label, label);
        if (this.label != null)
            this.label.setParentNode(null);
        this.label = label;
        setAsParentNodeOf(label);
        return this;
    
<methods>public void <init>() ,public void <init>(com.github.javaparser.TokenRange) ,public com.github.javaparser.ast.stmt.AssertStmt asAssertStmt() ,public com.github.javaparser.ast.stmt.BlockStmt asBlockStmt() ,public com.github.javaparser.ast.stmt.BreakStmt asBreakStmt() ,public com.github.javaparser.ast.stmt.ContinueStmt asContinueStmt() ,public com.github.javaparser.ast.stmt.DoStmt asDoStmt() ,public com.github.javaparser.ast.stmt.EmptyStmt asEmptyStmt() ,public com.github.javaparser.ast.stmt.ExplicitConstructorInvocationStmt asExplicitConstructorInvocationStmt() ,public com.github.javaparser.ast.stmt.ExpressionStmt asExpressionStmt() ,public com.github.javaparser.ast.stmt.ForEachStmt asForEachStmt() ,public com.github.javaparser.ast.stmt.ForStmt asForStmt() ,public com.github.javaparser.ast.stmt.IfStmt asIfStmt() ,public com.github.javaparser.ast.stmt.LabeledStmt asLabeledStmt() ,public com.github.javaparser.ast.stmt.LocalClassDeclarationStmt asLocalClassDeclarationStmt() ,public com.github.javaparser.ast.stmt.LocalRecordDeclarationStmt asLocalRecordDeclarationStmt() ,public com.github.javaparser.ast.stmt.ReturnStmt asReturnStmt() ,public com.github.javaparser.ast.stmt.SwitchStmt asSwitchStmt() ,public com.github.javaparser.ast.stmt.SynchronizedStmt asSynchronizedStmt() ,public com.github.javaparser.ast.stmt.ThrowStmt asThrowStmt() ,public com.github.javaparser.ast.stmt.TryStmt asTryStmt() ,public com.github.javaparser.ast.stmt.UnparsableStmt asUnparsableStmt() ,public com.github.javaparser.ast.stmt.WhileStmt asWhileStmt() ,public com.github.javaparser.ast.stmt.YieldStmt asYieldStmt() ,public com.github.javaparser.ast.stmt.Statement clone() ,public com.github.javaparser.metamodel.StatementMetaModel getMetaModel() ,public void ifAssertStmt(Consumer<com.github.javaparser.ast.stmt.AssertStmt>) ,public void ifBlockStmt(Consumer<com.github.javaparser.ast.stmt.BlockStmt>) ,public void ifBreakStmt(Consumer<com.github.javaparser.ast.stmt.BreakStmt>) ,public void ifContinueStmt(Consumer<com.github.javaparser.ast.stmt.ContinueStmt>) ,public void ifDoStmt(Consumer<com.github.javaparser.ast.stmt.DoStmt>) ,public void ifEmptyStmt(Consumer<com.github.javaparser.ast.stmt.EmptyStmt>) ,public void ifExplicitConstructorInvocationStmt(Consumer<com.github.javaparser.ast.stmt.ExplicitConstructorInvocationStmt>) ,public void ifExpressionStmt(Consumer<com.github.javaparser.ast.stmt.ExpressionStmt>) ,public void ifForEachStmt(Consumer<com.github.javaparser.ast.stmt.ForEachStmt>) ,public void ifForStmt(Consumer<com.github.javaparser.ast.stmt.ForStmt>) ,public void ifIfStmt(Consumer<com.github.javaparser.ast.stmt.IfStmt>) ,public void ifLabeledStmt(Consumer<com.github.javaparser.ast.stmt.LabeledStmt>) ,public void ifLocalClassDeclarationStmt(Consumer<com.github.javaparser.ast.stmt.LocalClassDeclarationStmt>) ,public void ifLocalRecordDeclarationStmt(Consumer<com.github.javaparser.ast.stmt.LocalRecordDeclarationStmt>) ,public void ifReturnStmt(Consumer<com.github.javaparser.ast.stmt.ReturnStmt>) ,public void ifSwitchStmt(Consumer<com.github.javaparser.ast.stmt.SwitchStmt>) ,public void ifSynchronizedStmt(Consumer<com.github.javaparser.ast.stmt.SynchronizedStmt>) ,public void ifThrowStmt(Consumer<com.github.javaparser.ast.stmt.ThrowStmt>) ,public void ifTryStmt(Consumer<com.github.javaparser.ast.stmt.TryStmt>) ,public void ifUnparsableStmt(Consumer<com.github.javaparser.ast.stmt.UnparsableStmt>) ,public void ifWhileStmt(Consumer<com.github.javaparser.ast.stmt.WhileStmt>) ,public void ifYieldStmt(Consumer<com.github.javaparser.ast.stmt.YieldStmt>) ,public boolean isAssertStmt() ,public boolean isBlockStmt() ,public boolean isBreakStmt() ,public boolean isContinueStmt() ,public boolean isDoStmt() ,public boolean isEmptyStmt() ,public boolean isExplicitConstructorInvocationStmt() ,public boolean isExpressionStmt() ,public boolean isForEachStmt() ,public boolean isForStmt() ,public boolean isIfStmt() ,public boolean isLabeledStmt() ,public boolean isLocalClassDeclarationStmt() ,public boolean isLocalRecordDeclarationStmt() ,public boolean isReturnStmt() ,public boolean isSwitchStmt() ,public boolean isSynchronizedStmt() ,public boolean isThrowStmt() ,public boolean isTryStmt() ,public boolean isUnparsableStmt() ,public boolean isWhileStmt() ,public boolean isYieldStmt() ,public Optional<com.github.javaparser.ast.stmt.AssertStmt> toAssertStmt() ,public Optional<com.github.javaparser.ast.stmt.BlockStmt> toBlockStmt() ,public Optional<com.github.javaparser.ast.stmt.BreakStmt> toBreakStmt() ,public Optional<com.github.javaparser.ast.stmt.ContinueStmt> toContinueStmt() ,public Optional<com.github.javaparser.ast.stmt.DoStmt> toDoStmt() ,public Optional<com.github.javaparser.ast.stmt.EmptyStmt> toEmptyStmt() ,public Optional<com.github.javaparser.ast.stmt.ExplicitConstructorInvocationStmt> toExplicitConstructorInvocationStmt() ,public Optional<com.github.javaparser.ast.stmt.ExpressionStmt> toExpressionStmt() ,public Optional<com.github.javaparser.ast.stmt.ForEachStmt> toForEachStmt() ,public Optional<com.github.javaparser.ast.stmt.ForStmt> toForStmt() ,public Optional<com.github.javaparser.ast.stmt.IfStmt> toIfStmt() ,public Optional<com.github.javaparser.ast.stmt.LabeledStmt> toLabeledStmt() ,public Optional<com.github.javaparser.ast.stmt.LocalClassDeclarationStmt> toLocalClassDeclarationStmt() ,public Optional<com.github.javaparser.ast.stmt.LocalRecordDeclarationStmt> toLocalRecordDeclarationStmt() ,public Optional<com.github.javaparser.ast.stmt.ReturnStmt> toReturnStmt() ,public Optional<com.github.javaparser.ast.stmt.SwitchStmt> toSwitchStmt() ,public Optional<com.github.javaparser.ast.stmt.SynchronizedStmt> toSynchronizedStmt() ,public Optional<com.github.javaparser.ast.stmt.ThrowStmt> toThrowStmt() ,public Optional<com.github.javaparser.ast.stmt.TryStmt> toTryStmt() ,public Optional<com.github.javaparser.ast.stmt.UnparsableStmt> toUnparsableStmt() ,public Optional<com.github.javaparser.ast.stmt.WhileStmt> toWhileStmt() ,public Optional<com.github.javaparser.ast.stmt.YieldStmt> toYieldStmt() <variables>