This is an automated email from the git hooks/post-receive script. henrich pushed a commit to branch debian/sid in repository jruby-joni.
commit 3948dbdf1a99efca5bb5a247d79a1752e9efdbc1 Author: Marcin Mielzynski <[email protected]> Date: Sun Mar 11 20:30:00 2012 +0100 Reuse code. --- src/org/joni/Analyser.java | 5 +---- src/org/joni/ApplyCaseFold.java | 7 +------ src/org/joni/ast/StringNode.java | 6 ++++++ 3 files changed, 8 insertions(+), 10 deletions(-) diff --git a/src/org/joni/Analyser.java b/src/org/joni/Analyser.java index 0bcc0da..87d4f99 100644 --- a/src/org/joni/Analyser.java +++ b/src/org/joni/Analyser.java @@ -1503,10 +1503,7 @@ final class Analyser extends Parser { for (int i=0; i<itemNum; i++) { snode = new StringNode(); - for (int j=0; j<items[i].codeLen; j++) { - snode.ensure(Config.ENC_CODE_TO_MBC_MAXLEN); - snode.end += enc.codeToMbc(items[i].code[j], snode.bytes, snode.end); - } + for (int j = 0; j < items[i].codeLen; j++) snode.catCode(items[i].code[j], enc); ConsAltNode an = newAltNode(null, null); if (items[i].byteLen != slen) { diff --git a/src/org/joni/ApplyCaseFold.java b/src/org/joni/ApplyCaseFold.java index 7d49f89..7dd84ce 100644 --- a/src/org/joni/ApplyCaseFold.java +++ b/src/org/joni/ApplyCaseFold.java @@ -69,16 +69,11 @@ final class ApplyCaseFold implements ApplyAllCaseFoldFunction { for (int i=0; i<length; i++) { if (i == 0) { node = new StringNode(); - node.ensure(Config.ENC_CODE_TO_MBC_MAXLEN); - node.end += enc.codeToMbc(to[i], node.bytes, node.end); - /* char-class expanded multi-char only compare with string folded at match time. */ node.setAmbig(); - } else { - node.ensure(Config.ENC_CODE_TO_MBC_MAXLEN); - node.end += enc.codeToMbc(to[i], node.bytes, node.end); } + node.catCode(to[i], enc); } ConsAltNode alt = ConsAltNode.newAltNode(node, null); diff --git a/src/org/joni/ast/StringNode.java b/src/org/joni/ast/StringNode.java index 45f0889..d71034f 100644 --- a/src/org/joni/ast/StringNode.java +++ b/src/org/joni/ast/StringNode.java @@ -20,6 +20,7 @@ package org.joni.ast; import org.jcodings.Encoding; +import org.joni.Config; import org.joni.constants.StringType; public final class StringNode extends Node implements StringType { @@ -155,6 +156,11 @@ public final class StringNode extends Node implements StringType { bytes[end++] = c; } + public void catCode(int code, Encoding enc) { + ensure(Config.ENC_CODE_TO_MBC_MAXLEN); + end += enc.codeToMbc(code, bytes, end); + } + public void clear() { if (bytes.length > NODE_STR_BUF_SIZE) bytes = new byte[NODE_STR_BUF_SIZE]; flag = 0; -- Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-java/jruby-joni.git _______________________________________________ pkg-java-commits mailing list [email protected] http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/pkg-java-commits

