}
directives.add(new ForDirective(parseGenericType(type, exprOffset), var, expression, offset));
} else if (StringUtils.inArray(name, ifDirective)) {
directives.add(new IfDirective((Expression) expressionParser.parse(value, exprOffset), offset));
} else if (StringUtils.inArray(name, elseDirective)) {
directives.add(new ElseDirective(StringUtils.isEmpty(value)
? null : (Expression) expressionParser.parse(value, exprOffset), offset));
} else if (StringUtils.inArray(name, breakDirective)) {
directives.add(new BreakDirective(StringUtils.isBlank(value) ? null : (Expression) expressionParser.parse(value, exprOffset), offset));
} else if (StringUtils.inArray(name, macroDirective)) {
String macroName = value;