net.sourceforge.pmd.lang.jsp.ast

## Class JspParser

- java.lang.Object
- - net.sourceforge.pmd.lang.jsp.ast.JspParser

All Implemented Interfaces:
  JspParserConstants, JspParserTreeConstants

    public class JspParser
    extends Object
    implements JspParserTreeConstants, JspParserConstants

JSP Parser for PMD.

Author:
  Pieter, Application Engineers NV/SA, http://www.ae.be

### Field Summary

Fields
`Token` `jj_nt` Next token.
`protected JJTJspParserState` `jjtree`
`Token` `token` Current token.
`JspParserTokenManager` `token_source` Generated Token Manager.

### Fields inherited from interface net.sourceforge.pmd.lang.jsp.ast.JspParserTreeConstants

`JJTATTRIBUTE, JJTATTRIBUTEVALUE, JJTCDATA, JJTCOMMENTTAG, JJTCOMPILATIONUNIT, JJTCONTENT, JJTDECLARATION, JJTDOCTYPEDECLARATION, JJTDOCTYPEEXTERNALID, JJTELEMENT, JJTELEXPRESSION, JJTHTMLSCRIPT, JJTJSPCOMMENT, JJTJSPDECLARATION, JJTJSPDIRECTIVE, JJTJSPDIRECTIVEATTRIBUTE, JJTJSPEXPRESSION, JJTJSPEXPRESSIONINATTRIBUTE, JJTJSPSCRIPTLET, jjtNodeName, JJTTEXT, JJTUNPARSEDTEXT, JJTVALUEBINDING, JJTVOID`

### Fields inherited from interface net.sourceforge.pmd.lang.jsp.ast.JspParserConstants

`AfterTagState, ALPHA_CHAR, ALPHANUM_CHAR, ATTR_EQ, ATTR_NAME, AttrValueBetweenDoubleQuotesState, AttrValueBetweenSingleQuotesState, AttrValueNoQuotesState, AttrValueState, CDATA_END, CDATA_START, CDataState, COMMENT_END, COMMENT_START, COMMENT_TEXT, CommentState, DECL_END, DECL_START, DEFAULT, DOCTYPE_DECL_END, DOCTYPE_DECL_START, DocTypeExternalIdState, DocTypeState, DOLLAR_OR_HASH, DOLLAR_OR_HASH_DOUBLE_QUOTE, DOLLAR_OR_HASH_SINGLE_QUOTE, DOUBLE_QUOTE, EL_ESCAPE, EL_EXPRESSION, EL_EXPRESSION_IN_ATTRIBUTE, ENDING_DOUBLE_QUOTE, ENDING_SINGLE_QUOTE, ENDING_WHITESPACE, ENDTAG_START, EOF, HTML_SCRIPT_CONTENT, HTML_SCRIPT_END_TAG, HTML_SCRIPT_START, HtmlScriptContentState, IDENTIFIER, IDENTIFIER_CHAR, IN_ATTR_WHITESPACE, IN_TAG_ERROR, InTagState, JSP_COMMENT_CONTENT, JSP_COMMENT_END, JSP_COMMENT_START, JSP_DECLARATION, JSP_DECLARATION_END, JSP_DECLARATION_START, JSP_DIRECTIVE_ATTRIBUTE_EQUALS, JSP_DIRECTIVE_ATTRIBUTE_NAME, JSP_DIRECTIVE_ATTRIBUTE_VALUE, JSP_DIRECTIVE_END, JSP_DIRECTIVE_NAME, JSP_DIRECTIVE_START, JSP_EXPRESSION, JSP_EXPRESSION_END, JSP_EXPRESSION_IN_ATTRIBUTE, JSP_EXPRESSION_START, JSP_SCRIPTLET, JSP_SCRIPTLET_END, JSP_SCRIPTLET_START, JspCommentState, JspDeclarationState, JspDirectiveAttributesState, JspDirectiveState, JspExpressionState, JspScriptletState, LST_ERROR, NAME, NEWLINE, NO_ENDTAG_START, NO_JSP_COMMENT_END, NO_JSP_TAG_END, NO_LT_OR_DOLLAR_OR_HASH, NO_OPENBRACE, NO_QUOTE_NO_WHITESPACE, NO_WHITESPACE_OR_LT_OR_DOLLAR, NUM_CHAR, PUBLIC, QUOTE, QUOTED_LITERAL, QUOTED_STRING, QUOTED_STRING_NO_BREAKS, SINGLE_QUOTE, StartTagState, SYSTEM, TAG_END, TAG_NAME, TAG_SLASHEND, TAG_START, TEXT_IN_EL, tokenImage, UNPARSED, UNPARSED_TEXT, UNPARSED_TEXT_NO_DOUBLE_QUOTES, UNPARSED_TEXT_NO_SINGLE_QUOTES, UNPARSED_TEXT_NO_WHITESPACE, VALUE_BINDING_IN_ATTRIBUTE, WHITESPACE, WHITESPACES, XMLNAME`

