このページを編集する際は、[[解読日記一覧]]の「概要」に従ってください。

*タイトル [#j151f4fb]

-再帰呼び出し①

*事例 [#u522cf21]

-[[MemoryContextData/postgresql-8.1.4]]
-[[MemoryContextMethods/postgresql-8.1.4]]
-[[MemoryContext/postgresql-8.1.4]]

*課題 [#q2fbef4c]

MemoryContextDataはMemoryContextを呼び出しており、MemoryContextはMemoryContextDataを呼び出している。

このため、どちらから読めばいいのかわからない。

※さらに、MemoryContextDataのメンバMemoryContextMethodsからもMemoryContextが呼び出されている。

*解決方法 [#c64c29aa]

MemoryContextは下記のように単純なポインタである。
 typedef struct MemoryContextData *MemoryContext;

このため、下記手順にて記載する。

+MemoryContextの「概要」を「MemoryContextDataへのポインタ(再帰的使用あり)」とする。
--MemoryContext解読は、ここで一旦完了として、日付も入れてしまう。
+MemoryContextDataの「実装」内のMemoryContext呼出部分については、「MemoryContextDataへのポインタ(再帰的使用)」と記載する。
--MemoryContextMethodsの「実装」内のMemoryContext呼出部分についても、同様に、「MemoryContextDataへのポインタ(再帰的使用)」と記載する。
+MemoryContextDataおよびMemoryContextMethodsの読解後、MemoryContextの「概要」にMemoryContextDataの概要を追記する。

上記方法で概要は一応書けました。

*履歴 [#g0e38808]

-作者:[[testnoda/ページ作者]]
-日付:2007/2/25

*コメント [#e40f2ce4]

#comment

トップ   編集 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS