code: public static RuleTreeRewriter<String> compile(final String rule) {
  		return new RuleTreeRewriter<>(
  			TreeRewriteRule.compile(rule),
  			Objects::equals,
  			Function.identity()
  		);
  	}
docs: Create a new rule based tree rewriter with the given parameters.
  
  @see TreeRewriteRule#compile(String)
  
  @param rule the rewriter rule applied for this rewriter
  @throws IllegalArgumentException if the rewrite {@code rule} is invalid
  @throws NullPointerException if the given {@code rule} is {@code null}