### Constructor Summary

Constructors
Constructor and Description
`JspParser(CharStream stream)` Constructor with user supplied CharStream.
`JspParser(JspParserTokenManager tm)` Constructor with generated Token Manager.

### Method Summary

Methods
`void` `Attribute()`
`void` `AttributeValue()` The value of an attribute of an element.
`void` `CData()`
`void` `CommentTag()`
`ASTCompilationUnit` `CompilationUnit()` The root of the AST of a JSP.
`void` `Content()` Everything between a start-tag and the corresponding end-tag of an element (if an end tag exists).
`void` `ContentElement()` A single (non-text) element that can occur between a start-tag and end-tag of an element.
`void` `Declaration()`
`void` `disable_tracing()` Disable tracing.
`void` `DoctypeDeclaration()`
`void` `DoctypeExternalId()`
`void` `Element()` A XML element, either with a single empty tag, or with a starting and closing tag with optional contained content.
`String` `ElExpression()` An EL expression, not within an attribute value.
`String` `ElExpressionInAttribute()`
`void` `enable_tracing()` Enable tracing.
`ParseException` `generateParseException()` Generate ParseException.
`Token` `getNextToken()` Get the next Token.
`Token` `getToken(int index)` Get the specific Token.
`void` `HtmlScript()`
`void` `JspComment()`
`void` `JspDeclaration()`
`void` `JspDirective()`
`void` `JspDirectiveAttribute()`
`void` `JspExpression()`
`String` `JspExpressionInAttribute()`
`void` `JspScriptlet()`
`void` `Prolog()` The optional prolog of a JSP, including (xml) declarations and DTD.
`String` `QuoteIndependentAttributeValueContent()` Partial content of an attribute value that can contain all quotes.
`void` `ReInit(CharStream stream)` Reinitialise.
`void` `ReInit(JspParserTokenManager tm)` Reinitialise.
`void` `Text()` This production groups all characters between two tags, where tag is an xml-tag "<...>" or a jsp-page-tag "<%...%>" or CDATA "
`String` `UnparsedText()`
`String` `UnparsedTextNoDoubleQuotes()` Text that contains no double quotes, and that does not contain the start of a EL expression or value binding.
`String` `UnparsedTextNoSingleQuotes()` Text that contains no single quotes, and that does not contain the start of a EL expression or value binding.
`String` `UnparsedTextNoWhitespace()`
`String` `ValueBindingInAttribute()`

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

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

### Field Detail

#### jjtree

    protected JJTJspParserState jjtree

#### token_source

    public JspParserTokenManager token_source

Generated Token Manager.

#### token

    public Token token

Current token.

#### jj_nt

    public Token jj_nt

Next token.

### Constructor Detail

#### JspParser

    public JspParser(CharStream stream)

Constructor with user supplied CharStream.

#### JspParser

    public JspParser(JspParserTokenManager tm)

Constructor with generated Token Manager.

### Method Detail

#### CompilationUnit

    public final ASTCompilationUnit CompilationUnit()
                                             throws ParseException

The root of the AST of a JSP.

Throws:
  `ParseException`

#### Prolog

    public final void Prolog()
                      throws ParseException

The optional prolog of a JSP, including (xml) declarations and DTD.

Throws:
  `ParseException`

#### Content

    public final void Content()
                       throws ParseException

Everything between a start-tag and the corresponding end-tag of an element (if an end tag exists).

Throws:
  `ParseException`

#### ContentElement

    public final void ContentElement()
                              throws ParseException

A single (non-text) element that can occur between a start-tag and end-tag of an element.

