【手続補正書】
【提出日】平成18年4月4日(2006.4.4)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
階層的なツリーの関係を有するオブジェクトのセットと関連付けられるメモリを解放する方法であって、前記方法はコンピュータで実現されるステップを含み、前記コンピュータで実現されるステップは、
前記階層的なツリーの関係を有する前記オブジェクトのセットを作成するステップと、
各オブジェクトに対してメモリを割当てるステップとを含み、前記階層的なツリーの関係の頂点でオブジェクトと関連付けられるメモリはヒープであり、前記階層的なツリーの関係の残りの前記オブジェクトと関連付けられるメモリは前記ヒープのサブヒープであって、前記割当てるステップはさらに、前記頂点で前記ヒープを前記オブジェクトに割当てるステップと、前記階層的なツリーの関係において前記ヒープの前記サブヒープを前記オブジェクトの残りに割当てるステップとを含み、前記方法はさらに、
各オブジェクトに対する前記メモリ間の関係を規定するデータを維持するステップを含み、
前記データは前記階層的なツリーの関係の組織を反映し、前記コンピュータで実現されるステップはさらに、
オブジェクトと関連付けられるメモリを解放するための要求を受取るステップと、
前記要求を受取ることに応答して、どのメモリが前記オブジェクトの子孫である１つまたは複数のオブジェクトと関連付けられるかを決定するために前記データにアクセスするステップと、
前記オブジェクトと関連付けられるメモリおよび前記オブジェクトの前記子孫と関連付けられるメモリを解放するステップとを含み
前記データは子および兄弟のポインタの対を含み、前記関係を規定する前記データを維持するステップは、
各メモリに対する前記メモリ間の前記関係を規定する前記子および兄弟のポインタの対を維持するステップをさらに含む、方法。
【請求項２】
前記データにアクセスするステップは、
前記オブジェクトの子孫である前記１つまたは複数のオブジェクトを決定するために前記子および兄弟のポインタの対にアクセスするステップをさらに含む、請求項１に記載の方法。
【請求項３】
前記割当てるステップは、
プリプロセッサコードから生成されたメモリ管理実行ファイルを起動することによって、各オブジェクトに対して前記メモリを割当てるステップをさらに含む、請求項１に記載の方法。
【請求項４】
前記メモリ管理実行ファイルは新規のオペレータであり、前記割当てるステップは、
前記新規のオペレータを起動することによって、各オブジェクトに対して前記メモリを割当てるステップをさらに含む、請求項３に記載の方法。
【請求項５】
前記解放するステップは、
プリプロセッサコードから生成されたメモリ管理実行ファイルを起動することによって、前記オブジェクトと関連付けられるメモリおよび前記オブジェクトの前記子孫と関連付けられるメモリを解放するステップをさらに含む、請求項１に記載の方法。
【請求項６】
前記メモリ管理実行ファイルは削除のオペレータであり、前記解放するステップは、
前記削除のオペレータを起動することによって、前記オブジェクトと関連付けられるメモリおよび前記オブジェクトの前記子孫と関連付けられるメモリを解放するステップをさらに含む、請求項５に記載の方法。
【請求項７】
前記解放するステップは、
単一の要求を起動することによって、前記オブジェクトと関連付けられるメモリおよび前記オブジェクトの前記子孫と関連付けられるメモリの解放を行なわせるステップをさらに含む、請求項５に記載の方法。
【請求項８】
前記単一の要求は前記オブジェクトに対するデストラクタであり、前記解放するステップは、
前記デストラクタを起動することによって、前記オブジェクトと関連付けられるメモリおよび前記オブジェクトの前記子孫と関連付けられるメモリを解放するステップをさらに含む、請求項７に記載の方法。
【請求項９】
特定のオブジェクトに対するメモリはファクトリメソッドで作成され、前記割当てるステップは、
前記特定のオブジェクトに対して前記ファクトリメソッドで前記メモリを割当てるステップをさらに含む、請求項１に記載の方法。
【請求項１０】
前記関係を規定する前記データの少なくとも一部分はファクトリメソッドで維持され、前記データを維持するステップは、
前記特定のオブジェクトに対するメモリと前記残りのオブジェクトに対するメモリとの間の関係を規定する前記データの少なくとも前記一部分の維持は前記ファクトリメソッドで行なわれるステップをさらに含む、請求項１に記載の方法。
【請求項１１】
前記データは前記オブジェクトのセットのデータメンバで維持され、前記関係を規定する前記データを維持するステップは、
各オブジェクトに対する前記メモリ間の前記関係を規定するために前記データメンバを維持するステップをさらに含む、請求項１に記載の方法。
【請求項１２】
前記データは各オブジェクトに対する前記メモリで維持され、前記関係を規定する前記データを維持するステップは、
各オブジェクトに対する前記メモリ間の前記関係を規定するために各オブジェクトに対する前記メモリで前記データを維持するステップをさらに含む、請求項１に記載の方法。
【請求項１３】
階層的なツリーの関係を有するオブジェクトのセットと関連付けられるメモリを解放するための命令の１つまたは複数のシーケンスを運ぶコンピュータ読取可能な媒体であって、１つまたは複数のプロセッサによる前記命令の１つまたは複数のシーケンスの実行は、前記１つまたは複数のプロセッサに以下のステップを行なわせ、前記以下のステップは、
前記階層的なツリーの関係を有する前記オブジェクトのセットを作成するステップと、
各オブジェクトに対してメモリを割当てるステップとを含み、前記階層的なツリーの関係の頂点でオブジェクトと関連付けられるメモリはヒープであり、前記階層的なツリーの関係の残りの前記オブジェクトと関連付けられるメモリは前記ヒープのサブヒープであって、前記割当てるステップはさらに、前記頂点で前記ヒープを前記オブジェクトに割当てるステップと、前記階層的なツリーの関係において前記ヒープの前記サブヒープを前記オブジェクトの残りに割当てるステップとを含み、前記方法はさらに、
各オブジェクトに対する前記メモリ間の関係を規定するデータを維持するステップとを含み、前記データは前記階層的なツリーの関係の組織を反映し、前記以下のステップはさらに、
オブジェクトと関連付けられるメモリを解放するための要求を受取るステップと、
前記要求を受取ることに応答して、
どのメモリが前記オブジェクトの子孫である１つまたは複数のオブジェクトと関連付けられるかを決定するために前記データにアクセスするステップと、
前記オブジェクトと関連付けられるメモリおよび前記オブジェクトの前記子孫と関連付けられるメモリを解放するステップとを含み、
前記データは子および兄弟のポインタの対を含み、前記関係を規定する前記データを維持するステップは、
各メモリに対する前記メモリ間の前記関係を規定する前記子および兄弟のポインタの対を維持するステップをさらに含む、コンピュータ読取可能な媒体。
【請求項１４】
前記データにアクセスするステップは、
前記オブジェクトの子孫である前記１つまたは複数のオブジェクトを決定するために前記子および兄弟のポインタの対にアクセスするステップをさらに含む、請求項１３に記載のコンピュータ読取可能な媒体。
【請求項１５】
前記割当てるステップは、
プリプロセッサコードから生成されたメモリ管理実行ファイルを起動することによって、各オブジェクトに対して前記メモリを割当てるステップをさらに含む、請求項１３に記載のコンピュータ読取可能な媒体。
【請求項１６】
前記メモリ管理実行ファイルは新規のオペレータであり、前記割当てるステップは、
前記新規のオペレータを起動することによって、各オブジェクトに対して前記メモリを割当てるステップをさらに含む、請求項１５に記載のコンピュータ読取可能な媒体。
【請求項１７】
前記解放するステップは、
プリプロセッサコードから生成されたメモリ管理実行ファイルを起動することによって、前記オブジェクトと関連付けられるメモリおよび前記オブジェクトの前記子孫と関連付けられるメモリを解放するステップをさらに含む、請求項１３に記載のコンピュータ読取可能な媒体。
【請求項１８】
前記メモリ管理実行ファイルは削除のオペレータであり、前記解放するステップは、
前記削除のオペレータを起動することによって、前記オブジェクトと関連付けられるメモリおよび前記オブジェクトの前記子孫と関連付けられるメモリを解放するステップをさらに含む、請求項１７に記載のコンピュータ読取可能な媒体。
【請求項１９】
前記解放するステップは、
単一の要求を起動することによって、前記オブジェクトと関連付けられるメモリおよび前記オブジェクトの前記子孫と関連付けられるメモリの解放を行なわせるステップをさらに含む、請求項１７に記載のコンピュータ読取可能な媒体。
【請求項２０】
前記単一の要求は前記オブジェクトに対するデストラクタであり、前記解放するステップは、
前記デストラクタを起動することによって、前記オブジェクトと関連付けられるメモリおよび前記オブジェクトの前記子孫と関連付けられるメモリを解放するステップをさらに含む、請求項１９に記載のコンピュータ読取可能な媒体。
【請求項２１】
特定のオブジェクトに対するメモリはファクトリメソッドで作成され、前記割当てるステップは、
前記特定のオブジェクトに対して前記ファクトリメソッドで前記メモリを割当てるステップをさらに含む、請求項１３に記載のコンピュータ読取可能な媒体。
【請求項２２】
前記関係を規定する前記データの少なくとも一部分はファクトリメソッドで維持され、前記データを維持するステップは、
前記特定のオブジェクトに対するメモリと前記残りのオブジェクトに対するメモリとの間の関係を規定する前記データの少なくとも前記一部分の維持は前記ファクトリメソッドで行なわれるステップをさらに含む、請求項１３に記載のコンピュータ読取可能な媒体。
【請求項２３】
前記データは前記オブジェクトのセットのデータメンバで維持され、前記関係を規定する前記データを維持するステップは、
各オブジェクトに対する前記メモリ間の前記関係を規定するために前記データメンバを維持するステップをさらに含む、請求項１３に記載のコンピュータ読取可能な媒体。
【請求項２４】
前記データは各オブジェクトに対する前記メモリで維持され、前記関係を規定する前記データを維持するステップは、
各オブジェクトに対する前記メモリ間の前記関係を規定するために各オブジェクトに対する前記メモリで前記データを維持するステップをさらに含む、請求項１３に記載のコンピュータ読取可能な媒体。