43 import com.sun.org.apache.xerces.internal.xni.grammars.Grammar;
44 import com.sun.org.apache.xerces.internal.xni.grammars.XMLGrammarDescription;
45 import com.sun.org.apache.xerces.internal.xni.parser.XMLDTDContentModelSource;
46 import com.sun.org.apache.xerces.internal.xni.parser.XMLDTDSource;
47 import java.util.ArrayList;
48 import java.util.HashMap;
49 import java.util.Map;
50
51 /**
52 * A DTD grammar. This class implements the XNI handler interfaces
53 * for DTD information so that it can build the appropriate validation
54 * structures automatically from the callbacks.
55 *
56 * @xerces.internal
57 *
58 * @author Eric Ye, IBM
59 * @author Jeffrey Rodriguez, IBM
60 * @author Andy Clark, IBM
61 * @author Neil Graham, IBM
62 *
63 * @version $Id: DTDGrammar.java,v 1.4 2010/08/11 07:18:37 joehw Exp $
64 * @LastModified: Feb 2020
65 */
66 public class DTDGrammar
67 implements XMLDTDHandler, XMLDTDContentModelHandler, EntityState, Grammar {
68
69 //
70 // Constants
71 //
72
73 /** Top level scope (-1). */
74 public static final int TOP_LEVEL_SCOPE = -1;
75
76 // private
77
78 /** Chunk shift (8). */
79 private static final int CHUNK_SHIFT = 8; // 2^8 = 256
80
81 /** Chunk size (1 << CHUNK_SHIFT). */
82 private static final int CHUNK_SIZE = (1 << CHUNK_SHIFT);
83
|
43 import com.sun.org.apache.xerces.internal.xni.grammars.Grammar;
44 import com.sun.org.apache.xerces.internal.xni.grammars.XMLGrammarDescription;
45 import com.sun.org.apache.xerces.internal.xni.parser.XMLDTDContentModelSource;
46 import com.sun.org.apache.xerces.internal.xni.parser.XMLDTDSource;
47 import java.util.ArrayList;
48 import java.util.HashMap;
49 import java.util.Map;
50
51 /**
52 * A DTD grammar. This class implements the XNI handler interfaces
53 * for DTD information so that it can build the appropriate validation
54 * structures automatically from the callbacks.
55 *
56 * @xerces.internal
57 *
58 * @author Eric Ye, IBM
59 * @author Jeffrey Rodriguez, IBM
60 * @author Andy Clark, IBM
61 * @author Neil Graham, IBM
62 *
63 * @LastModified: Feb 2020
64 */
65 public class DTDGrammar
66 implements XMLDTDHandler, XMLDTDContentModelHandler, EntityState, Grammar {
67
68 //
69 // Constants
70 //
71
72 /** Top level scope (-1). */
73 public static final int TOP_LEVEL_SCOPE = -1;
74
75 // private
76
77 /** Chunk shift (8). */
78 private static final int CHUNK_SHIFT = 8; // 2^8 = 256
79
80 /** Chunk size (1 << CHUNK_SHIFT). */
81 private static final int CHUNK_SIZE = (1 << CHUNK_SHIFT);
82
|