org.w3c.tidy
Class Lexer

java.lang.Object
  extended byorg.w3c.tidy.Lexer

public class Lexer
extends java.lang.Object


Field Summary
 short badAccess
           
 short badChars
           
 boolean badDoctype
           
 short badForm
           
 short badLayout
           
 int columns
           
 Configuration configuration
           
 int doctype
           
 short errors
           
 java.io.PrintWriter errout
           
 boolean excludeBlocks
           
 boolean exiled
           
static short IgnoreMarkup
           
static short IgnoreWhitespace
           
 StreamIn in
           
 Node inode
           
 int insert
           
 boolean insertspace
           
 java.util.Stack istack
           
 int istackbase
           
 boolean isvoyager
           
 byte[] lexbuf
           
 int lexlength
           
 int lexsize
           
 int lines
           
static short MixedContent
           
static short Preformatted
           
 boolean pushed
           
protected  int seenBodyEndTag
           
 short state
           
 Style styles
           
 Node token
           
 int txtend
           
 int txtstart
           
 short versions
           
 short warnings
           
 boolean waswhite
           
 
Constructor Summary
Lexer(StreamIn in, Configuration configuration)
           
 
Method Summary
 void addByte(int c)
           
 void addCharToLexer(int c)
           
 boolean addGenerator(Node root)
           
 void addStringLiteral(java.lang.String str)
           
 void addStringToLexer(java.lang.String str)
           
 short apparentVersion()
           
 boolean canPrune(Node element)
           
 void changeChar(byte c)
           
 boolean checkDocTypeKeyWords(Node doctype)
           
 AttVal cloneAttributes(AttVal attrs)
           
 Node cloneNode(Node node)
           
 void deferDup()
           
 boolean endOfInput()
           
static boolean expectsContent(Node node)
           
 short findGivenVersion(Node doctype)
           
 boolean fixDocType(Node root)
           
 void fixHTMLNameSpace(Node root, java.lang.String profile)
           
 void fixId(Node node)
           
 boolean fixXMLPI(Node root)
           
static char foldCase(char c, boolean tocaps, boolean xmlTags)
           
static byte[] getBytes(java.lang.String str)
           
 Node getCDATA(Node container)
           
static java.lang.String getString(byte[] bytes, int offset, int length)
           
 Node getToken(short mode)
           
 short HTMLVersion()
           
 java.lang.String HTMLVersionName()
           
 Node inferredTag(java.lang.String name)
           
 int inlineDup(Node node)
           
 Node insertedToken()
           
 boolean isPushed(Node node)
           
static boolean isValidAttrName(java.lang.String attr)
           
 Node newLineNode()
           
 Node newNode()
           
 Node newNode(short type, byte[] textarray, int start, int end)
           
 Node newNode(short type, byte[] textarray, int start, int end, java.lang.String element)
           
 Node parseAsp()
           
 java.lang.String parseAttribute(MutableBoolean isempty, MutableObject asp, MutableObject php)
           
 AttVal parseAttrs(MutableBoolean isempty)
           
 void parseEntity(short mode)
           
 Node parsePhp()
           
 int parseServerInstruction()
           
 char parseTagName()
           
 java.lang.String parseValue(java.lang.String name, boolean foldCase, MutableBoolean isempty, MutableInteger pdelim)
           
 void popInline(Node node)
           
 void pushInline(Node node)
           
 boolean setXHTMLDocType(Node root)
           
 void ungetToken()
           
protected  void updateNodeTextArrays(byte[] oldtextarray, byte[] newtextarray)
           
static int wstrcasecmp(java.lang.String s1, java.lang.String s2)
           
static int wstrcaselexcmp(java.lang.String s1, java.lang.String s2)
           
static boolean wsubstr(java.lang.String s1, java.lang.String s2)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

in

public StreamIn in

errout

public java.io.PrintWriter errout

badAccess

public short badAccess

badLayout

public short badLayout

badChars

public short badChars

badForm

public short badForm

warnings

public short warnings

errors

public short errors

lines

public int lines

columns

public int columns

waswhite

public boolean waswhite

pushed

public boolean pushed

insertspace

public boolean insertspace

excludeBlocks

public boolean excludeBlocks

exiled

public boolean exiled

isvoyager

public boolean isvoyager

versions

public short versions

