home *** CD-ROM | disk | FTP | other *** search
/ Online Today 2000 January / Onto0100.iso / pc / JAVA / MSJAVX86.EXE / xmldso.cab / com / ms / xml / parser / Qmark.class (.txt) < prev    next >
Encoding:
Java Class File  |  1998-11-05  |  1.2 KB  |  66 lines

  1. package com.ms.xml.parser;
  2.  
  3. import com.ms.xml.om.Element;
  4. import com.ms.xml.util.Atom;
  5. import com.ms.xml.util.XMLOutputStream;
  6. import java.io.IOException;
  7. import java.util.BitSet;
  8.  
  9. class Qmark extends Node {
  10.    Node node;
  11.  
  12.    Qmark(Node var1) {
  13.       this.node = var1;
  14.    }
  15.  
  16.    BitSet firstpos(int var1) {
  17.       if (super.first == null) {
  18.          super.first = this.node.firstpos(var1);
  19.       }
  20.  
  21.       return super.first;
  22.    }
  23.  
  24.    BitSet lastpos(int var1) {
  25.       if (super.last == null) {
  26.          super.last = this.node.lastpos(var1);
  27.       }
  28.  
  29.       return super.last;
  30.    }
  31.  
  32.    Element toSchema(int var1, int var2, Element var3) {
  33.       ++var2;
  34.       this.node.toSchema(63, var2, var3);
  35.       --var2;
  36.       return var3;
  37.    }
  38.  
  39.    void save(XMLOutputStream var1, int var2, int var3, Atom var4) throws IOException {
  40.       ++var3;
  41.       if (var2 == 63 || var2 == 42) {
  42.          var1.writeChars("(");
  43.       }
  44.  
  45.       this.node.save(var1, 63, var3, var4);
  46.       var1.write(63);
  47.       if (var2 == 63 || var2 == 42) {
  48.          var1.writeChars(")");
  49.       }
  50.  
  51.       --var3;
  52.    }
  53.  
  54.    Node clone(ContentModel var1) {
  55.       return new Qmark(this.node.clone(var1));
  56.    }
  57.  
  58.    void calcfollowpos(BitSet[] var1) {
  59.       this.node.calcfollowpos(var1);
  60.    }
  61.  
  62.    boolean nullable() {
  63.       return true;
  64.    }
  65. }
  66.