LocalNodeObject

階層内の他のノードの検索には、様々なxxxWith関数を使用することをお薦めします。たとえば、ChildrenWithは、GetChildren()を呼び出して結果を反復するよりはるかに高速で実行されます。同様に、GetReferenceInHierも、GetReferences()を呼び出して結果を反復するより、はるかに高速で簡単に使用できます。

表24.  LocalNodeObjectプロパティ

名前

説明

GlobalNode

現在のノードのグローバルNodeObject

Hier

ノードが存在する階層のHierarchyObject

HierAbbrev

Core.HierAbbrev

HierID

Core.HierID

レベル

階層におけるノードのレベルを表す数値

MissingPrimary

プライマリ・ノードが見つからない場合はTrue

NodeUrl

ノードURL

Parent

このノードの親ノードのLocalNodeObject。階層の最上位ノードにはNullが戻されます。

ParentNodeAbbrev

親ノードの名前

Primary

この共有ノードのプライマリ・ノード。プライマリがこの階層に存在しない場合は、それが存在する最初の階層のプライマリが戻されます。プライマリが存在する階層のリストが必要な場合は、戻されたプライマリ・ノードでGetReferences()を呼び出します。共有ノードまたはプライマリが見つからない場合は、nullが戻されます。

PrimaryNotInHier

プライマリ・ノードは存在するが、この階層ではない場合はTrue

表25.  LocalNodeObjectメソッド

名前

説明

AncestorsWith(func, maxResults, searchFromTop, inclusive)

指定された関数を満たすノードの祖先チェーンを検索します。これは、祖先を検索する最速の方法です。LocalNodeObjectの結果のArrayが戻されます。

  • funcは単一のノード引数を使用する関数であることが必要で、結果にノードが含まれる必要がある場合はTrueが、テストに失敗した場合はFalseが戻されます。

  • maxResultsはオプションで、デフォルトで1に設定されます。制限なし(条件を満たすすべてのノード)の場合は0を使用します。

  • searchFromTopはオプションで、デフォルトでFalseに設定されます。階層の最上位で開始する場合はTrueを使用します。

  • inclusiveはオプションで、デフォルトでFalseに設定されます。潜在的な一致に現在のノードを含めるにはTrueを使用します(テストは通過する必要があります)。

ChildrenWith(func, maxResults)

指定された関数を満たすノードの子リストを検索します。これは、子を検索する最速の方法です。LocalNodeObjectの結果のArrayが戻されます。

  • funcは単一のノード引数を使用する関数であることが必要で、結果にノードが含まれる必要がある場合はTrueが、テストに失敗した場合はFalseが戻されます。

  • maxResultsはオプションで、デフォルトで1に設定されます。制限なし(条件を満たすすべての子)の場合は0を使用します。

DescendantsWith(func, maxResults, inclusive, depthFirst)

指定された関数を満たすノードの子孫チェーンを検索します。これは、子孫を検索する最速の方法で、LocalNodeObjectの結果のArrayが戻されます。

  • funcは単一のノード引数を使用する関数であることが必要で、結果にノードが含まれる必要がある場合はTrueが、テストに失敗した場合はFalseが戻されます。

  • maxResultsはオプションで、デフォルトで1に設定されます。制限なし(条件を満たすすべてのノード)の場合は0を使用します。

  • inclusiveはオプションで、デフォルトでFalseに設定されます。潜在的な一致に現在のノードを含めるにはTrueを使用します(テストは通過する必要があります)。

  • depthFirstはオプションで、デフォルトでTrueに設定されます。Trueの場合、ツリーをバックアップして次の分岐に移動する前に、各分岐がヒントまですべて調査されます。Falseの場合は、ノードのすべての子が先に調査され、次に各子のノードが、その次にその子というように調査されます。ノードがツリー形式になっている場所がわかる場合は、ここで適切な値を選択すると、検索を大幅に高速化できます。

GetAncestorEnumerator()

祖先ノードを列挙するNodeEnumeratorObjectを取得します

GetAncestors(inclusive)

LocalNodeObjectの祖先のArrayを取得します

GetChildEnumerator(sorted)

子ノードを列挙するNodeEnumeratorObjectを取得します。sortedがTrueの場合、子はソートされた順序で表示されます。

GetDescendantEnumerator()

子孫ノードを列挙するNodeEnumeratorObjectを取得します

GetImplicitly SharedDescendants(inclusive)

この共有ノードが関連するプライマリ・ノードの子ノードを取得します

GetInvertedLevel()

式InvertedLevel関数と等価です

GetReferences()

このノード(このノードが表示されるすべての階層)の参照先であるLocalNodeObjectsのArrayを取得します

GetReferenceInHier(hierAbbrev)

指定された階層で、このノードへの参照を取得します。階層にアクセスできない場合や、階層にこのノードが存在しない場合、結果はnullになります。

NextSibling()

ソート順でこのノードの次の兄弟を取得します

PreviousSibling()

ソート順でこのノードの前の兄弟を取得します

SiblingsWith(func, maxResults, inclusive)

指定された関数を満たすノードの兄弟を検索します。LocalNodeObjectの結果のArrayが戻されます。

  • funcは単一のノード引数を使用する関数であることが必要で、結果にノードが含まれる必要がある場合はTrueが、テストに失敗した場合はFalseが戻されます。

  • maxResultsはオプションで、デフォルトで1に設定されます。制限なし(条件を満たすすべての祖先)の場合は0を使用します。

  • inclusiveはオプションで、デフォルトでFalseに設定されます。潜在的な一致に現在のノードを含めるにはTrueを使用します(テストは通過する必要があります)。