use of com.mitchellbosecke.pebble.tokenParser.TokenParser in project Orchid by JavaEden.
the class CorePebbleExtension method getTokenParsers.
@Override
public List<TokenParser> getTokenParsers() {
List<TokenParser> tokenParsers = new ArrayList<>();
Set<String> childTabNames = new HashSet<>();
for (TemplateTag templateTag : templateTags) {
final String[] tabParams;
final Class<? extends TemplateTag.Tab> tabClass;
if (templateTag.getType() == TemplateTag.Type.Tabbed) {
TemplateTag.Tab tab = templateTag.getNewTab("", "");
tabParams = tab.parameters();
tabClass = tab.getClass();
childTabNames.add(tab.getType());
} else {
tabParams = null;
tabClass = null;
}
tokenParsers.add(new PebbleWrapperTemplateTag(contextProvider, templateTag.getName(), templateTag.getType(), templateTag.parameters(), templateTag.getClass(), tabParams, tabClass));
}
for (String childTabName : childTabNames) {
tokenParsers.add(new PebbleWrapperTemplateTagChildTab(contextProvider, childTabName));
}
return tokenParsers;
}
Aggregations