Interface: Markup
Defined in: src/markup.ts:22
All tags and the output statement in out template ASTs must implement the
Markup interface.
Optional methods are for the benefit of static analysis, and can be omitted from custom tags if static analysis is not needed.
Properties
blank
blank:
boolean
Defined in: src/markup.ts:28
If true, indicates that this node renders to the empty string or a string containing only whitespace. This is used to suppress control flow blocks that don't contain text nodes or markup that contributes to the output.
tag
tag:
string
Defined in: src/markup.ts:34
Name of the tag used for static analysis. Set tag to an empty string if it's not a tag or to silence it.
token
token:
Token
Defined in: src/markup.ts:41
The token spanning the start of this node. In the absence of a more
specific token from an Expression, use this token when throwing
errors.
Methods
blockScope()?
optionalblockScope():Name[]
Defined in: src/markup.ts:78
Return an array of variable names that are in scope for the duration of this node's block.
This is used during static analysis to isolate and report global variables, excluding temporary block-scoped names.
Returns
Name[]
children()?
optionalchildren(staticContext):Promise<Markup[]>
Defined in: src/markup.ts:57
Return an array of child markup nodes. This is used to traverse template syntax trees during static analysis.
Parameters
staticContext
Returns
Promise<Markup[]>
childrenSync()?
optionalchildrenSync(staticContext):Markup[]
Defined in: src/markup.ts:63
Return an array of child markup nodes. This is used to traverse template syntax trees during static analysis.
Parameters
staticContext
Returns
Markup[]
expressions()?
optionalexpressions():Expression[]
Defined in: src/markup.ts:69
Return an array of child expression nodes. This is used to traverse template syntax trees during static analysis.
Returns
partial()?
optionalpartial(staticContext):Promise<Partial>
Defined in: src/markup.ts:89
Return meta data about partial templates rendered from this node.
Parameters
staticContext
Returns
Promise<Partial>
partialSync()?
optionalpartialSync(staticContext):Partial
Defined in: src/markup.ts:94
Return meta data about partial templates rendered from this node.
Parameters
staticContext
Returns
Partial
render()
render(
context,buffer):Promise<void>
Defined in: src/markup.ts:46
Render this node to the output buffer with data from context.
Parameters
context
buffer
Returns
Promise<void>
renderSync()
renderSync(
context,buffer):void
Defined in: src/markup.ts:51
Render this node to the output buffer with data from context.
Parameters
context
buffer
Returns
void
templateScope()?
optionaltemplateScope():Name[]
Defined in: src/markup.ts:84
Return an array of variable names this node adds to the template local scope (variables that remain in scope after the tag has been rendered).
Returns
Name[]