Namazu-devel-ja(旧)


[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: pointer is byte count ? (Re: NMZ.i (Re:http://www.namazu.org/doc/nmz.html ))



小舞です。
#補足です。いや補足になっていないのですが、山勘で申し訳ありません。
#Perl良く分かっていません。。

pack 'N'
をNamazuで使用しているのは、ポインタの位置を現す
NMZ.*.i系のファイルに書き出す時に使用している
という理解なのですが、、
ごめんなさい、NMZ.piだけは違うのでしょうか?

mknmzのソースを見ると
2144行目あたりで、
print $fh_tmp_pi pack("N", $ptr);
とありますが、今一これはNMZ.pi側ですよね?
データ部(いわゆるNMZ.pの本体部ですね)
の方も、Nを使っているのでしょうか。。??

ごめんなさい、ソースみると、2168行目あたりで、
		my $data = pack("w", $baseleng) . $baserecord;
		print $fh_tmp_p $data;
		$ptr += length($data);
とありますので、うーん、と思ったのですが。。

Komai @home さんは書きました:
>小舞です。
>
>藤原様どうもお疲れ様です。
>英語書いて頂いてありがとうございます。(かなりすっきりですね。)
>
>藤原 誠 / Makoto Fujiwara さんは書きました:
>>@@ -173,6 +175,7 @@
>> <li>文書IDは差分だけを記録する。<br>
>> 例: 1, 5, 29, 34 -&gt; 1, 4, 24, 5
>> <li>データはすべて pack 'w' で保存される (BER圧縮)
>>+    (ただしバイト数は pack 'N')
>↑、これ、pack 'N'というのは、合っていますか?