@Override public void apply( @NonNull String language, @NonNull Prism4j.Syntax syntax, @NonNull SpannableStringBuilder builder, int start, int end) { final String type = syntax.type(); final String alias = syntax.alias(); final int color = color(language, type, alias); if (color != 0) { applyColor(language, type, alias, color, builder, start, end); } }
private static boolean isGreedyNode(@NonNull Node node) { return node.isSyntax() && ((Syntax) node).greedy(); } }
@Override protected void visitSyntax(@NonNull Prism4j.Syntax syntax) { final int start = builder.length(); visit(syntax.children()); final int end = builder.length(); if (end != start) { theme.apply(language, syntax, builder, start, end); } } }