text: public DirCacheEntry(byte[] path, int stage) {checkPath(path);if (stage < 0 || 3 < stage)throw new IllegalArgumentException(MessageFormat.format(JGitText.get().invalidStageForPath,stage, toString(path)));info = new byte[INFO_LEN];infoOffset = 0;this.path = path;int flags = ((stage & 0x3) << 12);if (path.length < NAME_MASK)flags |= path.length;elseflags |= NAME_MASK;NB.encodeInt16(info, infoOffset + P_FLAGS, flags);}