のplan9
特定の Go コードでは、 other のようなものsyscall
はありません。、またはその同等物はどこに定義されていますか?Stat_t
GOOS
Stat_t
1 に答える
5
TL;DR:*syscall.Dir
タイプです。詳細については、以下をお読みください。
os.Stat
Plan9のソースはこちらです。ここdirstat
で定義されている を呼び出します。これは、同じファイルhereで定義されている に の戻り値をフィードします。dirstat
fileInfoFromStat
パスの場合 (*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 に答える