ide/editor/src/main/java/org/apidesign/bck2brwsr/ide/editor/JsniCommentTokenizer.java
1.1 --- a/ide/editor/src/main/java/org/apidesign/bck2brwsr/ide/editor/JsniCommentTokenizer.java Wed Feb 13 12:08:00 2013 +0100
1.2 +++ b/ide/editor/src/main/java/org/apidesign/bck2brwsr/ide/editor/JsniCommentTokenizer.java Mon Jan 13 12:37:03 2014 +0100
1.3 @@ -20,14 +20,14 @@
1.4 import java.util.regex.Matcher;
1.5 import java.util.regex.Pattern;
1.6
1.7 -public class JsniCommentTokenizer {
1.8 +final class JsniCommentTokenizer {
1.9
1.10 /**
1.11 * Tokenize the contents of JSNI comment into the provided {@linkplain Sink}.
1.12 * @param in the contents of JSNI comment
1.13 * @param out the sink that consumes parsed tokens
1.14 */
1.15 - public void process(final String in, final Sink out) {
1.16 + public void process(final CharSequence in, final Sink out) {
1.17 final Matcher member = Pattern.compile("@([^:]+)::([a-zA-Z_$][a-zA-Z\\d_$]*)").matcher(in);
1.18 final Matcher signature = Pattern.compile("\\(([^\\)]*)\\)").matcher(in);
1.19
1.20 @@ -36,7 +36,7 @@
1.21 if (member.find(i)) {
1.22 final int memberStart = member.start();
1.23 final int memberEnd = member.end();
1.24 - if (memberStart > i) out.javascript(in.substring(i, memberStart));
1.25 + if (memberStart > i) out.javascript(in.subSequence(i, memberStart).toString());
1.26
1.27 final String clazz = member.group(1);
1.28 final String name = member.group(2);
1.29 @@ -53,14 +53,14 @@
1.30 i = memberEnd;
1.31 }
1.32 } else {
1.33 - out.javascript(in.substring(i, in.length()));
1.34 + out.javascript(in.subSequence(i, in.length()).toString());
1.35 break;
1.36 }
1.37 }
1.38 }
1.39
1.40
1.41 - public static interface Sink {
1.42 + static interface Sink {
1.43 void javascript(String s);
1.44
1.45 void method(String clazz, String method, String signature);