org.jamon.parser
Class SubcomponentParser<Node extends AbstractBodyNode>

java.lang.Object
  extended by org.jamon.parser.AbstractParser
      extended by org.jamon.parser.AbstractBodyParser<Node>
          extended by org.jamon.parser.SubcomponentParser<Node>
Direct Known Subclasses:
AbstractFlowControlBlockParser, DefParser, MethodParser, OverrideParser

public abstract class SubcomponentParser<Node extends AbstractBodyNode>
extends AbstractBodyParser<Node>


Nested Class Summary
 
Nested classes/interfaces inherited from class org.jamon.parser.AbstractBodyParser
AbstractBodyParser.JavaSnippetTagEndDetector
 
Nested classes/interfaces inherited from class org.jamon.parser.AbstractParser
AbstractParser.NotAnIdentifierException
 
Field Summary
 
Fields inherited from class org.jamon.parser.AbstractBodyParser
ANNOTATE_TAG_IN_SUBCOMPONENT, CLASS_TAG_IN_SUBCOMPONENT, EMIT_ESCAPE_CODE_ERROR, EMIT_MISSING_TAG_END_ERROR, ENCOUNTERED_ELSE_TAG_WITHOUT_PRIOR_IF_TAG, ENCOUNTERED_ELSEIF_TAG_WITHOUT_PRIOR_IF_TAG, ESCAPE_TAG_IN_SUBCOMPONENT, EXTENDS_TAG_IN_SUBCOMPONENT, GENERIC_TAG_IN_SUBCOMPONENT, IMPLEMENTS_TAG_IN_SUBCOMPONENT, m_bodyStart, m_root, m_text, PARENT_ARGS_TAG_IN_SUBCOMPONENT, PARENT_MARKER_TAG_IN_SUBCOMPONENT, PERCENT_GREATER_THAN_EOF_ERROR, UNEXPECTED_FRAGMENTS_CLOSE_ERROR, UNEXPECTED_NAMED_FRAGMENT_CLOSE_ERROR
 
Fields inherited from class org.jamon.parser.AbstractParser
BAD_ARGS_CLOSE_TAG, BAD_JAVA_TYPE_SPECIFIER, EOF_IN_JAVA_QUOTE_ERROR, INCOMPLETE_ARRAY_SPECIFIER_ERROR, m_errors, m_reader, MALFORMED_TAG_ERROR, NOT_AN_IDENTIFIER_ERROR
 
Constructor Summary
protected SubcomponentParser(Node p_node, PositionalPushbackReader p_reader, ParserErrorsImpl p_errors)
           
 
Method Summary
protected  void handleEof()
          This method is called when an end of file is reached, and should add an error if this is not acceptable
protected  void handlePostTag()
           
protected  void handleTagClose(java.lang.String p_tagName, org.jamon.api.Location p_tagLocation)
          Handle a tag closure
static java.lang.String makeError(java.lang.String p_tagName)
           
 AbstractBodyParser<Node> parse()
           
protected abstract  java.lang.String tagName()
           
 
Methods inherited from class org.jamon.parser.AbstractBodyParser
doneParsing, getRootNode, handleAbsMethodTag, handleAliasesTag, handleAnnotationTag, handleClassTag, handleDefTag, handleElseIfTag, handleElseTag, handleEscapeTag, handleExtendsTag, handleForTag, handleFragmentsClose, handleGenericTag, handleIfTag, handleImplementsTag, handleImportTag, handleLiteralTag, handleMethodTag, handleNamedFragmentClose, handleOverrideTag, handleParentArgsNode, handleParentMarkerTag, handleTag, handleText, handleWhileTag, isTopLevel, readCondition, readLine, readTagName
 
Methods inherited from class org.jamon.parser.AbstractParser
addError, addError, checkForTagClosure, checkToken, eofErrorMessage, parsePath, readAndAppendChar, readChar, readClassName, readIdentifier, readIdentifierOrThrow, readJava, readType, readUntil, soakWhitespace
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

SubcomponentParser

protected SubcomponentParser(Node p_node,
                             PositionalPushbackReader p_reader,
                             ParserErrorsImpl p_errors)
Method Detail

parse

public AbstractBodyParser<Node> parse()
                                                        throws java.io.IOException
Overrides:
parse in class AbstractBodyParser<Node extends AbstractBodyNode>
Throws:
java.io.IOException

handlePostTag

protected void handlePostTag()
                      throws java.io.IOException
Throws:
java.io.IOException

tagName

protected abstract java.lang.String tagName()

handleTagClose

protected void handleTagClose(java.lang.String p_tagName,
                              org.jamon.api.Location p_tagLocation)
                       throws java.io.IOException
Description copied from class: AbstractBodyParser
Handle a tag closure

Overrides:
handleTagClose in class AbstractBodyParser<Node extends AbstractBodyNode>
Parameters:
p_tagName - The tag name
p_tagLocation - The tag location
Throws:
java.io.IOException

handleEof

protected void handleEof()
Description copied from class: AbstractBodyParser
This method is called when an end of file is reached, and should add an error if this is not acceptable

Specified by:
handleEof in class AbstractBodyParser<Node extends AbstractBodyNode>

makeError

public static java.lang.String makeError(java.lang.String p_tagName)


jamon