public abstract class Tag
extends java.lang.Object
A tag is a keyword that appears at the beginning of a {% %} block. The tag must have a single-word, lower-case name. If the tag can itself contain content, it must specify the name of the end-tag which ends the tag.
| Constructor and Description |
|---|
Tag() |
| Modifier and Type | Method and Description |
|---|---|
boolean |
canChain(Tag nextTag)
Return true if we can chain to the given next
Tag. |
boolean |
isBlockTag() |
void |
parseStatement(StatementParser stmtParser)
Parse the statement that appears after the tag in the markup.
|
void |
render(CarrotEngine engine,
java.io.Writer writer,
TagNode tagNode,
Scope scope)
Render this
Tag to the given Writer. |
public void parseStatement(StatementParser stmtParser) throws CarrotException
isBlockTag() or canChain(Tag).stmtParser - A StatementParser for parsing the statement.CarrotException - if there is an unrecoverable error parsing the statement.public boolean isBlockTag()
public boolean canChain(Tag nextTag)
Tag.nextTag - The next Tag that we want to check whether we can chain to.public void render(CarrotEngine engine, java.io.Writer writer, TagNode tagNode, Scope scope) throws CarrotException, java.io.IOException
Tag to the given Writer.engine - The current CarrotEngine.writer - The Writer to render to.tagNode - The TagNode that we're enclosed in. You can use this to render the children, or query
the children or whatever.scope - The current Scope.CarrotException - if there's an error parsing or rendering the templatejava.io.IOException - when there's an error writing to the Writer (basically this is just passed on from
whatever errors the Writer might throw..