浏览代码

Simplify NoteParser use of prefix.length()

Sasa pointed out we only ever use the length here, so instead of
holding onto the AbbreviatedObjectId, lets just hold onto the length
as a primitive int.

Change-Id: I2444f59f9fe5ddcaea4a3537d3f1064736ae3215
Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
CC: Sasa Zivkov <zivkov@gmail.com>
tags/v0.10.1
Shawn O. Pearce 13 年前
父节点
当前提交
5ac5871d16
共有 1 个文件被更改,包括 9 次插入9 次删除
  1. 9
    9
      org.eclipse.jgit/src/org/eclipse/jgit/notes/NoteParser.java

+ 9
- 9
org.eclipse.jgit/src/org/eclipse/jgit/notes/NoteParser.java 查看文件

@@ -91,7 +91,7 @@ final class NoteParser extends CanonicalTreeParser {
return new NoteParser(prefix, reader, treeId).parse();
}

private final AbbreviatedObjectId prefix;
private final int prefixLen;

private final int pathPadding;

@@ -99,16 +99,16 @@ final class NoteParser extends CanonicalTreeParser {

private NonNoteEntry lastNonNote;

private NoteParser(AbbreviatedObjectId p, ObjectReader r, ObjectId t)
private NoteParser(AbbreviatedObjectId prefix, ObjectReader r, ObjectId t)
throws IncorrectObjectTypeException, IOException {
super(encodeASCII(p.name()), r, t);
prefix = p;
super(encodeASCII(prefix.name()), r, t);
prefixLen = prefix.length();

// Our path buffer has a '/' that we don't want after the prefix.
// Drop it by shifting the path down one position.
pathPadding = 0 < prefix.length() ? 1 : 0;
pathPadding = 0 < prefixLen ? 1 : 0;
if (0 < pathPadding)
System.arraycopy(path, 0, path, pathPadding, prefix.length());
System.arraycopy(path, 0, path, pathPadding, prefixLen);
}

private InMemoryNoteBucket parse() {
@@ -130,11 +130,11 @@ final class NoteParser extends CanonicalTreeParser {
}

// If we cannot determine the style used, assume its a leaf.
return new LeafBucket(prefix.length());
return new LeafBucket(prefixLen);
}

private LeafBucket parseLeafTree() {
final LeafBucket leaf = new LeafBucket(prefix.length());
final LeafBucket leaf = new LeafBucket(prefixLen);
final MutableObjectId idBuf = new MutableObjectId();

for (; !eof(); next(1)) {
@@ -160,7 +160,7 @@ final class NoteParser extends CanonicalTreeParser {
}

private FanoutBucket parseFanoutTree() {
final FanoutBucket fanout = new FanoutBucket(prefix.length());
final FanoutBucket fanout = new FanoutBucket(prefixLen);

for (; !eof(); next(1)) {
final int cell = parseFanoutCell();

正在加载...
取消
保存