Woodstox 6.4.0 - Source Code Files

Woodstox 6.4.0 Source Code Files are provided at the Woodstox GitHub Website.

You can download them from the "src/main/java" folder.

You can also browse Woodstox Source Code files below:

✍: FYIcenter

com/ctc/wstx/dtd/StarModel.java

package com.ctc.wstx.dtd;

import java.util.*;

/**
 * Model class that represents any number of repetitions of its submodel
 * (including no repetitions).
 */
public class StarModel
    extends ModelNode
{
    ModelNode mModel;

    /*
    ///////////////////////////////////////////////////
    // Life-cycle
    ///////////////////////////////////////////////////
     */

    public StarModel(ModelNode model) {
        super();
        mModel = model;
    }

    /*
    ///////////////////////////////////////////////////
    // Public API
    ///////////////////////////////////////////////////
     */

    /**
     * Method that has to create a deep copy of the model, without
     * sharing any of existing Objects.
     */
    @Override
    public ModelNode cloneModel() {
        return new StarModel(mModel.cloneModel());
    }

    @Override
    public boolean isNullable() {
        return true;
    }

    @Override
    public void indexTokens(List<TokenModel> tokens) {
        mModel.indexTokens(tokens);
    }

    @Override
    public void addFirstPos(BitSet pos) {
        mModel.addFirstPos(pos);
    }
    
    @Override
    public void addLastPos(BitSet pos) {
        mModel.addLastPos(pos);
    }

    @Override
    public void calcFollowPos(BitSet[] followPosSets)
    {
        // First, let's let sub-model do its stuff
        mModel.calcFollowPos(followPosSets);

        /* And then add the closure for the model (since sub-model
         * can 'follow itself' as many times as it needs to)
         */

        BitSet foll = new BitSet();
        mModel.addFirstPos(foll);

        BitSet toAddTo = new BitSet();
        mModel.addLastPos(toAddTo);

        int ix = 0; // need to/can skip the null entry (index 0) 
        while ((ix = toAddTo.nextSetBit(ix+1)) >= 0) {
            /* Ok; so token at this index needs to have follow positions
             * added...
             */
            followPosSets[ix].or(foll);
        }
    }

    @Override
    public String toString() {
        return mModel.toString() + "*";
    }
}

com/ctc/wstx/dtd/StarModel.java

 

Or download all of them as a single archive file:

File name: woodstox-core-6.4.0-fyi.zip
File size: 552992 bytes
Release date: 2022-10-25
Download 

 

 

woodstox-core-6.4.0.jar - Woodstox Core 6.4.0

What Is Woodstox XML Processing

Download and Review Woodstox wstx-*.jar

⇑⇑ Woodstox for XML Processing

2023-01-29, 9157👍, 0💬