Throws:
  `ParseException`

#### JspDirective

    public final void JspDirective()
                            throws ParseException

Throws:
  `ParseException`

#### JspDirectiveAttribute

    public final void JspDirectiveAttribute()
                                     throws ParseException

Throws:
  `ParseException`

#### JspScriptlet

    public final void JspScriptlet()
                            throws ParseException

Throws:
  `ParseException`

#### JspExpression

    public final void JspExpression()
                             throws ParseException

Throws:
  `ParseException`

#### JspDeclaration

    public final void JspDeclaration()
                              throws ParseException

Throws:
  `ParseException`

#### JspComment

    public final void JspComment()
                          throws ParseException

Throws:
  `ParseException`

#### Text

    public final void Text()
                    throws ParseException

This production groups all characters between two tags, where tag is an xml-tag "<...>" or a jsp-page-tag "<%...%>" or CDATA "". Text consists of unparsed text and/or Expression Language expressions.

Throws:
  `ParseException`

#### UnparsedText

    public final String UnparsedText()
                              throws ParseException

Throws:
  `ParseException`

#### UnparsedTextNoWhitespace

    public final String UnparsedTextNoWhitespace()
                                          throws ParseException

Throws:
  `ParseException`

#### UnparsedTextNoSingleQuotes

    public final String UnparsedTextNoSingleQuotes()
                                            throws ParseException

Text that contains no single quotes, and that does not contain the start of a EL expression or value binding.

Throws:
  `ParseException`

#### UnparsedTextNoDoubleQuotes

    public final String UnparsedTextNoDoubleQuotes()
                                            throws ParseException

Text that contains no double quotes, and that does not contain the start of a EL expression or value binding.

Throws:
  `ParseException`

#### ElExpression

    public final String ElExpression()
                              throws ParseException

An EL expression, not within an attribute value.

Throws:
  `ParseException`

#### ValueBindingInAttribute

    public final String ValueBindingInAttribute()
                                         throws ParseException

Throws:
  `ParseException`

#### ElExpressionInAttribute

    public final String ElExpressionInAttribute()
                                         throws ParseException

Throws:
  `ParseException`

#### CData

    public final void CData()
                     throws ParseException

Throws:
  `ParseException`

#### Element

    public final void Element()
                       throws ParseException

A XML element, either with a single empty tag, or with a starting and closing tag with optional contained content.

Throws:
  `ParseException`

#### Attribute

    public final void Attribute()
                         throws ParseException

Throws:
  `ParseException`

#### AttributeValue

    public final void AttributeValue()
                              throws ParseException

The value of an attribute of an element. EL expressions, JSF value bindings, and JSP expressions are parsed as sub-nodes of the AttributeValue node.

Throws:
  `ParseException`

#### QuoteIndependentAttributeValueContent

    public final String QuoteIndependentAttributeValueContent()
                                                       throws ParseException

Partial content of an attribute value that can contain all quotes. This groups EL expressions, value bindings, and JSP expressions.

Throws:
  `ParseException`

#### JspExpressionInAttribute

    public final String JspExpressionInAttribute()
                                          throws ParseException

Throws:
  `ParseException`

#### CommentTag

    public final void CommentTag()
                          throws ParseException

Throws:
  `ParseException`

#### Declaration

    public final void Declaration()
                           throws ParseException

Throws:
  `ParseException`

#### DoctypeDeclaration

    public final void DoctypeDeclaration()
                                  throws ParseException

Throws:
  `ParseException`

#### DoctypeExternalId

    public final void DoctypeExternalId()
                                 throws ParseException

Throws:
  `ParseException`

#### HtmlScript

    public final void HtmlScript()
                          throws ParseException

Throws:
  `ParseException`

#### ReInit

    public void ReInit(CharStream stream)

Reinitialise.

#### ReInit

    public void ReInit(JspParserTokenManager tm)

Reinitialise.

#### getNextToken

    public final Token getNextToken()

Get the next Token.

#### getToken

    public final Token getToken(int index)

Get the specific Token.

#### generateParseException

    public ParseException generateParseException()

Generate ParseException.

#### enable_tracing

    public final void enable_tracing()

Enable tracing.

#### disable_tracing

    public final void disable_tracing()

Disable tracing.