doctype

public int doctype

badDoctype

public boolean badDoctype

txtstart

public int txtstart

txtend

public int txtend

state

public short state

token

public Node token

lexbuf

public byte[] lexbuf

lexlength

public int lexlength

lexsize

public int lexsize

inode

public Node inode

insert

public int insert

istack

public java.util.Stack istack

istackbase

public int istackbase

styles

public Style styles

configuration

public Configuration configuration

seenBodyEndTag

protected int seenBodyEndTag

IgnoreWhitespace

public static final short IgnoreWhitespace
See Also:
Constant Field Values

MixedContent

public static final short MixedContent
See Also:
Constant Field Values

Preformatted

public static final short Preformatted
See Also:
Constant Field Values

IgnoreMarkup

public static final short IgnoreMarkup
See Also:
Constant Field Values
Constructor Detail

Lexer

public Lexer(StreamIn in,
             Configuration configuration)
Method Detail

newNode

public Node newNode()

newNode

public Node newNode(short type,
                    byte[] textarray,
                    int start,
                    int end)

newNode

public Node newNode(short type,
                    byte[] textarray,
                    int start,
                    int end,
                    java.lang.String element)

cloneNode

public Node cloneNode(Node node)

cloneAttributes

public AttVal cloneAttributes(AttVal attrs)

updateNodeTextArrays

protected void updateNodeTextArrays(byte[] oldtextarray,
                                    byte[] newtextarray)

newLineNode

public Node newLineNode()

getBytes

public static byte[] getBytes(java.lang.String str)

getString

public static java.lang.String getString(byte[] bytes,
                                         int offset,
                                         int length)

endOfInput

public boolean endOfInput()

addByte

public void addByte(int c)

changeChar

public void changeChar(byte c)

addCharToLexer

public void addCharToLexer(int c)

addStringToLexer

public void addStringToLexer(java.lang.String str)

parseEntity

public void parseEntity(short mode)

parseTagName

public char parseTagName()

addStringLiteral

public void addStringLiteral(java.lang.String str)

HTMLVersion

public short HTMLVersion()

HTMLVersionName

public java.lang.String HTMLVersionName()

addGenerator

public boolean addGenerator(Node root)

checkDocTypeKeyWords

public boolean checkDocTypeKeyWords(Node doctype)

findGivenVersion

public short findGivenVersion(Node doctype)

fixHTMLNameSpace

public void fixHTMLNameSpace(Node root,
                             java.lang.String profile)

setXHTMLDocType

public boolean setXHTMLDocType(Node root)

apparentVersion

public short apparentVersion()

fixDocType

public boolean fixDocType(Node root)

fixXMLPI

public boolean fixXMLPI(Node root)

inferredTag

public Node inferredTag(java.lang.String name)

expectsContent

public static boolean expectsContent(Node node)

getCDATA

public Node getCDATA(Node container)

ungetToken

public void ungetToken()

getToken

public Node getToken(short mode)

parseAsp

public Node parseAsp()

parsePhp

public Node parsePhp()

parseAttribute

public java.lang.String parseAttribute(MutableBoolean isempty,
                                       MutableObject asp,
                                       MutableObject php)

parseServerInstruction

public int parseServerInstruction()

parseValue

public java.lang.String parseValue(java.lang.String name,
                                   boolean foldCase,
                                   MutableBoolean isempty,
                                   MutableInteger pdelim)

isValidAttrName

public static boolean isValidAttrName(java.lang.String attr)

parseAttrs

public AttVal parseAttrs(MutableBoolean isempty)

pushInline

public void pushInline(Node node)

popInline

public void popInline(Node node)

isPushed

public boolean isPushed(Node node)

inlineDup

public int inlineDup(Node node)

insertedToken

public Node insertedToken()

wstrcasecmp

public static int wstrcasecmp(java.lang.String s1,
                              java.lang.String s2)

wstrcaselexcmp

public static int wstrcaselexcmp(java.lang.String s1,
                                 java.lang.String s2)

wsubstr

public static boolean wsubstr(java.lang.String s1,
                              java.lang.String s2)

canPrune

public boolean canPrune(Node element)

fixId

public void fixId(Node node)

deferDup

public void deferDup()

foldCase

public static char foldCase(char c,
                            boolean tocaps,
                            boolean xmlTags)