3

plan9特定の Go コードでは、 other のようなものsyscallはありません。、またはその同等物はどこに定義されていますか?Stat_tGOOSStat_t

4

1 に答える 1

5

TL;DR:*syscall.Dirタイプです。詳細については、以下をお読みください。

os.StatPlan9のソースはこちらです。ここdirstatで定義されている を呼び出します。これは、同じファイルhereで定義されている に の戻り値をフィードします。dirstatfileInfoFromStat

パスの場合 (*Fileオブジェクトではなく)、dirstatを呼び出すだけです。syscall.Statこれは、基本的に の単なる薄いラッパーstatです。syscall.Stat書き込み可能なバイト バッファが必要です。このバッファは少し処理され (詳細はdirstatを参照)、 に送られsyscall.UnmarshalDirます。ここで魔法が起こります。ドキュメントには、バッファから「単一の 9P 統計メッセージをデコード」し、*syscall.Dir.

dirstat*syscall.Dir次に、これをに渡します。fileInfoFromStatこれは、それを に処理しますFileInfo。オブジェクトのメソッドを通じて取得されるのは、この*syscall.Dir値です。Sys()FileInfo

于 2016-02-22T09:24:07.927 に答える