Control flow

Go-shaped if/else if/else, switch with case/default (and fallthrough), and for โ€” bodies are template content.

templ list(items []string) {
	if len(items) == 0 {
		<p>empty</p>
	} else {
		<ul>
			for _, item := range items {
				<li>{ item }</li>
			}
		</ul>
	}
}

AST: IfExpression, ElseIfExpression, SwitchExpression, CaseExpression, Fallthrough, ForExpression.

Verified by: internal/generator/test-if, internal/generator/test-ifelse, internal/generator/test-elseif, internal/generator/test-switch, internal/generator/test-switchdefault, internal/generator/test-for.