Slide 29
Slide 29 text
難 所 3 ・ 構 造 体 オフ セ ッ ト が バ ー ジ ョ ン に よ って ず れる
offsets.jsonの実際の構造
"net/http.Request": {
"Method": { "versions": {"oldest": "1.17.0", "newest": "1.27.1"},
"offsets": [{"offset": 0, "since": "1.17.0"}] },
"URL":
{ "versions": {"oldest": "1.17.0", "newest": "1.27.1"},
"offsets": [{"offset": 16, "since": "1.17.0"}] },
"Header": { "versions": {"oldest": "1.17.0", "newest": "1.27.1"},
"offsets": [{"offset": 56, "since": "1.17.0"}] }
}
ポイント
「いつからその位置か」の履歴を
バージョンの範囲つきで持つ
手元で
unsafe.Offsetof(r.Header)
を印字すると 56 が出て、表と一
致する
検索は対象バージョン以下で最新
の記録を返す。 newest を超えて
も値は返る