Package org.apache.batik.css.parser
Class Scanner
java.lang.Object
org.apache.batik.css.parser.Scanner
This class represents a CSS scanner - an object which decodes CSS lexical
units.
- Version:
- $Id: Scanner.java 1733416 2016-03-03 07:07:13Z gadams $
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected int
The characters to skip to create the string which represents the current token.protected char[]
The recording buffer.protected int
The current char.protected int
The end offset of the last lexical unit.protected int
The current position in the buffer.protected NormalizingReader
The reader.protected int
The start offset of the last lexical unit.protected int
The type of the current lexical unit. -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoid
Clears the buffer.void
close()
Closes the underlying stream used by the scanner.protected int
Scans the decimal part of a number.protected int
endGap()
Returns the end gap of the current lexical unit.protected void
escape()
Scans an escape sequence, if one.char[]
Returns the buffer used to store the chars.int
Returns the current column.int
getEnd()
Returns the end offset of the last lexical unit.int
getLine()
Returns the current line.int
getStart()
Returns the start offset of the last lexical unit.Returns the string representation of the current lexical unit.int
getType()
The current lexical unit type like defined in LexicalUnits.protected static boolean
isEqualIgnoreCase
(int i, char c) Compares the given int with the given character, ignoring case.int
next()
Returns the next token.protected int
nextChar()
Sets the value of the current char to the next character or -1 if the end of stream has been reached.protected void
Returns the next token.protected int
number()
Scans a number.protected int
numberUnit
(boolean integer) Scans the unit of a number.void
Scans a @rule value.protected int
string1()
Scans a single quoted string.protected int
string2()
Scans a double quoted string.
-
Field Details
-
reader
The reader. -
current
protected int currentThe current char. -
buffer
protected char[] bufferThe recording buffer. -
position
protected int positionThe current position in the buffer. -
type
protected int typeThe type of the current lexical unit. -
start
protected int startThe start offset of the last lexical unit. -
end
protected int endThe end offset of the last lexical unit. -
blankCharacters
protected int blankCharactersThe characters to skip to create the string which represents the current token.
-
-
Constructor Details
-
Scanner
Creates a new Scanner object.- Parameters:
r
- The reader to scan.- Throws:
ParseException
-
Scanner
Creates a new Scanner object.- Parameters:
is
- The input stream to scan.enc
- The encoding to use to decode the input stream, or null.- Throws:
ParseException
-
Scanner
Creates a new Scanner object.- Parameters:
s
- The string to scan.- Throws:
ParseException
-
-
Method Details
-
getLine
public int getLine()Returns the current line. -
getColumn
public int getColumn()Returns the current column. -
getBuffer
public char[] getBuffer()Returns the buffer used to store the chars. -
getStart
public int getStart()Returns the start offset of the last lexical unit. -
getEnd
public int getEnd()Returns the end offset of the last lexical unit. -
clearBuffer
public void clearBuffer()Clears the buffer. -
getType
public int getType()The current lexical unit type like defined in LexicalUnits. -
getStringValue
Returns the string representation of the current lexical unit. -
scanAtRule
Scans a @rule value. This method assumes that the current lexical unit is a at keyword.- Throws:
ParseException
-
next
Returns the next token.- Throws:
ParseException
-
close
public void close()Closes the underlying stream used by the scanner. -
endGap
protected int endGap()Returns the end gap of the current lexical unit. -
nextToken
Returns the next token.- Throws:
ParseException
-
string1
Scans a single quoted string.- Throws:
IOException
-
string2
Scans a double quoted string.- Throws:
IOException
-
number
Scans a number.- Throws:
IOException
-
dotNumber
Scans the decimal part of a number.- Throws:
IOException
-
numberUnit
Scans the unit of a number.- Throws:
IOException
-
escape
Scans an escape sequence, if one.- Throws:
IOException
-
isEqualIgnoreCase
protected static boolean isEqualIgnoreCase(int i, char c) Compares the given int with the given character, ignoring case. -
nextChar
Sets the value of the current char to the next character or -1 if the end of stream has been reached.- Throws:
IOException
-