Package org.w3c.tidy

# Class ParserImpl

java.lang.Object
org.w3c.tidy.ParserImpl

public final class ParserImpl extends Object
HTML Parser implementation.

Version:
  $Revision: 1100 $ ($Author: aditsu $)
Author:
  Dave Raggett dsr@w3.org , Andy Quick ac.quick@sympatico.ca (translation to Java), Fabrizio Giustina

## Nested Class Summary

Nested Classes
Modifier and Type
Class
Description
`static class`
`ParserImpl.ParseBlock`
Parser for block elements.
`static class`
`ParserImpl.ParseBody`
Parser for BODY.
`static class`
`ParserImpl.ParseColGroup`
Parser for COLGROUP.
`static class`
`ParserImpl.ParseDefList`
Parser for DEFLIST.
`static class`
`ParserImpl.ParseEmpty`
Parser for empty elements.
`static class`
`ParserImpl.ParseFrameSet`
Parser for FRAMESET.
`static class`
`ParserImpl.ParseHead`
Parser for HEAD.
`static class`
`ParserImpl.ParseHTML`
Parser for HTML.
`static class`
`ParserImpl.ParseInline`
Parser for INLINE.
`static class`
`ParserImpl.ParseList`
Parser for LIST.
`static class`
`ParserImpl.ParseNoFrames`
Parser for NOFRAMES.
`static class`
`ParserImpl.ParseOptGroup`
Parser for OPTGROUP.
`static class`
`ParserImpl.ParsePre`
Parser for PRE.
`static class`
`ParserImpl.ParseRow`
Parser for ROW.
`static class`
`ParserImpl.ParseRowGroup`
Parser for ROWGROUP.
`static class`
`ParserImpl.ParseScript`
Parser for SCRIPT.
`static class`
`ParserImpl.ParseSelect`
Parser for SELECT.
`static class`
`ParserImpl.ParseTableTag`
Parser for TABLE.
`static class`
`ParserImpl.ParseText`
Parser for text nodes.
`static class`
`ParserImpl.ParseTitle`
Parser for TITLE.

## Field Summary

Fields
Modifier and Type
Field
Description
`static final Parser`
`BLOCK`
parser for block elements.
`static final Parser`
`BODY`
parser for body.
`static final Parser`
`COLGROUP`
parser for colgroup.
`static final Parser`
`DEFLIST`
parser for definition lists.
`static final Parser`
`EMPTY`
parser for empty elements.
`static final Parser`
`FRAMESET`
parser for frameset.
`static final Parser`
`HEAD`
parser for head.
`static final Parser`
`HTML`
parser for html.
`static final Parser`
`INLINE`
parser for inline.
`static final Parser`
`LIST`
parser for list.
`static final Parser`
`NOFRAMES`
parser for noframes.
`static final Parser`
`OPTGROUP`
parser for optgroup.
`static final Parser`
`PRE`
parser for pre.
`static final Parser`
`ROW`
parser for row.
`static final Parser`
`ROWGROUP`
parser for rowgroup.
`static final Parser`
`SCRIPT`
parser for script.
`static final Parser`
`SELECT`
parser for select.
`static final Parser`
`TABLETAG`
parser for table.
`static final Parser`
`TEXT`
parser for text.
`static final Parser`
`TITLE`
parser for title.

## Method Summary

Modifier and Type
Method
Description
`protected static void`
`moveToHead(Lexer lexer, Node element, Node node)`
Move node to the head, where element is used as starting point in hunt for head.
`static Node`
`parseDocument(Lexer lexer)`
HTML is the top level element.
`protected static void`
`parseTag(Lexer lexer, Node node, short mode)`
`static Node`
`parseXMLDocument(Lexer lexer)`
`static void`
`parseXMLElement(Lexer lexer, Node element, short mode)`
XML documents.
`static boolean`
`XMLPreserveWhiteSpace(Node element, TagTable tt)`
Indicates whether or not whitespace should be preserved for this element.

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

## Field Details

### HTML

public static final Parser HTML
parser for html.

### HEAD

public static final Parser HEAD
parser for head.

### TITLE

public static final Parser TITLE
parser for title.

### SCRIPT

public static final Parser SCRIPT
parser for script.

### BODY

public static final Parser BODY
parser for body.

### FRAMESET

public static final Parser FRAMESET
parser for frameset.

### INLINE

public static final Parser INLINE
parser for inline.

### LIST

public static final Parser LIST
parser for list.

### DEFLIST

public static final Parser DEFLIST
parser for definition lists.

### PRE

public static final Parser PRE
parser for pre.

### BLOCK

public static final Parser BLOCK
parser for block elements.

### TABLETAG

public static final Parser TABLETAG
parser for table.

### COLGROUP

public static final Parser COLGROUP
parser for colgroup.

### ROWGROUP

public static final Parser ROWGROUP
parser for rowgroup.

### ROW

public static final Parser ROW
parser for row.

### NOFRAMES

public static final Parser NOFRAMES
parser for noframes.

### SELECT

public static final Parser SELECT
parser for select.

### TEXT

public static final Parser TEXT
parser for text.

### EMPTY

public static final Parser EMPTY
parser for empty elements.

### OPTGROUP

public static final Parser OPTGROUP
parser for optgroup.

## Method Details

### parseTag

protected static void parseTag(Lexer lexer, Node node, short mode)

Parameters:
  `lexer` -
  `node` -
  `mode` -

### moveToHead

protected static void moveToHead(Lexer lexer, Node element, Node node)
Move node to the head, where element is used as starting point in hunt for head. Normally called during parsing.

Parameters:
  `lexer` -
  `element` -
  `node` -

### parseDocument

public static Node parseDocument(Lexer lexer)
HTML is the top level element.

### XMLPreserveWhiteSpace

public static boolean XMLPreserveWhiteSpace(Node element, TagTable tt)
Indicates whether or not whitespace should be preserved for this element. If an `xml:space` attribute is found, then if the attribute value is `preserve`, returns `true`. For any other value, returns `false`. If an `xml:space` attribute was not found, then the following element names result in a return value of `true: pre, script, style,` and `xsl:text`. Finally, if a `TagTable` was passed in and the element appears as the "pre" element in the `TagTable`, then `true` will be returned. Otherwise, `false` is returned.

Parameters:
  `element` - The `Node` to test to see if whitespace should be preserved.
  `tt` - The `TagTable` to test for the `getNodePre()` function. This may be `null`, in which case this test is bypassed.
Returns:
  `true` or `false`, as explained above.

### parseXMLElement

public static void parseXMLElement(Lexer lexer, Node element, short mode)
XML documents.

### parseXMLDocument

public static Node parseXMLDocument(Lexer lexer)