このページを編集する際は、[[解読日記一覧]]の「概要」に従ってください。
*タイトル [#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