recoverNode() public method

This method takes a vtd index, and recover its correspondin node position, the index can only be of node type element, document, attribute name, attribute value or character data, or CDATA
public recoverNode ( int index ) : void
index int
return void
Esempio n. 1
0
        public override int evalNodeSet(VTDNav vn)
        {
            // TODO Auto-generated method stub
            int i = -1;
            if (cached)
            {
                if (count < ens.size_Renamed_Field)
                {
                    i = ens.intAt(count);
                    vn.recoverNode(i);
                    count++;
                    return i;
                }
                else
                    return -1;

            }
            else
            {
                cached = true;

                if (ens == null)
                {
                    ens = new FastIntBuffer(8);//page size 64
                }
                //record node set
                while ((i = e.evalNodeSet(vn)) != -1)
                {
                    ens.append(i);
                }
                e.reset(vn);
                if (ens.size_Renamed_Field > 0)
                {
                    i = ens.intAt(count);//count should be zero
                    vn.recoverNode(i);
                    count++;
                    return i;
                }
                else
                    return -1;
            }
        }