KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > net > sf > saxon > tree > AncestorEnumeration


1 package net.sf.saxon.tree;
2 import net.sf.saxon.om.SequenceIterator;
3 import net.sf.saxon.pattern.NodeTest;
4
5 final class AncestorEnumeration extends TreeEnumeration {
6
7     private boolean includeSelf;
8
9     public AncestorEnumeration(NodeImpl node, NodeTest nodeTest, boolean includeSelf) {
10         super(node, nodeTest);
11         this.includeSelf = includeSelf;
12         if (!includeSelf || !conforms(node)) {
13             advance();
14         }
15     }
16
17     protected void step() {
18         next=(NodeImpl)next.getParent();
19     }
20
21     /**
22     * Get another enumeration of the same nodes
23     */

24     
25     public SequenceIterator getAnother() {
26         return new AncestorEnumeration(start, nodeTest, includeSelf);
27     }
28 }
29
30
31
32 //
33
// The contents of this file are subject to the Mozilla Public License Version 1.0 (the "License");
34
// you may not use this file except in compliance with the License. You may obtain a copy of the
35
// License at http://www.mozilla.org/MPL/
36
//
37
// Software distributed under the License is distributed on an "AS IS" basis,
38
// WITHOUT WARRANTY OF ANY KIND, either express or implied.
39
// See the License for the specific language governing rights and limitations under the License.
40
//
41
// The Original Code is: all this file.
42
//
43
// The Initial Developer of the Original Code is Michael H. Kay.
44
//
45
// Portions created by (your name) are Copyright (C) (your legal entity). All Rights Reserved.
46
//
47
// Contributor(s): none.
48
//
49
Popular Tags